Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

555 beep in bursts

I'm trying make a non microcontroller circuit that gives about 5 quick beeps then roughly 1 second off, repeat. I'm running on 2 AAA batteries. I already have a bunch of cmos 555 on hand so was trying to make that work. I'm using a 3V active buzzer which is quite loud. I tried a few astable variations, the attached circuit with R1=1K (in series with variable resistor), R2=100K, C=10uF gave me the desired timing sequence but doesn't beep, just a steady on, 1 second off, repeat. What changes can I make to get the desired timing but with beeps.
Thanks,
Rich.
 

Attachments

  • 555 diode.PNG
    555 diode.PNG
    33.6 KB · Views: 303
Active Piezo buzzers are very efficient and may be driven by <50 Ohm sources like 74HC CMOS.
At 3V the effective impedance is > 1kohm. or less than 3mA
1710782690159.png


The intuitive solution is then 5 stages of a Johnson Ripple counter with a Capacitor discharge to reduce an approximate 1 second interval to a short burst like 50 ~ 100ms. A clock of 1 second can also be made with with RC components and a CMOS Schmitt inverter or NOR/NAND Schmitt gate. The CD 4000 series is too high impedance to drive 1k and will reduce the amplitude significantly so your best bet is the 74HC series.

An alternative is to create 3 RC pulses Ton = 100 ms, Toff = 1s and T duration = 5 seconds then stop.
Do you want a switch input , or you already have a switch and just start the sequence from power On?

Can you solder SMT flat TSSOP packs?
 
Last edited:
So most of what you wrote went over my head. If you're saying the 555 isn't suitable to drive the buzzer, I'm running the 555 output into a transistor switch circuit so I think that should be good, Yes? Before I try another chip, I have a 4011b somewhere ( finding it should be fun) if only for the love, if there is a way to make the 555 work could you detail it in simple language. Side question is the 555 more efficient running on batteries than the 4011B. I'll search for a 74HC but doubt I have one around. No switch needed it will run at power on.
 
Last edited:
A dual 555 is insufficient, let alone a single.
The drive current is not an issue.

You need 3 timers;
a 100 ms 1-shot
a 1 s cycle clock
a 5 cycle counter or a 5 s 1-shot
Logic to combine all 3
an input trigger.

Logic IC's can draw as much current as your buzzer with analog voltages in the mid range slowly rising as 1 shot timers then almost nothing in the static logic state. This is logic family dependent due to lower impedance drivers with low voltage high speed logic.

Do you have an idle or operating max current spec you wish to add?

Are you a programmer yet? or just pro-grammar.... This will take parts you likely won't have on hand so, you need a better plan of requirements.

Most of hard design work is up front is listing all the assumptions of requirements and avoidances and defining tolerances or MUST HAVE and MAY BE's.

This is the planning stage, just like programming with a functional spec then pseudo code. Getting it right the first time avoids respins or rip up and retries.
 
Last edited:
I'm trying make a non microcontroller circuit that gives about 5 quick beeps then roughly 1 second off, repeat. I'm running on 2 AAA batteries. I already have a bunch of cmos 555 on hand so was trying to make that work. I'm using a 3V active buzzer which is quite loud. I tried a few astable variations, the attached circuit with R1=1K (in series with variable resistor), R2=100K, C=10uF gave me the desired timing sequence but doesn't beep, just a steady on, 1 second off, repeat. What changes can I make to get the desired timing but with beeps.
Thanks,
Rich.

What triggers the 555?
What is the trigger signal voltage levels?
Is the trigger signal steady or a pulse?
If pulse, what is the width?
 
ok I hear you. I have done a little programming, not recently. I found the 4011b and tried this circuit. It works, but is it efficient do you think or should I get 74hc as you suggested. Pin 11 outputs to base of transistor switch. turning on active buzzer. Replaced C2 with 1uF.
 

Attachments

  • 4011be.PNG
    4011be.PNG
    139.4 KB · Views: 214
ok I hear you. I have done a little programming, not recently. I found the 4011b and tried this circuit. It works, but is it efficient do you think or should I get 74hc as you suggested. Pin 11 outputs to base of transistor switch. turning on active buzzer. Replaced C2 with 1uF.

