APM 2.8 - Motors arm only momentarily


Problem: Motors arm for only about a second, then they dis-arm.

Background: Motors were spinning up to almost take-off speed upon arming, so I reduced MOT_SPIN_ARMED from value 70 to value 30, wrote the new parameters, refreshed the upload to the F.C., then attempted to arm the copter. The copter would arm, but only for about a second, then it would dis-arm. The motors gave a little “stutter” while it was armed, then stopped. Moving the throttle to mid-point (and beyond) had no effect on the motor (Radio Cal was accomplished prior to arming attempt).

Any ideas?

Copter: 550 Hex
FC: APM 2.8
TX/RX: Turnigy 9x/Turnigy 9XBC V2
Firmware: A.C. 3.2.1
Props: 9" Nylon
Motors: Turnigy Propdrive 28 26-28
ESC: Turnigy Plush 30A
Battery: Turnigy 5000 mAH 30-40C 4S Li-Po
Compass: Ublox Neo 6-NM on a 6" pole


I would recommend you to reinstall firmware. But don’t do it directly. First of all, install the Rover one, but the 3.2.1v, considering that you’re using APM yet.
After that, the same version for Hexa (3.2.1v) Don’t upgrade the version, because APM doesn’t manage a higher version.

I suggest you this, because could be tons of things to check out, and sometimes is better to take this way.
After reinstalling the new firmware, take the cable away, hold on for a couple of seconds, and put it back. Wait until MP assigns you a port, and Connect.
If possible, don’t do the Wizard. Just follow the same steps to setup the frame and save the parameters, the accelerometers, the compass, radio, flight modes and FS.
After this, calibrate your ESCs with radio and MP, and connect it back to MP. While connected, to MP or Tower (in order to check out the message that you receive while trying to arm), go to an armable flight mode, and try to arm.

Good luck!



Thank you for the suggestion (and the nice instructions as to how to go about doing this task!). Actually I was thinking about doing this very thing just today but, beeing a noobie, I’m hesitant to just dive in and start making changes to the hardware without knowing for sure what I am doing.

Would pressing the “Re-set” button on top of the flight controller do the same thing (i.e., clear out the EEPROM memory, then re-loading the ArduCopter firmware) as would loading a different vehicle platform’s data to the EEPROM? Or does “re-set” simply re-set the already-on-board parameters back to some previously-installed version of ArduCopter?


That would be absolutely a negative. Pressing the reset button is akin to pressing the reset button on your computer. It terminates all currently running processes and initiates the boot process.

However, there is a much simpler way of reverting the eeprom to defaults than the process mentioned.
instead of flashing rover, booting, then flashing hex, simply flash hex using mission planner. after it boots, reconnect using mission planner, click config/tuning, then click ‘Planner’, near the bottom check that Layout is set to ‘advanced’, if it is not then change it, and click config/tuning again to refresh the display.

Click on ‘Full parameter list’ or ‘Full parameter tree’.

*IF you want to see what, if anything, was changed, click on ‘save to file’ on the far right, give it an obvious filename, click save and add an obvious comment to the frame description that identifies this as a possibly bad set of values. ( Something like ‘Hex settings before reverting to defaults’ )

Scroll down to SYSID_SW_MREV. Click on the number in the column labeled value, press 0 (number zero) then press enter. The value cell should highlight with a green background, letting you know that you have changed it, and that what you entered is valid. Now click on ‘write params’ on the right side below save to file.
The green background should now go back to clear.
Now reboot your board, you can either unplug for a moment and plug it back in, or you can go to flight data, and on the actions tab choose ‘preflight_reboot_shutdown’ from the first dropdown and click ‘do action’.

The board will play some different tones during the reboot to let you know that it’s reset the eeprom values.

You should now continue with doing the initial setup of your copter, either by using the wizard or manually following the instructions above. personally I would recommend using the wizard, there are a few things it does that can be rather difficult to figure out how to do, particularly for a new user to ardupilot.

I would like to elaborate a bit on one step you absolutely should do unless you are using dji esc’s(or know absolutely that the esc’s can’t be calibrated), The process should be done after all the items on the following list have been completed.

  1. set frame type
  2. radio calibration
  3. If your copter does not have a safety switch, check the parameter list for BRD_SAFETYENABLE and if present, set it to 0 to disable it. (If that parameter doesn’t exist, then ignore any further instructions relating specifically to the safety switch.)

