diff options
author | Eric S. Raymond <esr@thyrsus.com> | 2014-05-16 11:16:48 -0400 |
---|---|---|
committer | Eric S. Raymond <esr@thyrsus.com> | 2014-05-16 11:21:03 -0400 |
commit | b5c687b0425e19cf87add2264a408ca0f8270e10 (patch) | |
tree | c39806fc941a758e31d316fc787b38c3112381ad | |
parent | 042a6e6bfa01966848550c4c5f751e57259ab88e (diff) | |
download | gpsd-b5c687b0425e19cf87add2264a408ca0f8270e10.tar.gz |
Support for, and documentation of, some unuusual AIS talker IDs.
-rw-r--r-- | TODO | 13 | ||||
-rw-r--r-- | packet.c | 29 | ||||
-rw-r--r-- | www/AIVDM.txt | 19 | ||||
-rw-r--r-- | www/NMEA.txt | 2 |
4 files changed, 49 insertions, 14 deletions
@@ -73,6 +73,19 @@ The second 'n' is losing information that it shouldn't. Display update should not stop while this is going on. +*** Time offset debugging in gpsmon *** + +Hall Murray: +> The gpsmon logging stuff should include time stamps. +> +> There should be some way for gpsmon to display the time offset that it would +> send to NTP via SHM. I don't see any obvious empty space on the screen. If +> nothing else, it could use the PPS space or alternate with the PPS info, +> perhaps via a keyboard command. +> +> Or perhaps a higher level keyboard command to switch into timekeeping +> debugging mode rather than position debugging mode. + **** Speed, mode and rate-changes in client-mode gpsmon. Are not implemented. In theory they could be. @@ -90,18 +90,23 @@ PERMISSIONS * application, they'd just add complexity. * * The NMEA portion of the state machine allows the following talker IDs: - * GP -- Global Positioning System. - * GL -- GLONASS, according to IEIC 61162-1 - * GN -- Mixed GPS and GLONASS data, according to IEIC 61162-1 - * II -- Integrated Instrumentation (Raytheon's SeaTalk system). - * IN -- Integrated Navigation (Garmin uses this). - * WI -- Weather instrument (Airmar PB200, Radio Ocean ROWIND, Vaisala WXT520). - * HC -- Heading/compass (Airmar PB200). - * TI -- Turn indicator (Airmar PB200). - * EC -- Electronic Chart Display & Information System (ECDIS) - * SD -- Depth Sounder - * P -- Vendor-specific sentence + * $GP -- Global Positioning System. + * $GL -- GLONASS, according to IEIC 61162-1 + * $GN -- Mixed GPS and GLONASS data, according to IEIC 61162-1 + * $II -- Integrated Instrumentation (Raytheon's SeaTalk system). + * $IN -- Integrated Navigation (Garmin uses this). + * $WI -- Weather instrument (Airmar PB200, Radio Ocean ROWIND, Vaisala WXT520). + * $HC -- Heading/compass (Airmar PB200). + * $TI -- Turn indicator (Airmar PB200). + * $EC -- Electronic Chart Display & Information System (ECDIS) + * $SD -- Depth Sounder + * $P -- Vendor-specific sentence * + * !AI -- Mobile AIS station + * !BS -- Base AIS station (deprecated in NMEA 4.0) + * !AB -- NMEA 4.0 Base AIS station + * !AN -- NMEA 4.0 Buoy AIS station + * !AX -- NMEA 4.0 Repeater AIS station */ enum @@ -419,7 +424,7 @@ static void nextstate(struct gps_packet_t *lexer, unsigned char c) lexer->state = GROUND_STATE; break; case AIS_LEAD_1: - if (c == 'I') + if (c == 'I' || c == 'B' || c == 'N' || c == 'X') lexer->state = AIS_LEAD_2; else lexer->state = GROUND_STATE; diff --git a/www/AIVDM.txt b/www/AIVDM.txt index ee684727..7fa33e25 100644 --- a/www/AIVDM.txt +++ b/www/AIVDM.txt @@ -1,6 +1,6 @@ = AIVDM/AIVDO protocol decoding = Eric S. Raymond <esr@thyrsus.com> -v1.44, November 2013 +v1.45, May 2014 This document is mastered in asciidoc format. If you are reading it in HTML, you can find the original at the GPSD project website @@ -234,6 +234,21 @@ nonempty message ID field: !AIVDM,2,2,3,B,1@0000000000000,2*55 -------------------------------------------------------------------- +== Talker IDS == + +The AI prefix commonly found on these sentences is an NMEA talker ID +for a mobile AIS station. Other + +.AIS talker IDs +[width="25%",frame="topbot",options="header"] +|================================================ +| !AI | Mobile AIS station +| !BS | Base AIS station (deprecated in NMEA 4.0) +| !AB | NMEA 4.0 Base AIS station +| !AN | NMEA 4.0 Buoy AIS station +| !AX | NMEA 4.0 Repeater AIS station +|================================================ + == AIVDM/AIVDO Payload Armoring == The data payload is an ASCII-encoded bit vector. Each character @@ -5287,3 +5302,5 @@ waterways. Also Inland AIS standard messages are now covered. Version 1.44 adds substantial new information on MMSIs and updates the <<MMSI link>>, which was stale. + +Version 1.45 adds a description of AIS talker IDs. diff --git a/www/NMEA.txt b/www/NMEA.txt index 5a6f9666..1fcb2557 100644 --- a/www/NMEA.txt +++ b/www/NMEA.txt @@ -628,7 +628,7 @@ to POINTB does not change during the time you are on this leg.) 12 1 2 3 4 5 6 7 8 9 10 11| 13 14 | | | | | | | | | | | | | | - $--BEC,hhmmss.ss,llll.ll,a,yyyyy.yy,a,x.x,T,x.x,M,x.x,N,c--c,m,*hh<CR><LF> + $--BWC,hhmmss.ss,llll.ll,a,yyyyy.yy,a,x.x,T,x.x,M,x.x,N,c--c,m,*hh<CR><LF> ------------------------------------------------------------------------------ Field Number: |