Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MavROS populates global_position/compass_hdg with ARHS heading instead of compass data #2018

Open
Ryanf55 opened this issue Jan 29, 2025 · 0 comments

Comments

@Ryanf55
Copy link

Ryanf55 commented Jan 29, 2025

The MAVRos global position plugin supports a channel called global_position/compass_hdg.
In the docs, it calls this Compass heading in degrees. and populates the heading into a std_msgs/msg/Float64

It populated the data from GLOBAL_POSITION_INT.hdg.

This is not a compass heading. This is the vehicle's AHRS heading.

Just reading the docs, I would expect the heading from the primary compass, in either true heading or magnetic heading.
This plugin publishes neither.

I believe this is misleading, and either the implementation should change, or the docs should change.

In the event the vehicle's EKF diverges but the compass sensor still works, now the ROS algorithm you thought was using compass sensor heading is actually using a diverged state estimate from what the sensor is reporting. This interface also does not populate the uncertainty of the value, so if the EKF variances are high there is no way to know whether to trust this value. Overall, I am not sure why this message exists.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant