A FW hand launch using EKF3 without a compass and with the following parameter changes to enable non-compass use does not start the EKF-GSF yaw estimator until the isFlying flag is set to true which is after the launch acceleration. Lack of launch acceleration means the EKF-GSF is slow to learn the heading and vulnerable to GPS errors.
Additionally, if there are significant yaw gyro bias errors present, then the EKF-GSF yaw estimator can be affected as it does not use the main nav EKF's learned bias values.
Issue details
A FW hand launch using EKF3 without a compass and with the following parameter changes to enable non-compass use does not start the EKF-GSF yaw estimator until the isFlying flag is set to true which is after the launch acceleration. Lack of launch acceleration means the EKF-GSF is slow to learn the heading and vulnerable to GPS errors.
Additionally, if there are significant yaw gyro bias errors present, then the EKF-GSF yaw estimator can be affected as it does not use the main nav EKF's learned bias values.
EK3_MAG_CAL = 7 COMPASS_ENABLE = 0 COMPASS_USE = 0 COMPASS_USE2 = 0 COMPASS_USE3 = 0
Version Master at 07ad479
Platform Plane
Airframe type SITL NanoGoblin
Hardware type MatekF765-Wing
Logs Here are the console messages from a SITL test showing the delayed yaw alignment:
2020-06-22 17:17:27 ArduPlane V4.1.0dev (07ad4798) 2020-06-22 17:17:27 842f139c1c526d45bafd9f12e8b4c5f0 2020-06-22 17:17:27 Param space used: 581/3840 2020-06-22 17:17:27 RC Protocol: SITL 2020-06-22 17:17:27 New mission 2020-06-22 17:17:27 New rally 2020-06-22 17:17:27 GPS 1: detected as u-blox at 230400 baud 2020-06-22 17:17:32 Armed AUTO, xaccel = 19.4 m/s/s, waiting 0.2 sec 2020-06-22 17:17:33 Triggered AUTO. GPS speed = 0.0 2020-06-22 17:17:33 Takeoff to 30m at 100.0m to 1.0 deg 2020-06-22 17:17:42 EKF3 IMU0 yaw aligned using GPS 2020-06-22 17:17:42 EKF3 IMU0 is using GPS
SITL was started using "sim_vehicle.py --frame plane-throw --console --map -L CMAC_PILOTSBOX" and launched using RC 7 2000 to trigger the throw.
I have fixes in place for this which are undergoing flight testing.