Will I blow my speaker up?

I got a few of these 0.25 W speakers:

http://www.nkcelectronics.com/Thin-Speaker_p_236.html

After a bit of searching I found this circuit from CrossRoads:

My electronics knowledge doesn't extend to working out how many watts that would pump through my speakers. Would that kill them? Can I drive (one of them) by just putting (say) a 1 uF capacitor in series with the Arduino digital pin? I just want to beep at various frequencies for a second, not play music.

My electronics is not so good either so I would put an additional potmeter in between and call it volume control :wink:

If they're 0.25w speakers and their impedance is 4 ohms, then you don't need 12v to drive them. The circuit you gave could damage the speaker when the mosfet turns on.

Driving them with 1v RMS or 2v peak to peak (square wave) will feed them their maximum rated power of 0.25W. So I would use something like the following. Adjust R to get the volume you want - 3 ohms minimum. The transistors could be small power types, e.g. BD439 and BD440, although you can probably get away with using BC327/337 especially if R is significantly higher than the minimum.

EDIT: I see that the speakers you have are not the Gento speaker in the diagram, in fact they are 8 ohm impedance. This means they need 2.8 volts peak to peak to drive them at full power. The circuit I gave is still OK, with R = 2.2 ohms minimum. BC327/337 transistors should be adequate.

If they're 0.25w speakers and their impedance is 4 ohms, then you don't need 12v to drive them. The circuit you gave could damage the speaker when the mosfet turns on.

Its a small speaker so the current spikes on turn-on could be too large - reducing the 220uF blocking capacitor to a smaller value is wise (perhaps try as little as 1uF at first, then if its not struggling up the value until its loud enough).

Adding a series resistor (perhaps 20ohms or so) is series with the blocking cap would also control the spikes when the MOSFET conducts. I suspect this circuit as is would drive a much larger speaker fairly well.

Resistor values in my circuit were selected to get good volume out of that 94dB rated speaker to be heard clearly in a 40x40ft room full of fencers.
I actually have a switch installed to allow two 68 ohms to be wire in parallel for 34 ohm, on series fotr 136 ohm for a hi/lo volume control.
My wife says both are too loud :slight_smile:

MarkT:
Its a small speaker so the current spikes on turn-on could be too large - reducing the 220uF blocking capacitor to a smaller value is wise (perhaps try as little as 1uF at first, then if its not struggling up the value until its loud enough).

True, but a lower value capacitor will act as a high pass filter, so that the low notes are much quieter than the high notes.

MarkT:
I suspect this circuit as is would drive a much larger speaker fairly well.

The 68 ohm resistor makes it very inefficient and limits the power it can deliver. The maximum voltage it can deliver into an 8 ohm speaker is 1.26 volts peak to peak, which corresponds to only 0.05W. To drive a speaker efficiently, you need active pull-up and pull-down, as in the circuit I suggested, or a transformer.

[EDIT: but if you have a wife like CrossRoad's, maybe 0.05W is all you want!]

Well, we do have 6 of them, and when they warble all at once on power on its quite a din!
And the beginner fencers are all fascinated with poking their own foot just to hear the buzzer while they wait for their opponent to get ready.

Thanks for the suggestions everyone! I have more than one of the speakers so I suppose it isn't the end of the world if one goes. It's only for beeping at an RFID door opening system, it doesn't have to be that loud.

If it only will be a beep, why not use one of those $1 buzzers from radio shack or the like. An audio-quality speaker seems like overkill to me.

He's already got them tho, in Australia, with very expensive shipping :slight_smile:

Well I have the speakers now (they were shipped "in a bunch" with the magnets holding them together).

So whilst I hardly need "audio quality" I am hoping for audibility, and not either blowing up the speaker or the Atmega.

Just to report back - I hooked up the speaker in series with a 33 uF capacitor and then a 33 ohm resistor, and connected it to pins 8 and Gnd. Then the toneMelody sketch worked OK.

Glad it's working, however if you leave it like that you may damage the mcu because the abs max rated output current per pin is 40mA. 150 ohm instead of 33 ohm would be OK.