I am attempting to hold position indoors using a motion capture system. Following this thread, I can send VISION_POSITION_ESTIMATE and ATT_POS_MOCAP mavlink messages containing localization information to the flight controller (pixhawk 2.1, firmware compiled from master a few weeks ago). The messages appear to be properly received and processed, as per this recent update.
However, flight in position hold mode is unreliable. Inspecting the flight logs shows that the EKF’s position estimate generally follows the given location, but not very closely. The difference is especially notable in yaw.
Is there any way to get the EKF to “trust” the localization messages more, especially with respect to yaw? Has anyone else had success using these message types for position control?