diff --git a/ground/src/plugins/gpsdisplay/nmeaparser.cpp b/ground/src/plugins/gpsdisplay/nmeaparser.cpp index 1ec1cfe86..2fce3f32c 100644 --- a/ground/src/plugins/gpsdisplay/nmeaparser.cpp +++ b/ground/src/plugins/gpsdisplay/nmeaparser.cpp @@ -235,6 +235,13 @@ uint8_t NMEAParser::nmeaProcess(cBuffer* rxBuffer) // report packet type foundpacket = NMEA_GPRMC; } + else if(!strncmp(NmeaPacket, "GPGSV", 5)) + { + // Process packet of this type + nmeaProcessGPGSV(NmeaPacket); + // rerpot packet type + foundpacket = NMEA_GPGSV; + } } else if(rxBuffer->datalength >= rxBuffer->size) { @@ -245,6 +252,15 @@ uint8_t NMEAParser::nmeaProcess(cBuffer* rxBuffer) return foundpacket; } +/** + * Processes NMEA GSV sentences (satellites in view) + * \param[in] Buffer for parsed nmea GSV sentence + */ +void NMEAParser::nmeaProcessGPGSV(char *packet) +{ + +} + /** * Prosesses NMEA GPGGA sentences * \param[in] Buffer for parsed nmea GPGGA sentence diff --git a/ground/src/plugins/gpsdisplay/nmeaparser.h b/ground/src/plugins/gpsdisplay/nmeaparser.h index ec607836d..5ee65cdc3 100644 --- a/ground/src/plugins/gpsdisplay/nmeaparser.h +++ b/ground/src/plugins/gpsdisplay/nmeaparser.h @@ -68,6 +68,7 @@ public: void nmeaProcessGPRMC(char* packet); void nmeaProcessGPVTG(char* packet); void nmeaProcessGPGSA(char* packet); + void nmeaProcessGPGSV(char* packet); GpsData_t GpsData; cBuffer gpsRxBuffer; char gpsRxData[512];