It seems that for some reason the compass offset learning is not initiated. There is no events/messages on the log or on the GCS regarding compass offset learning. I saw following mentions on github, but I’m not sure about these.
…
Compass::use_for_yaw(uint8_t i) const
{
// when we are doing in-flight compass learning the state
// estimator must not use the compass. The learning code turns off
// inflight learning when it has converged
return _state[i].use_for_yaw && _learn.get() != LEARN_INFLIGHT;
}
… GitHub
i did not get to test it yet - the new switch option 62 to initiate this learning - does it require for compass_learn to be set to 3, prior for it to be used, or is it enough just to set option 62 on a switch for an initiation of this procedure?
Yes, COMPASS_LEARN = 2 should work. I’m not aware of any logging done from this feature. All that might appear is a PARM message when the offsets are saved after the vehicle is disarmed. But that might not be recorded in the logs unless LOG_DISARMED = 1.