ESP8266 - Button - Piezo Buzzer
This tutorial instructs you the usage of an ESP8266 and a button for controlling a piezo buzzer. The tutorial will go into detail regarding the following actions:
- When the button is pressed, the piezo buzzer will produce a sound.
- When the button is not pressed, the piezo buzzer will stop producing sound.
- When the button is pressed, the piezo buzzer will generate a melody.
Hardware Preparation
Or you can buy the following kits:
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Additionally, some of these links are for products from our own brand, DIYables .
Wiring Diagram

This image is created using Fritzing. Click to enlarge image
No breadboard? The same circuit can be wired without one, as shown below:

This image is created using Fritzing. Click to enlarge image
See more in ESP8266's pinout and how to supply power to the ESP8266 and other components.
ESP8266 Code - Simple Sound
Detailed Instructions
To get started with ESP8266 on Arduino IDE, follow these steps:
- Check out the how to setup environment for ESP8266 on Arduino IDE tutorial if this is your first time using ESP8266.
- Wire the components as shown in the diagram.
- Connect the ESP8266 board to your computer using a USB cable.
- Open Arduino IDE on your computer.
- Choose the correct ESP8266 board, such as (e.g. NodeMCU 1.0 (ESP-12E Module)), and its respective COM port.
- Connect an ESP8266 to a PC using a USB cable.
- Open the Arduino IDE, select the correct board and port.
- Copy the code above and open it in the Arduino IDE.
- Click the Upload button in the Arduino IDE to compile and upload the code to the ESP8266.
- Hold down the button for several seconds.
- Listen to the sound of the piezo buzzer.
Code Explanation
Check out the line-by-line explanation contained in the comments of the source code!
ESP8266 Code - Melody
Detailed Instructions
- Wire the components as shown in the diagram.
- Connect the ESP8266 board to your computer using a USB cable.
- Open Arduino IDE on your computer.
- Choose the correct ESP8266 board, such as (e.g. NodeMCU 1.0 (ESP-12E Module)), and its respective COM port.
- Copy the code and open it with the Arduino IDE.
- Create the pitches.h file On Arduino IDE by:
- Either click on the button just below the serial monitor icon and choose New Tab, or use Ctrl+Shift+N keys.
- Give file's name pitches.h and click OK button
- Copy the below code and paste it to the created pitches.h file.
- Click the Upload button on Arduino IDE to transfer code to ESP8266
- Push the button
- Hear the tune from the piezo buzzer


Code Explanation
Examine the line-by-line description in the remarks of the source code!