Electronic – How to make active buzzer louder

piezo-buzzer

I have an active buzzer connected to an Arduino and everything works fine but the buzzer is just not loud enough. I don't know any specs about the buzzer but I've tried connecting it to a 9v battery using a transistor with the collector connected to +9v, the base connected to the digital output pin of the Arduino, and the emitter connected to the buzzer. This did not seem to do anything different. I tried using a passive buzzer as well using a PWM pin, but I was not able to achieve the same results so I'd like to stick with the active buzzer. Thank you.

Best Answer

Put the buzzer in the collector circuit and it should be about as loud as it is connected directly to the 9V source. If that's not loud enough, get another buzzer. Hopefully it's rated to work with 9V.

schematic

simulate this circuit – Schematic created using CircuitLab


You were connecting it as an emitter-follower which gives you about 0.7V less than the logic input voltage (4.3V with 5V logic) and the remainder (4.7V with a 9V supply) wasted in the transistor. A higher supply would just result in more wasted power. Depending on how much load the buzzer represents the emitter follower may result in a bit less loud than a direct connection or a bit louder (since the MCU output will be loaded significantly by most buzzers and you won't get the full 5V out).