We would be working on making some sounds using the Piezzo Buzzer and Photo resistor. This project is known as a Pseudo-Theremin. The Theremin is a musical instrument said to have been developed by mistake by physicist Léon Theremin in 1920 while doing research on proximity sensors for the Russian Government. It has since gained popularity and he named it after himself. It was hailed as the world’s first electronic musical instrument and adopted by several musicians in their shows and as eerie background music in movies. Inspired by the musical instrument, the Adafruit crew went ahead and designed a pseudo-theremin built around an Atmel-powered Arduino Uno (ATmega328) – combining the board with a light-sensitive cadmium sulfide (CdS) photocell to make a light responsive music machine. 


With the Pseudo-Theremin, changes in light intensity on the photo resistor also known as a Light Dependent Resistor(LDR) will change the pitch of a note on the piezo buzzer as you wave your hand in front of the LDR, while the original theremin uses changes in a circuit’s reactance.

The first step is to take a wire from 5V to the breadboard to provide power. We then use the same row to connect our LDR to send current through it. The second leg of the LDR goes on a separate row. The current then runs from the second leg of the LDR to A0 to send the analog data being collected from the LDR back to the Arduino. The same row needs one leg of a resistor and the resistor needs to bridge the breadboard to another row that can be grounded. The grounding wire goes from that row on the breadboard back to the Arduino completing circuit. The Arduino now has the data it needs to determine how much light is shining. So, for output, we take a wire from the Arduino digital pin 10 to a new row on the breadboard. This provides data and current. On this same row is the red wire of the piezo. The black wire of the piezo should be grounded in the same row as the resistor.

You would need the following items for this project;

All these components are available in the Invent Arduino Starter Kit.






int speakerPin = 10;
int photocellPin = 0;

 void setup() {
  // put your setup code here, to run once:
  pinMode(speakerPin, OUTPUT);

void loop() {
  // put your main code here, to run repeatedly:                      
int reading = analogRead(photocellPin);
  int pitch = 200 + reading / 4;
  tone(speakerPin, pitch);





We hope you enjoyed the tutorial and this little lesson will purport you into great levels. Enjoy yourself in electronics. For more tutorials and questions, please leave your comments in the comment area. See other components on the site Inspiring ingenuity.


5 2 votes
Article Rating
Would love your thoughts, please comment.x