play wave with sd-card and 8ohm speaker

I have a 8ohm speaker connected through 10K pot to a digital pin.
With play tone I got good sound of it.
Now I added a sd-card-module to play some wave,
I used some example-code to check if the module is working with my sd-card, and it is.
But it doesn't play the file, well maybe it does play, but I don't hear anything from the speaker...

I found out I might need soms amplifier, so I found this on google:

I ordered the elements shown in the picture and made it, but nothing happend! Even playing a tone didn't work anymore.
Any suggestions how to get my Uno to play some wave?

That circuit should work, but IMO it's not a "great" amplifier. I'd use a power amplifier IC, such as an LM386 or LM380. Amplifier chips are easier to use and if you follow the manufacturer's recommended circuit they are pretty-much foolproof. (It's not really a big deal because the Arduino doesn't put-out great audio anyway. :wink: )

Try the amplifier with something else, such as the output from your soundcard, or the headphone out from your iPod etc.

When you connect "something else", put a capacitor in series with the input to block the amplifier's DC voltage from you audio source. (10uF or more, with the + side toward the amplifier circuit).

Try connecting your powered computer speakers to the Arduino. This time reverse the capacitor (+ toward the Arduino) to block the Arduino's DC from your speakers.

I have a 8ohm speaker connected through 10K pot to a digital pin.

You can damage the Arduino by directly connecting an 8-Ohm speaker (or with the 10k pot turned to maximum volume). The minimum resistance/impedance is 125 Ohms. The Arduino I/O pins are rated for "absolute maximum" current of 40mA. From [u]Ohm's Law[/u], 5V across 125 Ohms is 40mA.

5V across 8-Ohms is 625mA. The output voltage will probably drop (so you won't actually get that much current), the ATmega chip will probably overheat, the chip might stop running so your program might crash, and there is a chance you'll permanently damage your ATmega chip. You might just fry that one output pin, or you might kill the entire chip.

If you don't get sound with tone() and your known-good powered computer speakers, that I/O pin is probably fried... Try sending tone() to another pin.

through 10K pot

A 10K pot won't work correctly with an 8-Ohm speaker. It will be "all or nothing". The pot and the speaker form a voltage divider. For example, with the pot set to 50%, you have an 8/5000 voltage divider or 0.16% of of the signal. And with a 10k pot set to "zero", you may have more than 8-Ohms of resistance because pots don't always go all the way to zero...

The 10K pot should work OK with your amplifier circuit, which has an input impedance of 2.2K.

Use a set of self powered speakers from on old desktop computer.
Run the arduino output thru a cap and a pot to set the output level to ~+/-1V level like I did here:

Even playing a tone didn't work anymore.

Then you have not built it correctly.

Attach a photograph of your board, maybe we will be able to spot something.

Disconnect the out from the arduino and put that resistor first to +5V and then to ground. You should here it click. Do you?