Laser Piano DIY

Laser Piano DIY


I created a Laser piano using LDR and laser light diode. I used Arduino Leonardo Pro Micro connected to a speaker to generate sound. You can modify the tune of the piano by tweaking in the code and changing the frequency. I wanted to create something cool which can produce music and I ended up making this.

Making the base and structure of piano

The base is made up of lot of cardboard ad glue gun. I have given the details along with the dimension in the image. Also make sure you are choosing the right kind of cardboard for making it.

The base is made up of hard cardboard.

For this tutorial you will need the following components:

  1. Arduino Leonardo Pro Micro - 1
  2. 10 K resistor array - 1
  3. Laser diode - 8
  4. LDR - 8
  5. Speaker - 1
  6. Cardboard
  7. Gluegun
  8. Soldering Gun
  9. Nose Plier
  10. Wire Stripper
  11. Wire

First Step : Marking, Cutting and Gluing base

In this step, we are going to cutout cardboard with the given dimension. we are using good quality cardboard to avoid any lose structure. Also make sure that you are ready with your glue gun.

laser-piano-diy (1)

laser-piano-diy (1)

laser-piano-diy (2)

laser-piano-diy (2)

After cutting the cardboard, it should approximately measure 20cm in height and 2.5 cm in width. I have already doubled the cardboard to make it strong and durable. Since we are going to put up LDR on the above side, I have made 8 holes. Each hole will occupy and LDR sensor for our Laser Piano DIY.

I have made the holes aligned to the same as holes on the above on the bottom. So my laser diodes are directly pointing the light on the LDR. If I place hand between them, it will send the input signal as LOW to arduino and the program will turn on the speaker depending upon which Light I obstructed.

laser-piano-diy (5)

laser-piano-diy (5)

Second Step : Inserting and attaching LDR and Laser diode in the cardboard

Making the Circuit

Finally make the circuit as per the given circuit diagram. Note that I have used a 10K resistor array instead of normal 10K resistor. If you don't have a resistor array, you can use normal resistor.


Our code is simple and uses 'delay' function to generate different sound. We are turning on speaker with frequency for certain time.

Github Link :

I hope you enjoyed this tutorial. If you want to continue watching awesome tutorials for me then subscribe to my YouTube channel.


Full Step wise documentation available on hackster :

My Social Profile Links:


No Comments

Post a Reply