Hello!
I was planning on using the device only as a LSDJ synch slave, but I'm experiencing some issues.
I can see the Teensy as a MIDI destination in Ableton, with MIDI monitor I can see that MIDI is transmitted correctly to the unit.
When I set the mode to slave synch and start playing in Ableton, the LED blinks in synch with the currently playing song and it appears to follow the tempo adjustments.
However, the Gameboy does simply not start playing. It's set to wait as I press play in Ableton, and as the LED starts blinking I expect the Gameboy to follow along. I quadrouple-checked the wiring in the synch-cable, and I'm curious of what signals should be expected on the other wires connected to the Gameboy (I found the synch signal displayed in the Build Photos Flickr page).
OK apparently, quadrouple-checking the wiring doesn't help unless you actually count the pins on the uC!
Now I have pics of all the signals, in and out, and I'm happy with an explanation on why all the gameboy connections are made with analog outputs on the Arduino when the signals are digital.
Clock Signal: https://www.instagram.com/p/BY6XztAnA8q skaczmarek
Serial in: https://www.instagram.com/p/BY6X_YNnjRR skaczmarek
Serial out: https://www.instagram.com/p/BY6YCh1HRDD skaczmarek
In LSDJ did you try "MIDI" mode instead of "SLAVE"?
They are not "Analog" only PINs. They can either be used for analog read, digital I/O, "Touch sense", or i2c.
The reason for the pin selection has to do with bit banging multiple pins siamotainously, they need to be part of the same port to do so, those were probably chosen because they are the first available sequential pins that were not being used for anything else. Port B GPIO. AKA: We can set all three pins at the same time without delays introduced by using "Arduino" style "digitalWrite"
I did not, does MIDI mode enable anything more over SLAVE, i.e CC control of parameters, etc?
Ah good explanation, it didn't occur to me that they might be part of the same GPIO port. Thanks!