If you are in the wizard, you can hit the x to close it(you can get back to where you were in it by clicking next without doing what is shown on each page). You will need to have your controller, copter, and a battery, charge state isn’t critical aside from it not being fully discharged.

  1. remove all props, disconnect apm from your computer, disconnect the battery, and turn ON your controller.
  2. move the throttle stick to 100%
  3. connect the battery to your copter, the light sequence will look normal at first, but should go to a red/blue flashing after a few tones are played.
  4. Once the tones stop and the led is blinking red/blue, disconnect the battery from your copter.
  5. Throttle stick should still be at 100%! If you touched it, go back to step 1 and start over…
  6. reconnect the battery to your copter, *If you have a safety switch, immediately hold it down to enable the motors.
  7. The exact details here can vary, but you should initially get the arm tone from your motors, followed by at least one more tone ( some esc’s will play the arm tone, then wait for 3-5 seconds before playing a different tone, others will move directly into the calibration. cheap chinese ones will beep once, then twice, then three times, with a few seconds between each set)
  8. after the tone plays, move the throttle stick down to 0%, you should immediately hear some kind of feedback tone from the motors, followed by the normal armed done.
  9. Assuming that your copter HAS NO PROPS ON IT, hold onto it and give the throttle stick a small burp, the motors should all spin up and rotate in proportion to the throttle position.
  10. once you have checked that they spin up, set the throttle stick back at 0% and unplug the battery.
  11. you can now proceed with the wizard, or manual setup.

*To check if any values were out of whack, AFTER you have finished all of the setup steps, go back to the fill parameter list, click refresh params, then click compare params and select the previously saved file. It will then present you with a list of what parameters are different from when you saved the file. You should cancel out of this box after reviewing it, or if desired you can accept or refuse individual differences by turning the check boxes on/off. any line with the box checked, will get adjusted when you click accept, and any line with the box NOT checked will simply get discarded.
If you accept any of the values, you will have to click ‘write params’ to save them to your copter.

Next step would be to reconnect the battery and your computer (either via usb or using a telemetry radio) and try to arm it(without any props) and check the ‘flight data’ screen for any error message.

Hopefully this has been thorough enough to get you fixed up.


Thanks for the very well-written respone/instructions! There is a lot in there for me to learn!

I had already tried doing an all-at-once ESC calibration, such as the one you described, and everything appeared to have worked fine up until I got to the part where one moves the throttle stick to the 0% position. As I understand the instructions, I should have heard a “beep” from the ESCs, which would have confirmed that they had captured the pwm value for the lowest setting of the throttle.

I did not hear any such “beep”, nor could I get the motors to start when I advanced the throttle stick forward (I moved it past the 50% area of it’s travel).

When I then got back to looking at the Ch3 IN and Ch3 OUT data on Mission Planner’s tuning screen, I see the Ch3 IN trace move correctly as I move the throttle up and down, but the CH3 OUT trace doesn’t even flinch. When I add in Ch1, Ch2, Ch4, and CH5 (IN and OUT) they all move properly, too, with the OUT traces following right along with their respective IN traces.

What this makes me think is that there is either
(1) Something wrong within the APM unit itself, or
(2) Something wrong within the battery - PDB - ESC wiring circuit.

I can check the wiring circuit with a DVM. If there is a major problem in that circuit it could affect all the motors at the same time (something like a broken wire, perhaps a cracked conductor in the frame plate which supplies the battery voltage to the ESCs, etc.)

What I don’t know is how to check for there being a problem in the APM itself. Is there a way I can take measurements at the Ch3 output pins on the flight computer with a DVM? I’ve never worked with electronics where I am dealing with pwm signals and have only a DVM to work with.

Thanks for any help you can provide… I’m totally stumped at this point, and I can’t afford to shell out more moolah for another flight computer - especially if there is a way I can get this one to work.


Well, at the moment the thoughts are numerous but what stands out is first it sounds like your not actually in the esc calibration mode. I don’t suppose you might install teamviewer on your computer so I could take a look at it live? something else that could be helpful if you have an iphone would be facetime, so you could show me exactly what you are doing step by step and I can let you know if I see a problem there. either way I think that apm is likely just fine, and it’s likely a misunderstanding somewhere along the way.
Let me know if that’s a possibility, and what day/times you would be available for that. I’m fairly open on schedule.



I’m bailing out on the use of any more APM flight controllers. I’ve had three of them and not one has worked properly. I’m looking at going Pixhawk for this hex - maybe I’ll have better luck.