Another alternate Firmware for the retail Picade


I finally finished my first piece of firmware for the retail picade.
The main reason for this were my troubles with using Recalbox and I also wanted cleaner code.

It works for me now as expected, but I didn’t spend a lot of time testing.


  • Fixed volume zero bug


  • Changed joystick debounce to fix slow volume reaction


  • Modularized project files (keyboard/joystick/volume)
  • Only two main functions in each module (Init/Check)
  • Added configurable startup volume
  • Added joystick support for Recalbox
  • Added config.h for all user settings


Feel free to use and let me know problems or improvements. :)


This seems interesting! I’m finding retropie needs a lot of tweaking to work right, so I’m considering alternatives.
Any suggestions on how can I add this to my PCB? I’m pretty new to these workings :)


well the only way worked for me was with Windows 10 and the following steps.
(Windows 7 had troubles with drivers but maybe it’s only a problem of myself, always hung up on flashing…)

  • Download Arduino IDE v1.6.5 from here:
  • Download firmware sources:
  • Extract it and replace the files from the subdirectory /USB_HID/ with those in your installation directory …/Arduino/hardware/arduino/avr/cores/arduino (backup recommended!)
  • Plugin the USB Cable from Arduino Board into your PC, wait a few seconds to let it initialize.
  • Open Picade.ino in Arduino IDE.
  • Go into “File -> Preferences” and select both checkboxes at “Show verbose output during:
  • Select “Tools -> Board -> Arduino Leonardo
  • Select “Programmer -> AVRISP mkll
  • Select “Tools -> Port -> COMx (Arduino Leonardo)
  • Select “Sketch -> Verify/Compile”, should end without errors. (-> “Sketch uses 7,728 bytes of program…”)
  • Select “Sketch -> Upload”, should end without errors. (-> “avrdude done. Thank you”)

Hope this helps! :)


-Use front buttons for input
-Use volume buttons for input (optional)

Holy crap… it works! Finally I can play with this thing on Recalbox without having to resort to plugging in my Mad Catz TE fight stick (LOL). This is great. Thanks!
One question though. What happened to Escape key function? Mine doesn’t respond in game (to exit) after the firmware update. It’s really not a big deal though as I’ve set Enter as the Hotkey and press Enter+Start to exit back to the main menu.

Oh and the Github page has your third bullet point flipped from what’s posted above:
Extract it and replace the files from your arduino installation directory …/Arduino/hardware/arduino/avr/cores/arduino with those from the extracted subdirectory /USB_HID/ (backup recommended!)
(I followed the directions via Github and had no issues.)

Thanks again!

Yep, I fixed this on Github. ;)
My firmware uses the picade controls as a joystick only, so you have to use Hotkey+Start for exit.
Thx for your feedback and enjoy!

Hi, I have done as said here, but I keep getting an error when I compile. It says “no such directory”.

What am I doing wrong?

I have Recalbox installed. And I am using a picade arduino compatible pcb. (the blue one)