Go Down

Topic: Duemilanove consistently expires after around 60 seconds? (Read 600 times) previous topic - next topic


This is a head scratcher for me.

I have a little robot connected to a Duemilanove.

Here's the odd thing: when running under battery power, the robot stops moving after about 60 seconds. When connected via USB the robot will happily hum along for as long as I send commands to it.

Pressing the reset button on the arduino allows the bot to move again for another 60 seconds or so.

I'm using the 9V battery plug to power the arduino. I'm powering an H-Bridge (to move the motors) and an RF receiver from the 5V pin on the arduino. The two DC motors on the bot are powered by 4 AA batteries.

My suspicion is that powering the arduino and the H-bridge and the RF receiver might be causing the voltage in to the board to drop, and that's causing it to shut down. This is just a guess.

But... the bot's still receiving and processing commands, so it's not completely asleep! I can tell because I have an LED on pin 13 that I can blink with a remote command, and that still works. It's just not sending commands to the H-bridge anymore.

Any ideas? This is all very voodoo to me. The weird thing is that it consistently times out after about 60 seconds. I can send one command a second, or one command every 30 seconds, and the results are the same.


Next time it stops, take some voltage measurements.
The Arduino will continueto work at 16MHz down to ~3.9V and maybe farther (with perhaps odd behavior exhibited.
No enough data is provided on the RF Rx and H-bridge to say what would happen if their supply voltage or control signals dropped.

Are any parts feeling hot to the touch when it stops?
Designing & building electrical circuits for over 25 years. Check out the ATMega1284P based Bobuino and other '328P & '1284P creations & offerings at  www.crossroadsfencing.com/BobuinoRev17.
Arduino for Teens available at Amazon.com.


If you are using one of those wimpy small 9 volt batteries then you are probably just exceeding the current draw capacity of the battery. Those small 9 volt batteries should be outlawed for use with an arduino, they are just so expensive for the small amount of enegy they can supply. Get a proper battery source for the arduino. A quick check is to read the 9volt battery voltage while the 'bot' is in it's failed condition, If it's lower then around 7.5vdc the arduino board will just drop off due to the auto-voltage selection circuit.



Hey guys! Thanks for the quick responses!

Nothing on the board seems hot to the touch when the bot dies.

As far as I can tell, voltage seems consistent. I'm not seeing a drop anywhere. Here's how I'm testing:

(bear in mind I'm just some dope with a voltmeter and not an EE or anything)

1. I'm attaching my red alligator clip on my meter to 5V and the black one to ground. Reading stays constant around 5V, even after the robot stops moving.

2. I'm holding one clip to the metal tab on the inside of the 9V barrel plug, and keeping the other attached to ground. Reading is constant around 6V, whether the bot has stopped or not.

Sooooo.... according to this: http://www.arduino.cc/en/Main/ArduinoBoardDuemilanove

The board can operate on an external supply of 6 to 20 volts. If supplied with less than 7V, however, the 5V pin may supply less than five volts and the board may be unstable. If using more than 12V, the voltage regulator may overheat and damage the board. The recommended range is 7 to 12 volts.

...my bot is running right on the edge of reliable board behavior voltage. Does that seem correct to you guys?


You may have some motor current surges that are causing the arduino to reset - can you connect a serial port and add some print statements so you can determine where the code is when it stops? If not, maybe blink an LED or something?
Designing & building electrical circuits for over 25 years. Check out the ATMega1284P based Bobuino and other '328P & '1284P creations & offerings at  www.crossroadsfencing.com/BobuinoRev17.
Arduino for Teens available at Amazon.com.

Go Up