VTOL Position Hold Instability – Suspected Compass Issue (BZGNSS BZ-251 + SpeedyBee F405 WING Mini)

Hi everyone,

I’m flying a tricopter VTOL (tiltrotor) on ArduPlane 4.6 using a SpeedyBee F405 WING Mini and a BZGNSS BZ-251 GPS module with built-in compass.

During hover in QLOITER or QHOVER, the drone drifts and doesn’t hold position. Yaw seems inconsistent, and I suspect a compass issue or interference.


  • My Setup:
  • Flight Controller: SpeedyBee F405 WING Mini (STM32F405)
  • GPS: BZGNSS BZ-251 (UBlox + integrated compass via I²C)
  • Firmware: ArduPlane 4.7.1
  • VTOL Type: Tricopter + tiltrotor
  • Q_FRAME_CLASS = 7, Q_TILT_TYPE = 1
  • Compass parameters:
COMPASS_ENABLE = 1
COMPASS_USE = 1
COMPASS_EXTERNAL = 1
COMPASS_ORIENT = 0

link of my logs : https://drive.google.com/file/d/1gbIEvmrO-SVQdlUNv3OwhJ6yhwwSSrGF/view?usp=sharing

  • What I’m Observing:
  • Drone does not hold position during hover

I’d really appreciate if anyone familiar with this GPS/compass combo or the F405 Wing Mini could help confirm if my compass is causing EKF divergence. Any suggestions for layout changes or interference reduction are welcome too!

Thanks!
— *Achraf


*