EKF2 External Vision withouth a GPS - what's wrong?


Hey, I am flying with an onboard vision system that estimates a UAV position according to the marker placed on the ground. The position is published to vision_pose_estimate plugin in marker frame RIGHT-FRONT-UP (ENU but the marker is not aligned with magnetic north).
My EKF2_AID_MASK is set to 1: use optical flow, 3: vision position fusion, 4: vision yaw fusion and it generally works but sometimes it rejects EKF2 yaw estimate or circles around set position.

The question is:

  1. Should I use 6: rotate external vision in EKF2_AID_MASK?
  2. Which EKF2_MAG_TYPE is for me? I have tried 4: MC custom and 5: None but I don’t understand what’s the difference. I know that it’s used in these lines: https://github.com/PX4/ecl/blob/1378ec179717448404c74819871d149217350b19/EKF/ekf_helper.cpp#L609-L616
  3. I want to fly without a mag sensor enabled but I don’t think it’s currently possible in EKF2 (it worked in LPE), is it?

@mhkabir can you help me?