When someone gives you a crappy little toy keyboard, what can you do? Sadly plunk on the thing one note at a time? Well yes, but that’s not going to get you on Hackaday. Do what [Turi] did and give that thing a complete overhaul.
[Turi] threw away the original controller board, keeping only the keys, buttons, case, speaker, and a little bit of the original powder yellow enclosure. The Picophonica’s new brain is, you guessed it, a Raspberry Pi Pico. This enables [Turi] to use [Ryo Ishigaki]’s pico_synth_ex synthesizer and introduce MIDI out via USB-C.
The new engine does things that little keyboard could never have dreamed of originally, especially considering it wasn’t even polyphonic. Those fourteen white buttons now control things like sustain, cutoff, LFO rate, decay, and so on. Now it sounds great!
Be sure to check out the brief build video after the break. Excluding drums, the soundtrack was made entirely on the Picophonica.
Of course, Picos aren’t just good for musical keyboards. Use one to convert an old proprietary keyboard to PS/2, or create your own.
Wow!
Considering the low price of the Pico, the keyboard could have been designed around that, and not raised the retail price very much.
Considering the final color, [turi] could have called it “Pinkopicophonica”.
B^)
What is it with Barbie this year?
Its not polyphonic or not at least playable poliphonically.
Where are the key matrix diodes?
I, too, wonder how the key matrix is set up, and where the diodes (if any) are, but the creator demonstrates some polyphony in the video and also confirms that it’s now possible in the YouTube comments.
The github page says “I am not including a schematic since it would only be pertinent to my specific keyboard”, which is fair, but disappointing. I mean, it’s not “Fermat’s Last Theorem” level of disappointing, but still too bad.
It will work to some extent but if you press any 3 corners of a rectangle in the matrix the 4th corner will ghost.
Just like online dating. If you’re chatting with more than 3 people at a time, some ghosting will very likely occur with the 4th one.
That sentence you mentioned continues with “Connect each row and column of your keyboard matrix to a GPIO pin, and define it in config.h.”.
This specific matrix is 8 columns x 5 rows. If you’re looking for a keyboard design for full polyphony, look at this older toy synth I made: https://github.com/TuriSc/TS-DET1
The synth is tetraphonic, but can be configured to play more than four notes at the same time.
Had I had to create a keyboard from scratch, I would have surely added diodes, but for this upcycling project I didn’t think replacing the keybed PCB was worth the effort.