Running of off battery messes up MAX7219

Hello all. I have made a clock using some seven-segment displays, a DS1307 RTC IC, a MAX7219 Seven-Segment Controller IC, and of course an Arduino Duemilanove with a Protoshield.

The clock works perfectly and displays the time correctly when I plug the Arduino to my computer with the USB cable to power it, however when I plug the Arduino into a 9V DC wall wart or a 9V battery, all the display shows is 000000.

Any suggestions as to what might be wrong?

Many thanks, ionine_

EDIT: I forgot to mention, when I return the Arduino back to USB power, the clock still shows the correct time (I have a 3V coincell backup for the DS1307)

You may have a problem when powered by 9v with too much current flowing through the onboard regulator. The regulator chip is next to the DC input jack, does it get very hot when powered by 9 volts?

USB can provide up to 500ma. Make sure your wall wart is rated for at least this much. Preferably 1A or more.

Some 7 segment displays need lots of current.

You may need a heat sink on the regulator if it gets too hot.

I suspect the problem is less with the current capacity of the wall wart/battery, more with the regulator overheating because too much power is dissipated dropping the voltage down to 5 volts.

if this only happens when running off a battery, I'd suggest the current capacity of the battery is not high enough.

Using one of moderndevice's 8x8 LED boards (2 of them actually), when running off a 9v for testing I found the board reset at a specific point in the LED animation (i.e. when enough of the LEDs are on to drop the regulator out of regulation).

Thanks for the help; it the battery was too dead and after testing the wall wart, it was only giving out 250 mA of power. I changed the battery and it worked fine, thanks again :)

yeah this happened to me in the situation i said before when the battery was at 8.5V (surprising, right?)