PX4 External Vision Aiding with Gazebo Dynamic Pose: Issue with Position Reset

I’m testing PX4 external vision aiding using the Gazebo Ignition simulator, where I extract the x500 model pose from the dynamic_pose message. I then convert the pose from ENU to NED coordinates. The position change in the NED frame is published at 50Hz to the /fmu/in/vehicle_visual_odometry message. I’ve experimented with both including and excluding the rotation quaternion in the message.

I’ve tested this setup with different EKF configurations:

  • EKF with GPS control (CTRL=7)
  • EKF without GPS control
  • EKF2_EV_CTRL set to values 1, 3, and 11

In all cases, the system works for a short period before the vehicle starts reappearing at its initial position, regardless of the configuration. I’ve also followed the PX4 documentation’s recommendation and used gzclock for simulation time synchronization.

I would appreciate any insights or suggestions for resolving this issue