Last year or the year before, when was it?, we hacked toys on a toy hacking night at the old space and it was pretty fun but since it was a one night event we really didn’t get any grander ideas done.
It got me thinking of things to hack and keep my eye open at thrift shops. Not long ago I saw a toy saxophone and I decided that I would make it into a customized toy saxophone that could play my own loops, respond to button presses and play notes on the keys.
Here it is before it gets hacked - it actually has quite a big feature set to start but it’s all getting replaced!
http://www.amazon.ca/Triple-Sounds-Saxophone-Musical-Toy/dp/B00BGYS7D6
So I started to take it apart.
Insides are pretty simple, just a speaker, a on/off switch board, a main board that has three more buttons integrated and a 8 button pcb on the main body that also houses a four LED light pipe thing.
I’m pretty good with Arduino but my favourite system is the Parallax Propeller and I don’t know why it’s not more popular!
This is the demo board you can get from Parallax that comes with a bunch of stuff like an amp, a vga connector, keyboard/mouse and a proto area,
But I also like to proto out a project on a breadboard with a 40 pin DIP version of the propeller. I made the handy sticker that shows what each pin does. I also built out an interface so I could use the cheaper generic FTDI serial usb interface. There’s not much to the basic system, just a chip, an a crystal. It needs 3.3Volts. The other small 8 pin chip is actually an external I2C eeprom so that you can have a program that stays when powered off.
First thing I did was to built up a SD card interface because I wanted to be able to play rather large 16 bit wave files in loops. I soldered it up on a vero board and covered it in hot glue to protect strengthen the pins that connect to the ports on the board. For the SD card connector, I noticed that a cheap dollar store USB SD card reader had a dip version of the SD connector so I could buy this cheaply and rip out the connector and use it here.
I got the audio code working on the demo board so I then started on building out my own board to include an audio output filter and amplifier so that it could be standalone. I also started to build on a smaller protoboard that could fit inside the saxophone toy. I may build a PCB but for now I’m sticking with a one off version of this and just using protoboards for wiring.
In the above photo you can see the speaker connected to an amplifier board that is actually two channel. It uses two mono chips one for left and one for right. I only needed one channel so I have since snipped off the left channel. I also blew up the speaker that came with the toy… so I replaced it with a much more powerful speaker that I had in my junk bin that happened to be the exact same diameter!
The amplifier boards I salvage from cheap iPod/Phone speaker systems. The ones that are around $5 at a dollar store. They actually have decent amplifier chips inside them I have found. One of them had a single chip stereo amp that I saw in an adafruit product that was 4 times as expensive and the dollar store product came with good speakers.
I now have the small board completely finished, the toy buttons wired into the propeller and modified the plastic of the toy to accommodate the larger speaker. I’ll post more photos and a video of the working saxophone. It’s kind of hilarious (at least to me)
Still TODO:
- make each button play a synthesized note. I have plenty of memory and CPU power left to do more things audio wise. I could even do effects. I have found a bunch of amazing synth emulators for the Propeller, for example a full SID chip* complete with filters
- make the LED lights do something
- Use the On/Off mode switch for something.
- ???
- Profit
I came away after this project of a new respect for toy developers. Like anything, this ‘one day build’ actually took me much longer than expected. The issues with blowing up amplifiers, speakers, fitting parts not designed for the space, reverse engineering the button matrix, getting my software audio player to loop without a huge audible click,
-David
*SID chip emulation demo on Parallax propeller