Repository navigation
Conversation
MSP_GPSSVINFO has been a stub since 2016. Since 8.0 the u-blox driver keeps the satellites again, for the gpssats CLI command and the OSD, so send them in Betaflight's layout: GNSS id, satellite id, quality with "used" in bit 3, and C/N0. Betaflight tells this layout from its older per-channel one by a count above 16, so a shorter list is padded the way Betaflight pads its own. NAV-SAT (M8) now keeps svUsed in sigFlags, as NAV-SIG does.
A NAV-SIG with no signals left the table as it was, so a receiver that lost every satellite kept reporting the last ones, used flags included, to the CLI, to the OSD's GPS extra stats and to MSP_GPSSVINFO. NAV-SAT already cleared it.
|
ⓘ Qodo reviews are paused because the subscription is no longer active. Ask your workspace admin to reactivate the subscription to resume reviews. Manage billing |
PR Summary by QodoReport u-blox satellites through Betaflight-compatible MSP_GPSSVINFO
AI Description
Diagram
High-Level Assessment
Files changed (6)
|
Code Review by Qodo🐞 Bugs (0) 📘 Rule violations (0) 📎 Requirement gaps (0)
Great, no issues found!Qodo reviewed your code and found no material issues that require reviewTip of the day💡 Did you know, you can keep summaries lean with Findings visible per group, which tucks the rest behind a View link |
|
RAM / Flash usage vs. base commit
See RAM/flash optimization guide for techniques to reduce usage. |
|
Test firmware build ready — commit Download firmware for PR #12091 251 targets built. Find your board's
|
|
Tested today on a real NEO-F10N (SPGL1L5 6.00) on a TBS Lucid H7 Wing, this branch merged on the current maintenance-10.x, with a 3D fix on 10 satellites, reading MSP_GPSSVINFO from the host and The reply held 30 entries, every one with a satellite id, 14 to 16 of them flagged used against the 10 satellites of MSP_RAW_GPS: the list is per signal, so a satellite tracked on L1 C/A and L5 comes twice, which is what the Configurator side (#2819) folds into one row. The quality byte matched NAV-SIG as An M10 (SAM-M10Q) on a Holybro Kakute H7 Mini, indoors without a fix and tracking nothing: the reply holds 17 padding entries (GNSS id 0xFF, satellite id 0), the count above 16 that tells Betaflight's tools the new layout apart, and |
MSP_GPSSVINFOhas been a stub in INAV: one channel holding the HDOP. The u-blox driver already keeps the satellites the receiver reports, from NAV-SIG or from NAV-SAT converted, for thegpssatsCLI command and the OSD; this sends them, in the layout Betaflight uses for the same message, so one decoder reads both.The Configurator's GPS tab shows them in iNavFlight/inav-configurator#2819.
What changes
MSP: report the u-blox satellites in MSP_GPSSVINFO, as Betaflight doesgpssatsshows that bit for those receivers too.docs/development/msp/msp_messages.jsondescribes the new reply and README.md is regenerated withsrc/utils/gen_msp_md.py. The doc version goes to 2.1.2, which I read as a content change inside the current schema; if the changed reply counts as a compatibility change, it is a minor bump instead. GPS: report what the receiver actually has, and allow NavIC where it exists #11979 takes the version to 2.2.0, so whichever of the two merges second needs the number adjusted.gps_ublox: clear the satellite table when NAV-SIG reports no signalgpssats, to the OSD's GPS extra stats element, and now to the reply above. NAV-SAT already cleared it.Tested
src/test/unit/gps_ublox_unittest.cc: the NAV-SAT "used" flag becomes the pseudorange-used bit, and nothing else does.MSP_GPSSVINFOandMSP_RAW_GPSevery 2 s:gpssatssignal by signal; a SAM-M10Q on a Holybro Kakute H7 Mini indoors with nothing tracked, 17 padding entries.Test merges against the open PRs: the only conflict is the doc version with #11979.