Weird rest position and Bad Magic Number?

Hey. I wonder why the rest position differ from what I had set in the skeleton_head.config. And it always show the bad magic number after a few second the head activated (I'm developing the upper part only, which only 1 Arduino is used, and I haven't attach external power to the Arduino/Nervo Board yet). The robot seems like lost all the connection after this issue comes out...Need help !

calamity's picture

You need external power for

You need external power for your servo. The arduino can't gives enough power to the servo and will brown out and reset, making you lose the connection

Kelvin Chuah's picture

6V12Amp?

I guess a minimum of 6V12Amp will do so? How far will be the range for the power of the external source the servo can withstand?

AutonomicPerfectionist's picture

You'll need to check what

You'll need to check what voltages the servo is rated for, standard size servos generally operate at 5v power and 5v signal, while the mega size used in the shoulders and stomach generally require 12v power and 5 volt signal. As long as you make sure the voltage you supply is exactly the same as what the power input is rated at for the servo, you should be good (get something with as high amperage as you can, the servos will only draw the amount they need but if you don't have enough for all of them you can experience slowdowns on the servos).

Kelvin Chuah's picture

Just confirmation

I only used 6 servos for my Inmoov (Eyes, jaw, neck, head, articulating neck), so it seems like Arduino itself doesn't have enough voltage to powerup all of these?

AutonomicPerfectionist's picture

Voltage is not the problem

Voltage is not the problem here, it's amperage. The Arduino can only provide a couple hundred milliamps, which is barely enough to run a single servo. Six will definitely cause it to reset. Keep the signal wires connected to the Arduino but connect the power wires to an external power supply like a battery (again making sure it's the correct voltage) and connect the power supply ground to the Arduino ground and the servo grounds (which ensures the reference ground is the same for Arduino and servos so the signal wire doesn't become noisy). If you need help I would recommend googling for how to control many servos with an Arduino

Kelvin Chuah's picture

Thanks in advanced

Noted with thanks, and I really appreciate that. I'm guessing that Inmoov doesn't positioned as expected (rest) are due do such issue?

hairygael's picture

That's correct, because of

That's correct, because of the reset of the Arduino, the servo cannot set to the "rest" position or to any position.

Here is how to supply the servos:

A 6V50Amps power supply will do the job for all the servos we are currently running on InMoov.

https://www.ebay.ca/itm/DC6V-50A-Switching-Power-Supply-General-Type-300W-DC-6V-Power-Supply-/142852738995?hash=item2142afcfb3