I am using an Arduino to control some mechanical components in a project I have. It controls a motor, two servos, a valve, and a compressor. When plugged into the computer, everything works fine and perfectly. However, when I power it through the barrel jack using our power supply, some weird things happen. First of all, our servos, which are powered through the Arduino, stop working. All the other components work except for them. Secondly, at the end of the code we have a 5 second delay. Using the computer it works fine. When powered with our supply the delay doesn't seem to happen at all. Any ideas?

  • You say the servos are powered through the Arduino. How are the motor/valve/compressor powered? What voltage do you read on the +5V line in the two different ways of powering the Arduino? How's the +5V line look on a scope ? Re the 5 second delay, if you have an LCD you can attach, display millis() before and after the delay() call – James Waldby - jwpat7 Dec 2 '15 at 19:23
  • The motor, compressor, and valve are powered with our 12v battery, which is what the arduino runs on when not plugged in. I am not near my setup right now, so unfortunately I can't take those measurements until later, but I'll check them for sure. – Gigaxalus Dec 2 '15 at 19:51
  • 1
    You should not power servos through an Arduino. Even if they have to use the same supply they should have their own wiring. They should not use the Arduino's regulator. – Chris Stratton Dec 3 '15 at 23:04

I believe that the problem that you are facing is lack of power. It is likely that your power source cannot supply enough current or voltage to power the equipment AND the arduino. Try to get a power supply that has more amps.

| improve this answer | |
  • This could be the case, but I doubt it. Our power supply is a large 12v battery. It looks like a car battery. I can try turning the motor off while the servos are running to see if that will fix it, but I have a feeling the battery should be powerful enough. – Gigaxalus Dec 2 '15 at 21:56
  • 1
    It could be that the 5V regulator on the Arduino is unable to provide enough power. Many USB ports now can provide many amps, but the 5V regulator is limited to 800mA. How hot does the regulator get? – Majenko Dec 2 '15 at 23:20
  • This might be the case. The regulator does get warm, so maybe we are reaching our current limit. – Gigaxalus Dec 3 '15 at 2:33
  • If there is a large amount of voltage, but you circuit is still drawing lots of current, then the circuit will remain unpowered. – user15297 Dec 4 '15 at 7:48
  • @solver - that is untrue. If the circuit is drawing sufficient current that it is "unpowered" then there will not be a large voltage either, rather it will have sagged below the "open circuit" rating of the regulator or supply. – Chris Stratton Dec 17 '15 at 1:30

i agree with majenko, maybe you know how to fix it but if you do not know here is a site with good information to make you're own 5 volt Regulated source.


sorry for my bad english and good luck. :D

| improve this answer | |

I had a similar problem recently while powering a servo with a Arduino. It did turn out to be power, our Arduino could only supply about 500ma and with sufficient speed or torque on the servo (a lot of times just the boot sequence) we would it the 500ma at peak, the effect however was baffling at first because when we hit the peak current the Arduino would reboot, this could account for you extra delay at the end.

For us the solution was simple bypass the Arduino when supplying current to the servos, in our case it as a 5v battery, you would probably need to drop the 12v to 6v in your case.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.