summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHoss Zhou <zhouh@codeaurora.org>2020-10-23 12:48:00 +0800
committerHoss Zhou <zhouh@codeaurora.org>2020-10-23 12:53:27 +0800
commite935d57c2c17c6bb2c912df2a5e6f956c747eb87 (patch)
tree22ba9888fdb0c1224da4b2ff12a4aa315597147e
parent76274627d126d46413f4068e9616b3c87db49edc (diff)
B1C support in nmea
Change-Id: Ib766a37117fa47953b1ee446cc81f902a1bd69b0 CRs-Fixed: 2656131
-rw-r--r--utils/loc_nmea.cpp20
1 files changed, 17 insertions, 3 deletions
diff --git a/utils/loc_nmea.cpp b/utils/loc_nmea.cpp
index 5484b15..8ca24ef 100644
--- a/utils/loc_nmea.cpp
+++ b/utils/loc_nmea.cpp
@@ -141,7 +141,8 @@ typedef struct loc_sv_cache_info_s
uint32_t qzss_l1_count;
uint32_t qzss_l2_count;
uint32_t qzss_l5_count;
- uint32_t bds_b1_count;
+ uint32_t bds_b1i_count;
+ uint32_t bds_b1c_count;
uint32_t bds_b2_count;
uint32_t navic_l5_count;
float hdop;
@@ -487,7 +488,10 @@ static loc_nmea_sv_meta* loc_nmea_sv_meta_init(loc_nmea_sv_meta& sv_meta,
sv_meta.systemId = SYSTEM_ID_BDS;
switch (signalType) {
case GNSS_SIGNAL_BEIDOU_B1I:
- sv_meta.svCount = sv_cache_info.bds_b1_count;
+ sv_meta.svCount = sv_cache_info.bds_b1i_count;
+ break;
+ case GNSS_SIGNAL_BEIDOU_B1C:
+ sv_meta.svCount = sv_cache_info.bds_b1c_count;
break;
case GNSS_SIGNAL_BEIDOU_B2AI:
sv_meta.svCount = sv_cache_info.bds_b2_count;
@@ -2175,10 +2179,12 @@ void loc_nmea_generate_sv(const GnssSvNotification &svNotify,
if ((GNSS_SIGNAL_BEIDOU_B2AI == svNotify.gnssSvs[svOffset].gnssSignalTypeMask) ||
(GNSS_SIGNAL_BEIDOU_B2AQ == svNotify.gnssSvs[svOffset].gnssSignalTypeMask)) {
sv_cache_info.bds_b2_count++;
+ } else if (GNSS_SIGNAL_BEIDOU_B1C == svNotify.gnssSvs[svOffset].gnssSignalTypeMask) {
+ sv_cache_info.bds_b1c_count++;
} else {
// GNSS_SIGNAL_BEIDOU_B1I or default
// If no signal type in report, it means default B1I
- sv_cache_info.bds_b1_count++;
+ sv_cache_info.bds_b1i_count++;
}
}
else if (GNSS_SV_TYPE_NAVIC == svNotify.gnssSvs[svOffset].type)
@@ -2291,6 +2297,14 @@ void loc_nmea_generate_sv(const GnssSvNotification &svNotify,
GNSS_SIGNAL_BEIDOU_B1I, false), nmeaArraystr);
// -----------------------------
+ // ------$GBGSV (BEIDOU:B1C)----
+ // -----------------------------
+
+ loc_nmea_generate_GSV(svNotify, sentence, sizeof(sentence),
+ loc_nmea_sv_meta_init(sv_meta, sv_cache_info, GNSS_SV_TYPE_BEIDOU,
+ GNSS_SIGNAL_BEIDOU_B1C, false), nmeaArraystr);
+
+ // -----------------------------
// ------$GBGSV (BEIDOU:B2AI)---
// -----------------------------