For awhile now I've been interesting in implementing something like GC+ to the STM32 platform. I was bored over the school break so I decided to get cracking on this using a NUCLEO-G431KB development board I was using for my Wii Pocket firmware (I will get back to that soon, I promise..). I implemented the serial interface using a timer + DMA, dynamically switching from PWM output with variable duty cycle for the bit encoding to transmit, and input capture for measuring low signal time to receive. I learned more about the fine details of timers and DMA than I bargained for. I implemented the basics of the controller-console protocol today, and the controller is successfully detected!
I will likely design a development board next to implement the actual controls. Feel free to check out the code here: https://github.com/jefflongo/gcplus-stm32
I will likely design a development board next to implement the actual controls. Feel free to check out the code here: https://github.com/jefflongo/gcplus-stm32