I created this sound generating toy for a final in a beginner's Digital Electronics toy. It also changes light colors depending on how you tilt it and vibrates whenever you play a note. I used cardboard, hot glue, paper, and copper tape for the casing. There's an Arduino mega, speaker, accelerometer, RGB leds, vibration motor, and pressure sensor inside (along with the battery pack).
Step 1: Lots of Buttons
Here I have each button generating a note through the Arduino and out of the speaker. The pressure sensor changes the octave of each note so users can play higher notes as well.
I also have a few RGB leds paired with an accelerometer. I have the Blue value constantly changing, but the Red and Green values correlated to the x and y axis of the accelerometer.
Step 2: Building a Shell
Here's the code for the toy (it's the .zip file). Since I used contact points for my "buttons" instead of momentary switch buttons, each "button" is actually connected to an analog pin and has a set threshold.