Allow setting position estimate mavlink map
https://github.com/user-attachments/assets/808d2b0d-de4f-4688-801d-0aa8c2dacdad
Despite implemented, this feature is not working yet, as it needs support for the MAV_CMD_EXTERNAL_POSITION_ESTIMATE command on mavlink2rest. @patrickelectric is working on a new version with support for it.
I removed the await in the save button for the screen recording, but in reality it will be in a loading state for 5 seconds and then gently fail (because of the lack of support on m2r).
Fix #2160
Converted to draft as I believe what I implemented was actually #1102, which allows setting the global origin.
The autopilot needs a global origin set for it to ingest position estimates.
I know ArduPilot firmware sets the origin automatically when it receives GPS input, if it hasn't been set already (e.g. using parameters, or directly using a relevant MAVLink message. Maybe that applies to any time it first receives a position estimate?
Either way, position estimates are supposed to correct the autopilot's current estimate of its position - either indirectly (as a measurement), or directly (forcibly replacing the current estimate with the newly specified one). That functionality is needed on top of the ability to set the origin (e.g. so a user with relative positioning sensors (DVL / visual odometry / ...) and no absolute reference (GNSS / GPS / ...) can provide corrections based on landmarks).