ubx: diff corrections age, fix quality, agc, antenna status and power#200
ubx: diff corrections age, fix quality, agc, antenna status and power#200dakejahl wants to merge 2 commits into
Conversation
|
I don't know how many GPS boards implement the antenna sensing. We probably don't want a system error by default. |
I just checked the interface description for M9/F9/F10/M10/X20 and they all support UBX-MON-RF with
It's already in the SensorGps.msg, we may as well populate it |
|
Hi @dakejahl , these features are exactly what we needed. Thank you for the adaptation! This is some test data based on the CUAV positioning module—hope it proves helpful. None of the modules tested have implemented antenna sensing functionality, so the value of antStatus remains either 1 (INIT) or 2 (OK). |
|
@cuav-chen2 thanks for testing. I will work on this again, we should get it in. I'd like to also get in the DroneCAN DSDL message to support gnss quality reporting over CAN. I think you already found the PX4 PR? |
Deriving fix_quality from fix_type is circular (consumers can already do this themselves). u-blox provides no 0-10 quality metric aligned with MAVLink GNSS_INTEGRITY, so leave the field unpopulated.
Yes, we will test DroneCAN messages as well, and will provide the test data later. @dakejahl |




Summary
Surface additional u-blox receiver state via
sensor_gps:diff_age— differential correction age in seconds, fromUBX-NAV-PVT.flags3.lastCorrectionAgevia a lookup table (binned 0-12 → 0-120 s).automatic_gain_control— fromUBX-MON-RF.agcCnt(0-8191, % of max gain).antenna_status,antenna_power— fromUBX-MON-RF.antStatus/antPower.SYSTEM_ERROR_ANTENNA— set whenantStatusreports SHORT or OPEN, cleared otherwise.Also extends
ubx_payload_rx_nav_pvt_t(addsflags3,magDec,magAcc) to match the ubx8+ spec and makeflags3addressable.Not populated
Abstract quality metrics (
corrections_quality,system_status_summary,gnss_signal_quality,post_processing_qualityonsensor_gnss_status) are left at 255 — u-blox has no 0-10 metric equivalent to Septentrio'sQualityInd. Synthesizing fromfix_typewould be circular.Related
Qualitymessage: gnss.quality dronecan/DSDL#77