Was trying out several sound transducers, a small 8 Ohm (0.25W) 'thin' speaker (those usual(?) 4cm diameter green base things) and a small speaker from an old phone (handset) which played MP3 files from a DFplayer.
But when i tried connecting a (passive) buzzer - it emitted a loud beep (over the songs - still playing faintly).
The buzzer sounds okay if just playing tone() from an Arduino, and even the toneMelody.ino example sketch sounds reasonably clear.
DVDdoug:
I'd assume you have an active buzzer. Connect it to 5V and if it makes a tone it's active.
i can confirm it's not an active one, i have that too.
this buzzer does play a tone using the toneMelody.ino sketch.
infact it even plays a crudely simulated voice - a sketch i found playing the Daisy Bell song. (albeit rather distorted and quite faint.)
DVDdoug:
(Don't connect the 8-Ohm speaker to 5V because 5V across 8-Ohms is 3.125W.)
hmm, i've been lucky then - i've driven it with an Arduino digital pin using tone() - i think it's meant to be driven by an Arduino though, it came with the starter kit - just not sure what those numbers on the speaker are meant to be then.
DVDdoug:
If that's not the problem, maybe the chip needs a low resistance/impedance load or maybe **it doesn't "like" the capacitive load of a piezo device. **
this seems to be the most likely issue - but (having read another currently active thread) - i did try putting a 100 Ohm across the buzzer but that didn't help - it still beeps.
oh, and that other phone speaker that works is more than 10 Ohm; even 30 i think.
Probably the DFplayer's output section cannot drive several microfarads of load stably. Its expecting a vaguely resistive impedance. Adding 100 ohms in series with the piezo speaker will cure this.
The DFplayer most likely has a bridgemode inductorless class-D amplifier, and they rely on the speaker being the inductor.
A capacitor (piezo) will short their output.
Leo..