Picade Board Firmware Update

I installed the update and it seems to be working well! Thanks!

Any luck implementing this?


When I follow the instructions given above I am left with TWO new .HEX files called:

Picade.ino.with_bootloader.hex
Picade.ino.hex

Are these the correct compiled files? And if so which one do I upload via my Raspberry Pi?

Thanks.

You should use Picade.ino.hex, thatā€™s the correct file.

I havenā€™t had any time to look into improving the firmware yet. Iā€™m still very much buried in Flotilla and various other duties, but I believe itā€™s possible. I plan for it to present a UI over serial which would allow you to enter key codes for each physical button, which would then be saved to EEPROM.

Nice

Thanks for the reply and the update!

Another question if you donā€™t mind.

I want to replace the Pi in my Picade with a NUC computer I have.
I want to reprogram the controller to use all of the buttons, especially the side buttons to use as left and right shift for Pinball games.

But I want to set the controller to set the on board amp to about 80% of full volume as I will control the volume settings via the NUC PC.

I assume that the part of the code I want to change is the following found in the picade.h fileā€¦

void load_volume_from_eeprom(){
volume_reset();
volume_target = EEPROM.read(0) & 0b00011111;
volume_eeprom = volume_target;
}

I also assume that the variable I want to set to a fixed value is ā€œvolume_targetā€.

What should I set it to for 80% volume levels?

Thanks!

Hi
Im trying to compile the latest Picade firmware using Arduino 1.6.5, board set to Leonardo.
I see it needs Keyboard.h so I found and installed that library.
However, on compile I get an error that the Keyboard library is asking for and
cant find, an HID.h fileā€¦

Any ideas guys, Iā€™m new to all thisā€¦

Thanks
Phil

Try dropping the reference to Keyboard.h You shouldnā€™t need a separate library at all, as far as I know.

I think somewhere between Arduino IDE 1.6.5 and 1.6.7 the Leonardo was changed/broken and required a manual import of keyboard.h.

Does dropping the:

#include <Keyboard.h>

Line help at all?

Blimey!
That was quickā€¦
Yes, commenting out that line lets the thing compileā€¦

Thanks very much :)

Phil

Gadgetoid

Any comment about my question above?

Thanks.

First, grab the latest code from Git. Iā€™ve added a VOL_MAX define recently.

Next; change the line: #define ENABLE_VOLUME_BUTTONS to //#define ENABLE_VOLUME_BUTTONS to comment it out. This will disable all volume control functionality, and volume will default to VOL_MAX which is defined in picade.h.

As for what VOL_MAX is equal to 80%. I donā€™t know. Thereā€™s a nonlinear relation between volume steps and audible volume. While the datasheet for the chip may shed some light on the actual amplification levels applied at each step, I donā€™t think theyā€™d be any more helpful than trial and error.

You can now change:

   { 'u',      VOL_UP  },
   { 'd',      VOL_DN },

To define what you want your VOL_UP and VOL_DN keys to do. They default to emitting u and d.

Out of interest, if this update is for 2015 boards only, how can I tell which version my board is?
I got it from MODMIPI recently as Pimoroni had no stock.
Itā€™s a red/black board with the fancy design but I canā€™t spot a version number or dateā€¦

Thanks
Phil

All the red/black fancy design ones are new. Youā€™d know if you had an old one, they were Kickstarter-only.

Thank you :)
Nice board, working very well on my homebrew arcade machine

Phil

:D yay!

I plan to make it nicer as soon as I can find the time and grab a Picade to play with.

Iā€™ve written a Megadrive controller firmware so I could use original Megadrive controllers on my PC/Laptop. Iā€™ll be making it available with instructionsā€¦ again when I can find the time! And if anyone cares.

It has its uses. It would be possible to connect a second Picade PCB to a Pi and break out the Megadrive controller ports on the front of a Picade for example. Itā€™s pretty conservative on power when youā€™re not running the hungry, hungry amplifier.

Wow thank you very much!

Did the update via SSHā€¦
It auto installed avrdude and updated, all is working fineā€¦

Pleased because I know VERY little about all this :)

Onwards and upwardsā€¦

Phil

Iā€™ve now dropped the Picade Megadrive firmware into the repository: https://github.com/pimoroni/picade-sketch

Youā€™ll need some soldering/wiring expertise, time and patience to get it running but itā€™s there for anyone whoā€™s interested.

Herald the new Picade 2.x firmware, with dynamic rebinding and keyboard/gamepad support: New 2.x Configurable Keyboard/Gamepad Firmware