Validate RTCM from UDP before forwarding#14379
Conversation
* Add related tests * Expose validation through settings but not in UI because most people will want RTCM validation on Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
Codecov Report❌ Patch coverage is ❌ Your patch check has failed because the patch coverage (4.87%) is below the target coverage (30.00%). You can increase the patch coverage or adjust the target coverage. Additional details and impacted files@@ Coverage Diff @@
## master #14379 +/- ##
=========================================
Coverage ? 25.34%
=========================================
Files ? 769
Lines ? 65948
Branches ? 30515
=========================================
Hits ? 16714
Misses ? 37448
Partials ? 11786
Flags with carried forward coverage won't be shown. Click here to find out more.
Continue to review full report in Codecov by Sentry.
🚀 New features to boost your workflow:
|
Build ResultsPlatform Status
Some builds failed. Pre-commit
Pre-commit hooks: 4 passed, 45 failed, 7 skipped. Test Resultslinux-coverage: 90 passed, 0 skipped Code Coverage
Artifact Sizes
Updated: 2026-05-15 00:18:37 UTC • Triggered by: Android |
Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
ae8274a to
43ea3d7
Compare
Description
The new UDP input option for RTCM data currently takes raw datagrams and sends them raw via MAVLink to the drone.
The NTRIP caster currently validates incoming RTCM data as RTCM. Now, we reuse the RTCM parser to optionally validate the incoming UDP stream. I enable validation by default.
Along the way, I added some more tests after having claude compare implementations between this and PX4.
Claude found no issues with either RTCM parser implementation.
Type of Change
Testing
Tested on FreeFly AltaX with validation enabled and disabled to make sure both still work.
Platforms Tested
Flight Stacks Tested
Screenshots
Here are the debug log messages with validation enabled:

And with validation disabled

Both result in RTK fix.
Checklist
Related Issues
By submitting this pull request, I confirm that my contribution is made under the terms of the project's dual license (Apache 2.0 and GPL v3).