How to Use a Buzzer (or Piezo Speaker) - Arduino Tutorial


Introduction: How to Use a Buzzer (or Piezo Speaker) - Arduino Tutorial

About: Arduino Tutorials by Team

In this tutorial you will learn how to use a buzzer or piezo speaker with Arduino. Buzzers can be found in alarm devices, computers, timers and confirmation of user input such as a mouse click or keystroke.

You will also learn how to use tone() and noTone() function.

So, let's get started!

Step 1: What You Will Need

For this tutorial you will need:

  • Arduino uno
  • Breadboard
  • Buzzer / piezo speaker
  • 100 Ohm resistor (optional)

Step 2: The Circuit

The connections are pretty easy, see the image above with breadboard circuit schematic.

Step 3: The Code

Here's the "Tone" code, embedded using codebender!

How it works? It's simple, tone(buzzer, 1000) sends a 1KHz sound signal to pin 9, delay(1000) pause the program for one second and noTone(buzzer) stops the signal sound. The loop() routine will make this run again and again making a short beeping sound.

(you can also use tone(pin, frequency, duration) function)

Try downloading the codebender plugin and clicking on the Run on Arduino button to program your Arduino with this sketch. And that's it, you've programmed your Arduino board!

You can keep playing with that by clicking the "Edit" button and start making your own modifications to the code.

For example, try to change sound signal "1000" (1KHz) to "500" (500Hz) or delay time and see how it changes the program.

Step 4: Well Done!

You have successfully completed one more Arduino "How to" tutorial and you learned how to use:

  • buzzer / piezo speaker
  • tone(), noTone() functions

I hope you liked this, let me know in the comments.

There will be more of them, so make sure to click Follow button!



    • Clocks Contest

      Clocks Contest
    • Oil Contest

      Oil Contest
    • Water Contest

      Water Contest

    20 Discussions

    Just what I needed. Thanks!

    nice thank you so much I need more for buzzer

    just use the 100ohms resistor, the noise pitch increases and its annoying

    Can someone help me, i wanne use millis() instead of delay

    Can I increase/Decrease the volume without touching the resistor? That is by modifying the code?

    1 reply

    No need to use a resistor, just use a knob. Middle to 5v, one side to the piezo, none to the other


    2 years ago

    Is it very harmful if I don't use the resistor ?

    2 replies

    is there a difference between a buzzer and a piezo sounder?

    I have two buzzers, one active and one passsive, and i don't know which is which. i plugged them both in one after another, and the first one made a muffled sound till i unplugged the 5V. The other one makes a long, high pitched noise without the one second pauses, but makes a very quiet, but with one-second intervals noise when i unplug the 5V. Cansomeone please tell me which is which?

    2 replies

    Um, you're just a juiceical so therefore you cannot use a {potato} for brekfest! OKAY! so I am just tired of it! because I was a caattile

    can you suggest me which piezo speaker i should buy? i mean specific component

    Reduce the resistance..better just take it off.....