Electrical – Is the 555 timer accurate and uniform enough for a metronome

555accuracytiming

I would like to create a simple metronome using the ICM7555 CMOS RC timer (datasheet), but I am not sure if the pulses will be "uniform enough".

The datasheet states "astable timing accuracy" of 2% / 1.7 – 2.3 ms, but I am not sure how to interpret this.

Does this mean the signal will have a variance of 2%, or that the resulting frequency will have a constant error or up to 2%? I can live with a slightly inaccurate metronome (i.e. beeps at 128 bpm instead of 130 bpm), as long as the pulses are uniform, but if the timing between pulses varies a lot, then there is no point in doing this.

If 555 is not uniform, are there perhaps some other ICs which can provide uniform timing (apart from using a microcontroller of course, I am aware that's an alternative, but would like to avoid having to program it).

Best Answer

Once going, the pulses from the evil 666 555 timer will be fairly uniform. However, the initial accuracy depends mostly on the accuracy of the analog parts, plus a little due to the comparator thresholds in the timer itself. Unless you spend a lot of money on parts, the error budget will be 15% or more. The capacitor contributes to 10% alone, and the various other resistors, internal threshold voltages, and comparator offsets will cause the remaining 5%.

A much simpler answer is to use a microcontroller. Many are available with internal oscillators good to 2% or so. Most are also able to drive a crystal or resonator directly. That gets you to 50 PPM error or better for just a few 10s of cents.

In the micro, you can set up a periodic interrupt, like every 1 ms for example. By using the error accumulator method, you can use that as the basis for creating any frequency with long term error as good as the oscillator. Each tick would be within ½ ms of the ideal time. That error is imperceptible to a human. The speaker or whatever sound transducer you use can then be driven for the next 1 ms period. That will make a nice "tick" sound.

This will take less parts, be more stable, be far more accurate, and cost about the same as the 555 timer solution. It also has the advantage of allowing exact beats/minute to be entered by some user interface if desired. You can also use a pot as input with markings on the dial calibrated to beats/minute, but the values won't drift with time and temperature as much as they would with the 555 timer circuit.