Arduino Metronome (with ISR)




Introduction: Arduino Metronome (with ISR)

I play flute and I love Arduino so...why not to make a metronome with Arduino?

In this project I add a button to start and stop beats and to menage it I used interrupt technique.

Material required:

  • Arduino UNO
  • 10 kΩ linear pot
  • buzzer button
  • 1 kΩ resistor
  • breadboard
  • some jumpers

Step 1: A Bit of Mathematics

Now, a bit of mathematics: Here the relation between bpm and bps:

bps = bpm / 60

Time between two pulses:

T = 1 / pbs
in milliseconds:
T = 1000 / pbs

So, pulse duration + silence duration = T
A good ratio between pulse duration and T is 1:10.
In conclusion:

Delay time of "bip" [ms] = 6000 / bpm
Delay time of silence [ms] = 54000 / bpm

Step 2: Tone() and NoTone() Functions

To play sound with Arduino, use the following function:

tone(buzzer_pin, frequency);

To stop play sound:


Step 3: Upload Code

Visit my site for more!

If you have any questions write me an e-mail to:

Here the code:



  • Epilog Challenge 9

    Epilog Challenge 9
  • Sew Warm Contest 2018

    Sew Warm Contest 2018
  • Gluten Free Challenge

    Gluten Free Challenge

We have a be nice policy.
Please be positive and constructive.