Use a 74HC132 NAND (schmitt trigger inputs). and a low VGS(th) nmos mosfet to drive the buzzer.

Edit: typo. should be 74HC132
 
Last edited:
A quick and dirty, accurate (tone pitch, delays) use an Arduino, like a
nano board, and mBlock :

1710798801085.png


mBlock takes your block configuration, and converts this to Arduino code. The above
example should work. Use a Nano board (~$3) to develop, and then use the Nano board
to program a ATTINY85 (8 pin dip) if you want a smaller solution size wise. 1 chip does the
solution.

To code you drag and drop blocks out of its library (2'ond window) into 3'rd window and config
the blocks.

I believe the above example should work. You can easily make more or less notes, even
do a musical jingle.....

Here is an example for a sophisticated sequence timer/pulse generator (just an example of
how capable and simple block programming can be) :


Nano board :
1710799196569.png


Attiny85 :

1710799366136.png


External you still need the buzzer/piezo.

The ATTINY85 runs from 2V to 5V, pretty low power.

The board is easiest to use as its USB to PC to program by mBlock.
To program the ATTINY85 you need a programmer, and there is
a program firmware in Arduino you can put in Nano board and use
it as programmer.



Regards, Dana.
 
Last edited:
A small microcontroller would be the best and easiest to assemble option. Using logic chips would be a big effort but very possible. As mentioned above, some slight modifications can be made to the design parameters to allow the logic chip option to be simplified (like 4 beeps instead of five between long pause).
 
A small microcontroller would be the best and easiest to assemble option. Using logic chips would be a big effort but very possible. As mentioned above, some slight modifications can be made to the design parameters to allow the logic chip option to be simplified (like 4 beeps instead of five between long pause).
Does it have to be five beeps? Four or eight are simpler in one approach?
The Nano though small requiires more space than is available. 4 beeps would be fine. could you give me an example of what that circuit would look like using logic chips.
 
I'm trying make a non microcontroller circuit that gives about 5 quick beeps then roughly 1 second off, repeat. I'm running on 2 AAA batteries. I already have a bunch of cmos 555 on hand so was trying to make that work. I'm using a 3V active buzzer which is quite loud. I tried a few astable variations, the attached circuit with R1=1K (in series with variable resistor), R2=100K, C=10uF gave me the desired timing sequence but doesn't beep, just a steady on, 1 second off, repeat. What changes can I make to get the desired timing but with beeps.
Thanks,
Rich.

Here is a TLC555 version.
TLC555 astable clocks the buzzer until reset (when C3 is charged past the threshold of ~1v).
Assuming a 3v DC buzzer that draws more than 1ma.
Freq=1hz@50%.
D1 precharges C1.
Buzzes 5 times after power on (adjusts by C3/R4).
Not tested on hardware.

1710809412088.png
 
A small microcontroller would be the best and easiest to assemble option. Using logic chips would be a big effort but very possible. As mentioned above, some slight modifications can be made to the design parameters to allow the logic chip option to be simplified (like 4 beeps instead of five between long pause).
A quick and dirty, accurate (tone pitch, delays) use an Arduino, like a
nano board, and mBlock :

View attachment 144990

mBlock takes your block configuration, and converts this to Arduino code. The above
example should work. Use a Nano board (~$3) to develop, and then use the Nano board
to program a ATTINY85 (8 pin dip) if you want a smaller solution size wise. 1 chip does the
solution.

To code you drag and drop blocks out of its library (2'ond window) into 3'rd window and config
the blocks.

I believe the above example should work. You can easily make more or less notes, even
do a musical jingle.....

Here is an example for a sophisticated sequence timer/pulse generator (just an example of
how capable and simple block programming can be) :


Nano board :
View attachment 144991

Attiny85 :

View attachment 144993

External you still need the buzzer/piezo.

The ATTINY85 runs from 2V to 5V, pretty low power.

The board is easiest to use as its USB to PC to program by mBlock.
To program the ATTINY85 you need a programmer, and there is
a program firmware in Arduino you can put in Nano board and use
it as programmer.



Regards, Dana.
Thanks Danadak, mBlock sounds interesting. I'm definitely going to check it out in the near future. If was to order a few PCBs later and went with the ATTINY85 would I be forced to go with an IC socket for the ATTINY85 which makes the pcb larger. Or is some kind of in circuit programming possible. Please enlighten me.
 
Thanks Danadak, mBlock sounds interesting. I'm definitely going to check it out in the near future. If was to order a few PCBs later and went with the ATTINY85 would I be forced to go with an IC socket for the ATTINY85 which makes the pcb larger. Or is some kind of in circuit programming possible. Please enlighten me.

I am not aware of in circuit, but there is a USB approach with an onchip
bootloader. Take a look at https://duckduckgo.com/?q=usb+progranmming+attiny85&ia=web,
'several hits on this.

Regards, Dana.
 
Last edited:
NOTE: This circuit might not work when running on 3 V or less. For low voltage operation, change the device to a 74HC132. Warning - the gate pinouts are different.

This can be done easily with just two 555's, or with one quad gate package as in post #6. However, that circuit is for driving a bare piezo element, not a complete beeper. It uses two oscillators to make the beeper go on and off continuously, not in groups of beeps separated by off-times. However, the approach of one oscillator controlling another oscillator is correct.

BTW, CMOS logic circuits are extremely efficient, using only a few microamps to operate.

Either with two 555's or two oscillator circuits, have one oscillator drive the beeper at the rate you want the beeps to happen in a burst, such as five beeps in one second. The second oscillator gates the first one on and off. This sets the time between beep bursts. This type of gated beeper is pretty common, and uses very few parts.

Are you familiar with the CD4093? This is a quad NAND gate, but the gates have Schmitt trigger inputs. Not only do they work much better than a 4011 with low frequency circuits, but you also can get an oscillator in only one gate.

Here is a first pass at a gated beeper circuit. U1A forms an oscillator with a period of approx. 2 seconds. That's one second of rapid beeping and one second off. Its output gates U1B on and off. U1B is an oscillator with a period of approx. 0.2 seconds. That's five beeps in one second, the time it is gated on by U1A.

U1C inverts the logid polarity out of the U1B oscillator. When U1B is gated off by U1A, its output sits high. Since you want the beeper to be gated off rather than on-steady, that high must be converted to a low before driving the output transistor.

U1D is a spare gate. Its inputs have to be terminated either high or low, not just left floating. They can be tied to just about anywhere in the circuit.

Gated-Beeper-1-c.gif
 
Last edited:
If you don't have room for an Arduino nano, other, smaller Arduino IDE programmable options exist. Also, an array of logic gates, 555 timers and associated caps and resistors will require as much or even more space.

The smaller Arduino options require a usb to serial UART adapter so it doesn't have to be on the Arduino board.

Also, Laird makes some very small Nordic Bluetooth moards that can be programmed wirelessly. Like the DL654. I believe it is only 12 x 16mm. The Nordic chip is a fully functional microcontroller plus Bluetooth.
 
could you give me an example of what that circuit would look like using logic chips.

This is an outline circuit for a version I did a while ago for a youtube video (that I lost the video for...)

Schematic_Multi_Tone_Generator.png


The 4060 oscillator is producing an audio frequency that is then divided down by multiple stages.

Connecting diodes to different divider outputs gives different frequencies or on-off cycles - using more than one diode and output is gated by the combination of outputs; the diodes act as an AND gate, with any connected output low holding the final output at R6 low.

eg. Using an output that oscillates at 4Hz plus one that oscillates at 0.5Hz would give four pulses during one second the silence one second, repeating.

Using 8Hz plus 1Hz and 0.5Hz should give four in half a second, repeating every two seconds, etc.

Different combinations can give numerous effects - particularly, most telephone audio tones like dialling tone, ringing tone, unobtainable etc. (or the UK versions, anyway).

The circuit was intended to be audio out, using one of the higher frequency outputs for the tone as well as lower ones for cadence, but you could equally use it for switching a transistor - make R3 a bit lower, depending on the supply voltage, and connect the base to the "high level audio" point & emitter to gnd.
 

Latest threads

New Articles From Microcontroller Tips

Back
Top