The motor interference test (compassmot) would not start
What ArduPilot says:
- RC not calibrated
- Throttle not zero
- Compass disabled
- Not landed
- Check compass
Compassmot measures how much the motors' current disturbs the compass. Before it spins the motors it checks five things and names the first that fails: the compass is enabled (“Compass disabled”), every compass is delivering data (“Check compass”), the radio is calibrated (“RC not calibrated”), the throttle stick is at zero (“Throttle not zero”) and the copter is on the ground (“Not landed”).
What to do, most likely first
The throttle stick is not at the bottom.
FixPull the throttle all the way down and start the test again.
The radio calibration is missing or incomplete.
CheckA second message names the stick whose calibrated range is too small (
RC3_MIN,RC3_MAXfor the throttle).FixCalibrate the radio, then start the test again.
A compass has stopped sending data.
CheckIts values in the ground station are frozen or zero.
FixCheck the compass cable and reboot.
COMPASS_ENABLEis 0: the compass is switched off.FixWithout a compass there is nothing to measure. If you fly without one on purpose, leave this test out.
ArduPilot does not consider the copter landed.
FixPut the copter down, disarm, wait a few seconds and start the test again.
Parameters to look at
| Parameter | What it is |
|---|---|
COMPASS_ENABLE | Enable Compass |
RC3_MIN | RC min PWM |
RC3_MAX | RC max PWM |
Where to do it:Setup & Tuning Guide
The code that sends it
RC not calibrated
ArduCopter/compassmot.cpp Copter::mavlink_compassmot() · Open in ArduPilot Copter-4.7.1
Throttle not zero
ArduCopter/compassmot.cpp Copter::mavlink_compassmot() · Open in ArduPilot Copter-4.7.1
Compass disabled
ArduCopter/compassmot.cpp Copter::mavlink_compassmot() · Open in ArduPilot Copter-4.7.1
Not landed
ArduCopter/compassmot.cpp Copter::mavlink_compassmot() · Open in ArduPilot Copter-4.7.1
And 1 more messages, sent from the same places.