If you like this instructable, please vote in Hack it contest and DIY audio contest.
Lots of people use 555 timer to make musical synthesis. I want to try something different. The XR-2209 is a monolithic voltage-controlled oscillator that can generate simultaneous triangle and square wave outputs over a frequency range of 0.01Hz to 1MHz. Its frequency is determined by resistor R1 to R13 and capacitor C1 (see schematic .f=1/ RC). By varying the value of R1/R13, we can get 13 different tones. I use 13 sets of reflective sensor QRD1114 and mosfet 2N7000 to turn on/off R1/R13. The reflective sensor QRD1114 consists of an infrared emitting diode and an NPN silicon phototransistor. When a white paper is placed on the top of the sensor, the phototransistor output moves from a high voltage state to a low voltage state, and the mosfet will be turned off. By placing a scantron on the top of the sensors, only one mosfet will be turned on each time. The mosfet will be on/off when the scantron is moving.
Check the schematic for the component values. Find a small project box. Cut two pieces of PCB board basing on the project box size and solder all the parts on them. I did not put the power switch on the schematic. You can add one between the PCB and battery. Please check the position of the reflective sensors in the picture I uploaded. I solder them in such position in order to minimize the interference between each sensor. Write down the corresponding music notes on the trimmers. Cut a rectangular hole on the cover of the project box. Use hot glue to glue the sensor PCB on the box. Try to adjust the position of the sensor so that the top of the sensor is the same level as the cover surface. Cut another piece of plastic sheet. Use double-sided tape or super glue to glue the plastic sheet on the top of the rectangular hole. Add a small piece of thin plastic or metal sheet between the cover and the plastic sheet so the scantron can go through it.
In equal-tempered scale, middle C (C4) is 261.63Hz, and B4 is 493.88Hz. This circuit covers G3 (196Hz) to E5(659.26Hz). I use a 0.1uF capacitor and 50K variable trimmer to turn the frequency. For more fun, I add a 0.022uF capacitor next to the 0.1uF capacitor and use a switch to select them. For the same resistor value, the frequency is double when I switch the 0.1uF capacitor to the 0.022uF capacitor.
I create a excel file to convert music notations to scantron. I use numbered music notation in the excel sheet. When I enter the music note on the first column, the corresponding square cell on the right side will be highlighted. Print the excel sheet and use scissor to cut the table out. Put the scantron on the top of the sensor. When the dark block is on the top of the sensor, the mosfet will be on, and corresponding trimmer is connected to the VOC. Use an oscilloscope to turn the frequency one by one.
You can use a mechanical hand roller or add a motor to feed the scantron. If you have time, you can create 13 discrete circuits for each tone. In that case you can play several different music notes at the same time for more effects. Also, you can use punched card instead of scantron. With punched card, you could use pogo pin to replace the IR sensor and mosfet. The circuit will be much simpler. Unfortunately I do not have the right punch.