Some motor spins at 0% throttle

I’ve successfully calibrated the ESCs manually and done RC Calibration using mission planner. So the motor armed successfully but 3 motors spins at 2-5% throttle estimate at 0% throttle given. Also when I increase the throttle at 5% all the motors spins and it gets faster and faster. The throttle works perfect when connected directly (ESC to Rx). I have also set mot_spin_armed to 0.

Octocopter (+)
RaspberryPI B+

what motors and esc combo are you using ?

Did you attempt calibration more than once and get the same result? Or was this your 1st attempt? Try a second run at calibration and see if the results are the same. This will rule out human error.

Some controllers (9xr for instance) have an internal calibration that must be completed before any calibrations in mission planner and ardupilot. Might this be the case?

I calibrated everything and the problem was resolved but at 10% steady throttle the motor spin gets faster and faster is this normal? I’m using Tmotor U3 700Kv and 40A AIR ESC

I’m using Tmotor U3 700Kv and 40A AIR ESC

They should be spinning at a constant rate if no throttle input is being applied.

The increase in rpm is constant? As in if you left them alone they would eventually spin up to 100% throttle?

It was working properly during my first test it lifted the UAV at 40% throttle. What’s so weird is that during the second attempt at 10% throttle the motor spins faster and faster and it lifted the UAV.

That is very odd.

Are you sure your taking off in stabilize mode? Not an auto mode like position hold, or altitude hold?

How are your vibration levels? I would get consistent upward movement during flight before I balanced props, vibe isolated ap, etc…

Also can you send a picture so I can see if anything stands out as a possible issue?

You should not let your copter sit on the ground with throttle applied for a longer period of time.
As soon as you raise the throttle all flight stabilisation calculations are running. No sensor is ever 100% precise, so there will be inconsistencies in the sensor readings. Then there is the “I” part of the PID controllers used to stabilize the copter. The “I” part integrates (adds up) the meassured errors (Difference between stick input and copter attitude for example) over time until it reaches its given max value. On the ground the copter has no way to correct its attitude, so if the “I” part tells the copter to rotate in a direction, it can not do this (at first). The “I” part gets bigger until it is big enough to push your copter over. I guess this it what you are seeing.


to me it seems like you have a considerable thrust to weight ratio and the behaviour is normal. My coper does the same but it does not lift up. My throttle also increases gradually without any further input from RC. only way to find out is take off propellers and check motor responsiveness up to full throttle. Also analyze logs is very important its hard to tell just by verbal description


Sebastian you nailed it… its part of the integrative algorithm. I totally agree.


This is one part of the truth. The other is that there should be at least two PIDs. One for the current error in attitude and one which takes the output of the first PID and the current rotational change from the gyrometer. When the copter is not moving, the response of the second PID will be higher because the copter wasn’t doing anythng even if kindly asked to do so. Consequently, the final answer to change the current state has to be higher… This is desired in flight, but bad while on the ground at low thrust conditions :smiley:
I am not sure whether this can by influenced be certain parameters in AP.

1 Like