diff options
-rw-r--r-- | driver_nmea0183.c | 2 | ||||
-rw-r--r-- | packet.c | 5 | ||||
-rw-r--r-- | test/daemon/beidou-bd.log (renamed from test/daemon/beidou.log) | 0 | ||||
-rw-r--r-- | test/daemon/beidou-bd.log.chk (renamed from test/daemon/beidou.log.chk) | 0 | ||||
-rw-r--r-- | test/daemon/beidou-gb.log | 77 | ||||
-rw-r--r-- | www/NMEA.txt | 1 |
6 files changed, 84 insertions, 1 deletions
diff --git a/driver_nmea0183.c b/driver_nmea0183.c index 7513d262..93dd8c39 100644 --- a/driver_nmea0183.c +++ b/driver_nmea0183.c @@ -493,6 +493,8 @@ static int nmeaid_to_prn(char *talker, int satnum) /* map Beidou IDs */ if (talker[0] == 'B' && talker[1] == 'D') satnum += 200; + else if (talker[0] == 'G' && talker[1] == 'B') + satnum += 200; /* GLONASS reports don't seem to do this, but better safe than sorry */ if (talker[0] == 'G' && (talker[1] == 'L' || talker[1] == 'N')) satnum += 37; @@ -95,6 +95,7 @@ PERMISSIONS * $GL -- GLONASS, according to IEIC 61162-1 * $GN -- Mixed GPS and GLONASS data, according to IEIC 61162-1 * $BD -- Beidou + * $GB -- Beidou * $QZ -- QZSS GPS augmentation system * $II -- Integrated Instrumentation (Raytheon's SeaTalk system). * $IN -- Integrated Navigation (Garmin uses this). @@ -386,8 +387,10 @@ static bool nextstate(struct gps_lexer_t *lexer, unsigned char c) /* * $GP == GPS, $GL = GLONASS only, $GN = mixed GPS and GLONASS, * according to NMEA (IEIC 61162-1) DRAFT 02/06/2009. + * We have a log from China with a Beidou device using $GB + * rather than $BD. */ - if (c == 'P' || c == 'N' || c == 'L') + if (c == 'B' || c == 'P' || c == 'N' || c == 'L') lexer->state = NMEA_LEADER_END; else (void) character_pushback(lexer, GROUND_STATE); diff --git a/test/daemon/beidou.log b/test/daemon/beidou-bd.log index 6138a9dc..6138a9dc 100644 --- a/test/daemon/beidou.log +++ b/test/daemon/beidou-bd.log diff --git a/test/daemon/beidou.log.chk b/test/daemon/beidou-bd.log.chk index 864ab16e..864ab16e 100644 --- a/test/daemon/beidou.log.chk +++ b/test/daemon/beidou-bd.log.chk diff --git a/test/daemon/beidou-gb.log b/test/daemon/beidou-gb.log new file mode 100644 index 00000000..69f8e848 --- /dev/null +++ b/test/daemon/beidou-gb.log @@ -0,0 +1,77 @@ +# Name: Unknown +# Chipset = Unknown +# Date = 2015-03-02 +# Submitter = Eli Huang <eli.huang.cn@gmail.com> +# Notes: Contains Beidou and GLONASS sentences; Beidou sentences have the +# alternate GB talker ID rather than BD. Use this to test that +# Beidou NMEA IDs with GB are being mapped properly and that +# Beidou GSV sentences are properly integrated into a combined +# skyview. +$PSRFEPE,053229.438,V,,,,,*23
+$GPGGA,053229.438,,,,,0,00,,,M,0.0,M,,0000*56
+$GNGNS,053229.438,,,,,NNNN,00,,,0.0,,0000*63
+$GNGSA,A,1,,,,,,,,,,,,,,,*00
+$GPGSV,6,1,21,05,00,000,27,06,00,000,24,07,00,000,24,11,00,000,22*7C
+$GPGSV,6,2,21,12,00,000,50,14,57,107,48,16,00,000,22,18,55,190,50*76
+$GPGSV,6,3,21,21,00,000,23,22,57,198,50,24,15,335,42,25,00,000,22*7C
+$GPGSV,6,4,21,26,00,000,24,28,00,000,22,31,58,140,35,27,56,093,*70
+$GPGSV,6,5,21,09,44,071,,15,24,255,,04,18,332,,17,15,022,*7B
+$GPGSV,6,6,21,23,05,259,*40
+$GBGSV,2,1,05,201,00,000,44,202,14,089,35,204,00,000,42,205,27,091,*66
+$GBGSV,2,2,05,209,07,033,*62
+$GNRMC,053229.438,V,,,,,,,020315,,,N*56
+$PSRFEPE,053230.438,V,,,,,*2B
+$GPGGA,053230.438,,,,,0,00,,,M,0.0,M,,0000*5E
+$GNGNS,053230.438,,,,,NNNN,00,,,0.0,,0000*6B
+$GNGSA,A,1,,,,,,,,,,,,,,,*00
+$GPGSV,6,1,21,05,00,000,21,06,00,000,24,07,00,000,23,11,00,000,22*7D
+$GPGSV,6,2,21,12,00,000,49,14,57,107,47,16,00,000,21,18,55,190,50*72
+$GPGSV,6,3,21,21,00,000,23,22,57,198,50,24,15,335,42,25,00,000,22*7C
+$GPGSV,6,4,21,26,00,000,23,28,00,000,22,31,58,140,35,27,56,093,*77
+$GPGSV,6,5,21,09,44,071,,15,24,255,,04,18,332,,17,15,022,*7B
+$GPGSV,6,6,21,23,05,259,*40
+$GBGSV,2,1,05,201,00,000,44,202,14,089,35,204,00,000,42,205,27,091,*66
+$GBGSV,2,2,05,209,07,033,*62
+$GNRMC,053230.438,V,,,,,,,020315,,,N*5E
+$PSRFEPE,053231.438,V,,,,,*2A
+$GPGGA,053231.438,,,,,0,00,,,M,0.0,M,,0000*5F
+$GNGNS,053231.438,,,,,NNNN,00,,,0.0,,0000*6A
+$GNGSA,A,1,,,,,,,,,,,,,,,*00
+$GPGSV,6,1,21,03,00,000,,05,00,000,25,07,00,000,24,11,00,000,22*7D
+$GPGSV,6,2,21,12,00,000,49,14,57,107,48,16,00,000,22,18,55,190,51*7F
+$GPGSV,6,3,21,21,00,000,24,22,57,198,49,24,15,335,42,25,00,000,22*73
+$GPGSV,6,4,21,26,00,000,22,28,00,000,22,31,58,140,34,27,56,093,*77
+$GPGSV,6,5,21,09,44,071,,15,24,255,,04,18,332,,17,15,022,*7B
+$GPGSV,6,6,21,23,05,259,*40
+$GBGSV,2,1,05,201,00,000,44,202,14,089,35,204,00,000,42,205,27,091,*66
+$GBGSV,2,2,05,209,07,033,*62
+$GNRMC,053231.438,V,,,,,,,020315,,,N*5F
+$PSRFEPE,053232.438,A,1.2,5.77,12.97,1.2,180.0*21
+$GPGGA,053232.438,3114.8789,N,12135.2442,E,1,06,1.2,153.8,M,8.3,M,,0000*6A
+$GNGNS,053232.438,3114.8789,N,12135.2442,E,ANNA,07,1.2,153.8,8.3,,0000*5F
+$GNGSA,A,3,22,18,14,12,31,24,,,,,,,2.5,1.2,2.2*23
+$GNGSA,A,3,201,,,,,,,,,,,,2.5,1.2,2.2*1B
+$GPGSV,6,1,21,22,80,039,49,18,50,119,51,14,51,342,48,12,20,061,50*78
+$GPGSV,6,2,21,31,51,228,34,24,04,041,43,03,00,000,20,05,00,000,26*77
+$GPGSV,6,3,21,06,00,000,26,07,00,000,24,16,00,000,22,21,00,000,24*7E
+$GPGSV,6,4,21,25,34,142,21,26,00,000,23,28,00,000,22,27,31,036,*71
+$GPGSV,6,5,21,15,21,289,,09,14,038,,30,14,180,,11,10,179,*7B
+$GPGSV,6,6,21,23,06,275,*4D
+$GBGSV,3,1,11,201,49,147,44,202,23,250,35,204,35,123,42,213,83,243,*6D
+$GBGSV,3,2,11,210,70,270,,207,70,267,,206,55,311,,203,49,208,*6B
+$GBGSV,3,3,11,209,36,317,,214,36,147,,205,11,257,*67
+$GNRMC,053232.438,A,3114.8789,N,12135.2442,E,0.26,167.42,020315,,,A*70
+$PSRFEPE,053233.438,A,1.2,25.61,66.06,0.3,180.0*1E
+$GPGGA,053233.438,3114.8821,N,12135.2428,E,1,06,1.2,167.2,M,8.3,M,,0000*67
+$GNGNS,053233.438,3114.8821,N,12135.2428,E,ANNA,07,1.2,167.2,8.3,,0000*52
+$GNGSA,A,3,22,18,14,12,31,24,,,,,,,2.5,1.2,2.2*23
+$GNGSA,A,3,201,,,,,,,,,,,,2.5,1.2,2.2*1B
+$GPGSV,5,1,18,22,73,312,50,18,66,145,51,14,41,330,48,12,34,060,49*7B
+$GPGSV,5,2,18,31,37,248,34,24,13,042,43,03,00,000,21,06,00,000,27*7E
+$GPGSV,5,3,18,07,00,000,23,16,00,000,20,21,00,000,24,26,00,000,23*75
+$GPGSV,5,4,18,25,44,164,,27,38,028,,09,22,036,,30,14,194,*77
+$GPGSV,5,5,18,11,11,192,,15,06,294,*77
+$GBGSV,3,1,11,201,49,147,44,202,23,250,35,204,35,123,42,213,83,243,*6D
+$GBGSV,3,2,11,210,70,270,,207,70,267,,206,55,311,,203,49,208,*6B
+$GBGSV,3,3,11,209,36,317,,214,36,147,,205,11,257,*67
+$GNRMC,053233.438,A,3114.8821,N,12135.2428,E,0.07,167.42,020315,,,A*73
diff --git a/www/NMEA.txt b/www/NMEA.txt index c76b6d6d..c329705f 100644 --- a/www/NMEA.txt +++ b/www/NMEA.txt @@ -269,6 +269,7 @@ the following are well known: |GA | Galileo Positioning System |GL | GLONASS, according to IEIC 61162-1 |GN | Mixed GPS and GLONASS data, according to IEIC 61162-1 +|GB | Beidou regional GPS augmentation system (China) |BD | Beidou regional GPS augmentation system (China) |QZ | QZSS regional GPS augmentation system (Japan) |================================================================ |