Is the UM982 an F9P killer for AOG?

Here is an alpha version of a UM982 parser. It handles Unicore Data Output commands where the sentence starts with “#”, ends with CRLF and uses CRC32 for error checking. It is based off of the NMEAParser by Glinnes which is used by AOG for parsing NMEA sentences. It operates the same way by adding handlers for the various sentences to obtain the parsed data. I have tested it with AGRIC and BESTNAVXYZ sentences.

The BESTNAVXYZ and BESTNAVXYZH sentences contain the ECEF coordinates for the Master and Slave antennas respectively. From those coordinates, the relative position NED vector can be calculated using standard coordinate translation formulas published by NOAA and other national geographic data bodies. This is the same data output by the U-blox F9P using the NAV-RELPOSNED setting. AOG uses the RELPOSNED packet to calculate roll from the dual antennas.

Haven’t had a chance to put it up on my Github yet. If you downloaded this prior to 11/17/23 there is a bug in the old version. Long sentences like AGRIC overflowed some buffers. This version fixes that issue. Still alpha software so caveat emptor. Added the crc32 calculator used by the parser.

UM982_Parser.h.zip (5.0 KB)

calc_crc32.h.zip (1.9 KB)