1
\$\begingroup\$

I need a small package buzzer to replace the regular piezo buzzer which is too big for my design, so I tried the KLJ-5030.

I tested by applying 3V to positive pin and GND to negative pin and heard a small crackling but not really sound (beep).

The datasheet does not explain well how this works. I am wondering, does this require other components in order to work?

Update:

I tested with Arduino at 4000 Hz and got 46db on my decibel meter placed at 30cm: not good enough for my need.

\$\endgroup\$
4
  • \$\begingroup\$ It is a tiny speaker that is driven with 4kHz AC for it to be not loud. It is only 12 ohms so it needs a little power amplifier and an oscillator to drive it. \$\endgroup\$
    – Audioguru
    May 16, 2023 at 17:34
  • \$\begingroup\$ it said 82dB@3V so it should be loud enough? \$\endgroup\$
    – Unicorn
    May 16, 2023 at 17:45
  • \$\begingroup\$ 82dB at 10cm is almost wearing it as an earphone. \$\endgroup\$
    – Audioguru
    May 16, 2023 at 18:35
  • \$\begingroup\$ lol I did not know that's what mean the 10cm. thanks \$\endgroup\$
    – Unicorn
    May 16, 2023 at 18:38

3 Answers 3

4
\$\begingroup\$

You need an external 4kHz square wave source and driver.

You may be able to generate the 4kHz with an Arduino, but it's better not to try to drive this directly with the Arduino pin- DC resistance is only 12Ω so you'd be basically short-circuiting the GPIO and the sound won't be that large.

If you have a 5V Arduino you can drive it like this:

schematic

simulate this circuit – Schematic created using CircuitLab

For 3.3V:

schematic

simulate this circuit

The diode is optional according to the transducer datasheet recommendations, but I'd put it in just for luck unless you 'scope the voltage at the collector and find it will within limits. If you leave it out, a 2N4401 would be safer.

\$\endgroup\$
7
  • 1
    \$\begingroup\$ Hmm, great, with this I'm able to get improvement from 46db(with Arduino only) to 55db (adding 2N222 transistor, 10 Ω and powered at 3.3V). Thanks \$\endgroup\$
    – Unicorn
    May 16, 2023 at 19:52
  • \$\begingroup\$ What do think if I remove the resistor? Because I have requirement of 3.3V only anyway this buzzer have Rated Voltage of 3V. \$\endgroup\$
    – Unicorn
    May 16, 2023 at 19:56
  • \$\begingroup\$ If your supply is 3.3V you can definitely remove the resistor, it's only there to keep it < 4V with a 5V supply. You could also drive the transistor saturated which would give a bit more volume again. Say a 300 ohm base resistor, ground emitter and transducer between collector and +3.3. You should ensure the non-sound state does not drive current through the transducer and transistor (low when off for the two drive circuits discussed by myself, the datasheet one uses a PNP so will be the opposite). \$\endgroup\$ May 16, 2023 at 19:58
  • \$\begingroup\$ First let me rectify, I miss actually the resistor on my first so the improvement was gotten without resistor. And when adding the 10 Ω, I got no sound. Secondly I do not understand the "transistor saturated" concept. \$\endgroup\$
    – Unicorn
    May 16, 2023 at 20:05
  • \$\begingroup\$ If you have no sound your resistor might be open or much higher than 10Ω. I'll add another schematic for the second if my words don't do it. \$\endgroup\$ May 16, 2023 at 20:08
5
\$\begingroup\$

The page you linked to states "Externally Driven".

That part is a transducer (a very small loudspeaker) only, not a buzzer - it must be driven by an external oscillator to make a sound. The datasheet indicates that it should be driven by a 3 V 4000 Hz signal.

\$\endgroup\$
4
  • \$\begingroup\$ Thanks. What kind of oscillator i should use, those 16Mhz crystal oscillator? \$\endgroup\$
    – Unicorn
    May 16, 2023 at 17:42
  • \$\begingroup\$ No - it wants to be driven at 4000 Hz. \$\endgroup\$ May 16, 2023 at 17:46
  • \$\begingroup\$ Ah ok. And if I use Arduino analog pin to generate 4000 Hz I may skip the external oscillator? \$\endgroup\$
    – Unicorn
    May 16, 2023 at 17:49
  • \$\begingroup\$ In that case, the Arduino serves as the external oscillator. \$\endgroup\$ May 16, 2023 at 17:54
2
\$\begingroup\$

As the Arduino can supply only about 20 mA on GPIO pins, the following should work to provide 3 V P-P into 12 ohms (250 mA):

schematic

simulate this circuit – Schematic created using CircuitLab

Voltages

Speaker current

For a 3.3 V system, remove diode D1. Voltage will be about 2.35 V P-P.

Voltages for 3.3 V

Here is another possibility for generating a full 3V drive to the speaker. I have added an inductor and resistor in the supply to limit the cross-conduction current, which I have purposely increased by introducing a 10 us rise and fall time of the 4 kHz signal.

Voltages

Speaker current and supply current

schematic

simulate this circuit

\$\endgroup\$
3
  • \$\begingroup\$ I'm a little confused why you'd use a push/pull driver if you are going to have a diode on the output. \$\endgroup\$
    – penguin359
    May 17, 2023 at 16:44
  • \$\begingroup\$ It was used to lower the output voltage to the required 3 V, but I see what you mean. It would probably be better to move the diode to the supply, so that the pull-down will work properly. However,it needs 2 diodes. \$\endgroup\$
    – PStechPaul
    May 17, 2023 at 18:58
  • \$\begingroup\$ OK, that makes a little more sense now. \$\endgroup\$
    – penguin359
    May 18, 2023 at 7:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.