Hello, my goal is to transmit musical MIDI data from the 3DS to an external device and vice versa via the infrared port.
The thinking is that this would provide lower latency than WiFi and would work without a wifi router.
My first question is: has anyone done this successfully yet?
I found this when I looked for code examples and managed to modify it so that two 3DS consoles communicate.
https://github.com/GaryOderNichts/InfraRedChat
As the novice I am, I gathered that the technology is IRDA SIR.
Then I bought this arduino shield:
https://irdroid.eu/product/irdroino-irda-shield/
It uses an MCP2120 serial IrDA controller.
Unfortunately the data received never matches the data sent, the bytes are consistently the same at each attempt but the values are off and I cannot make out any pattern that correlates the two pairs of values.
I tried setting different baud- and bit-rates on both devices.
It made me wonder whether the data is encrypted after all.
At the bottom of this page there is a paragraph mentioning encryption
https://www.3dbrew.org/wiki/IR_Services
The protocol used with IRUSER involves encryption(?) implemented in software. IRUSER is used for the Circle Pad Pro. This same IRUSER service uses the New3DS HID hardware when running on New3DS. Note that the main service for New3DS HID is ir:rst, and these two service are mutually exclusive: when one is initialized and reading data from New3DS HID, the other cannot access it.
I believe the chat-code above is only using the IRU header from libctru however.
So yeah, just asking if anybody else has experience with this matter, thanks in advance!