Real Speaker (not Piezo)

Here is a related question:

I picked up an 8 Ohm, 1.5W speaker. Connecting it to the Arduino, powered over USB, it is just too quiet even with very low resistance. Are there any simple, cheap options for making it louder?

  • I don't care about sound quality, I am only driving square waves.
  • Also, it doesn't need to be that much louder. The volume of my alarm clock radio would be fine. (I opened it up and it uses a 16 Ohm, 1.5W speaker, but on 120 VAC of course.)

Would a 0.5W speaker be louder? If I used 9V power to the Arduino, would that get louder? Any simple amplifier solutions when quality is totally irrelevant?

Hmm, maybe I should hook up a 9V battery to the speaker, with some resistance, and somehow use an SCR to switch it on and off quickly. Does that sound reasonable? To avoid blowing out the speaker, I guess I should choose R so that I=9V/R makes P = I^2 * 8Ohm < 1.5W? Thus R around 20 Ohms total (counting the speaker's impedance). Can this hurt the Arduino at all?