[otw_is sidebar=otw-sidebar-1]Arduino based Piano using piezoHello Fellows! In this lesson, I will tell you how to make an Arduino based piano. It is an easy project made using Arduino, few push buttons and a Buzzer. A main feature of this project is that Arduino will save the last played set of tones in it and repeat it again.

Arduino Based Piano Using Piezo

We have seen some application adjust the project using Arduino like Robotic Arm, Home Automation etc. The Arduino based Piano project comes under the classification of projects as you know, this project does not have real applications but can be used to determine to definite features of Arduino.

Nevertheless, sounds and tones can give a great audio feedback in our projects.

Arduino based Piano

For understand the purpose how to build an Arduino based piano, the question is how to develop a various tones using Arduino. We know that Arduino have ability of producing PWM signals.

I will be utilizing this feature of Arduino to generate tones. The other way to create tones using Arduino is to use the function tone function.

Using tone function, you can create square waves of different frequencies but with stable duty cycle. The tone function depends on the Timers of Arduino.

Arduino based Piano using piezo

Components Required





Circuit Diagram

The structure of Arduino piano circuit is very simple. First, attach a 5v Piano Buzzer i.e. its positive terminal to Pin 10 of transistor. It is necessary that you attach the Piano Buzzer to one of the PWM have ability to pins of Arduino. The other end of the Piano Buzzer is connected to GND.

Now, connect transistor pin 1 to Arduino pin 13. These pins behave as the tone input pins. Transistor pin 1 is connected to GND.


After connecting the connections as per the circuit diagram and install the code to Arduino. Once the power to the circuit is turned on, Arduino is prepared to accept the input from the buttons.

Each button is related with a PWM signal in the code. When a button is pressed, that particular PWM signal is passed through the Piano Electric Buzzer.

Now for the record and repeat, play some tones using different commands. Once have done with the tone, you can press the Interrupt button. Instantly the Arduino enters Interrupt manner, all the earlier pushed tones are played back by the Piano Buzzer.

A main point to understand here is that I did not use the tone function of Arduino. You can try to create sounds of various frequencies using that function.


A Project called Arduino based Piano is executed here. This project can be accessible in understanding the sound capable of Arduino. Even I have not used the tone function, but you can execute the same using that function for more precise results.


So this can be all for these days. Hope it’ll be useful for you guys. Have fun….