Extended GNSS API

I can only find reference to outputting lat/long from the API query - any methods to get more GNSS stats (or even NMEA?) like PDOP, no. of sats etc.?

Hey zedslarr

We are literally expanding this at the moment.

I'll see if Brett can post the updated information here for your feedback - should be a few days to get it out!

Thanks

Nick.

Hi @zedstarr !

Yes, I'm currently working on expanding the GNSS data object to include the following data. Please note it might change a bit in it's final form.

typedef struct
{
    uint64_t last_lock_time_ms;  // Time in milliseconds from the last latitude/longitude update or fixmode/gpssta change
    char svnum;                  // Number of visible GPS satellites
    char beidou_svnum;           // Number of visible BeiDou satellites
    nmea_satellitemsg slmsg[12]; // Up to 12 GPS satellites
    beidou_nmea_satellitemsg beidou_slmsg[12]; // Tentatively up to 12 BeiDou satellites
    nmea_utc_time utc;           // UTC time
    double latitude;             // Latitude
    char nshemi;                 // Hemisphere (North/South): 'N' = North, 'S' = South
    double longitude;            // Longitude
    char ewhemi;                 // Hemisphere (East/West): 'E' = East, 'W' = West
    char gpssta;                 // GPS status: 0 = No fix; 1 = Non-differential fix; 2 = Differential fix; 6 = Estimated
    char posslnum;               // Number of GPS satellites used for positioning (0–12)
    char possl[12];              // Satellite IDs used for positioning
    char fixmode;                // Fix type: 1 = No fix; 2 = 2D fix; 3 = 3D fix
    int pdop;                    // Position dilution of precision (PDOP), 0–500 (represents 0.0–50.0)
    int hdop;                    // Horizontal dilution of precision (HDOP), 0–500 (represents 0.0–50.0)
    int vdop;                    // Vertical dilution of precision (VDOP), 0–500 (represents 0.0–50.0)
    int altitude;                // Altitude, scaled up by 10 — divide by 10 for actual value in 0.1 meters
    int speed;                   // Ground speed, scaled up by 1000 — divide by 10 for actual value in 0.001 km/h
} GnssData;
1 Like

Looks like that's just supporting GPS/Beidou right now but I notice from the datasheet the QCM6490 device supports GPS, GLONASS, NavIC, BeiDou, Galileo, QZSS, and SBAS - really interested in GPS/GLONASS/Galileo/Beidou support, will tthat be included?

Hi zedstarr,

We'll check - baidou and GPS are in the structure, but it's unclear if the other services use those structures as well (or something else). Thanks!

A post was merged into an existing topic: PCIe HAT questions

Sorry, I don't understand the link to the PCI HAT topic???

The PCIe HAT answer was accidentally posted into this this topic instead of the PCIe topic and I moved it. It doesn't have anything to do with GNSS.

Sorry if that was my bad... too many tabs... :blush:

Hi @zedstarr ! These new GNSS features are available now: