Skip to content

Conversation

@rovo89
Copy link

@rovo89 rovo89 commented Feb 9, 2025

The README mentions that five decimal digits can be parsed for coordinates. However, GPS RTK modules are built for even higher precision and therefore send eight decimal digits (tested with a UM980 module by Witmotion). This precision gets lost when using float/int_float32_t. Therefore, this PR introduces minmea_double with int_least64_t value and scale and uses them for coordinates. The easier way would be adjusting minmea_float, but I didn't want to add overhead to fields that don't need such precision and it would be strange to have a type with that name handled like a double.

Tests are adjusted, README not yet. I can do that if you show interest to actually merge this.

GPS RTK modules like Unicore UM9xx have a higher precision for latitude
and longitude.
@yahyayozo
Copy link

@rovo89 I think this would be very helpful, I got the same issue with precision when working with ZED-F9P module
Are you willing to continue with this PR?

@rovo89
Copy link
Author

rovo89 commented Nov 20, 2025

From technical point of view I think it's fine, so you can just use my fork. Of course I'd prefer to get this merged, and I'd adjust the README for that, but as long as there is no interest by the maintainers, I don't want to spend the time.

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

Successfully merging this pull request may close these issues.

3 participants