Testing and Grabbing SeaTalk1 Datagrams

This forum is for discussing hardware (electronics) and software design aspects of multiplexers in general.
Luis Sa
Site Admin
Posts: 544
Joined: Thu May 04, 2017 4:12 am

Testing and Grabbing SeaTalk1 Datagrams

Post by Luis Sa » Sun Nov 24, 2019 6:01 pm

Hello,

(see following posts that may contain more updated information)

November, 3, 2020 - Starting with version 38 Nmea4Wifi multiplexer has a Debug function that shows the datagrams. It will be implemented in the Nmea2Wifi multiplexer at a later date

If you download firmware version NMEA4WIFIV31ST.BIN you will get a different settings page. Port P4 is preset for SeaTalk and ports P1 P2 and P3 are disabled. Port P5 is enabled as well as UDP and TCP. All the routing checkboxes are disabled except P4 > P5, P4 > UDP and P4 > TCP. So you can only receive SeaTalk datagrams which you can read on OpenCPN or on my tool Nmea0183Tester using a wired connection from P5 or wireless by UDP or TCP. With my Nmea0183Tester tool you can save into a file the received data. In contrast to the normal output (which would be the converted to Nmea 0183 sentences) this version outputs the datagram followed by the converted to Nmea0183 sentence. Here is an example of a recorded file:

Code: Select all

ST=00 02 40 39 74
$SDDBT,2975.3,f,,,,*72
ST=10 01 00 F7
$STAUX
ST=11 01 0C 03
$WIMWV,123.5,R,12.3,N,A*0D
ST=20 01 00 41
$VWVHW,,,318,M,1664.0,N,,,*2A
ST=22 02 87 1F 00
$STAUX
ST=23 01 0E 39
$IIMTW,14,C*1D
ST=25 04 CB 1D 3B 13 00
$IIVLW,762.7,N,49.23,N*0B
ST=26 04 02 88 02 10 00
$VWVHW,,,318,M,348.18,N,,,*0E
ST=27 01 00 F8
$IIMTW,6338.8,C*05
ST=50 02 04 81 72
$STAUX
ST=51 02 0C 11 2B
$STAUX
ST=52 01 00 B5
$STAUX
ST=53 B0 19
$GPRMC,140145,A,403.700,S,1243.956,W,25.6,321,181118,2,W*65
ST=54 D1 06 0E
$STAUX
ST=56 B1 12 12
$STAUX
ST=58 15 04 0E 74 0C AB B4
$STAUX
ST=84 36 D8 5A 00 00 00 00 00
$HCHDG,318,,,2,W*78
ST=89 32 18 00 00
$HCHDG,318,,,2,W*70
ST=99 00 02
$STAUX
In this example are shown all the recognized datagrams. I refer to datagrams by their first byte. The first datagram shown here ST=00 02 40 39 74 starts with byte 00 which, by the way, refers to Depth. The multiplexers recognize datagrams 00 10 11 20 21 22 23 25 26 27 50 51 52 53 54 56 58 84 89 99 and 9C. As you will datagrams 10 22 50 51 52 54 56 58 and 99 do not generate Nmea 0183 sentences directly. Instead they store the received data which will be used by the datagrams that generate Nmea 083 sentences. However and for testing purposes I followed these datagrams by the "fictitious" Nmea 0183 sentence $STAUX meaning that an AUX SeaTalk1 value was received and stored for later use. If the received datagram is not recognized by the multiplexer it will be followed by the "fictitious" sentence $STERR. An example of a datagram that the multiplexer does not know about is:

Code: Select all

ST=45 02 40 39 04
$STERR
I have no idea if there exists any datagram starting with 45. As the multiplexer will not see it in the set 00 10 11 20 21 22 23 25 26 27 50 51 52 53 54 56 58 84 89 99 and 9C, it will signal that with $STERR. If I get a list of valid datagrams I can modify this behavior.

A final note - one of the reasons I started this work on multiplexers was related to what I wrote about 3 years ago: "It happened many times - we are in the saloon, either in a marina or on anchor, and then someone asks: how strong is the wind? And I have to go to the cockpit, switch on an instrument and read the display. In order to simplify this and get all the boat data in the display of my smartphone, I developed Nmea2Wifi". I had a Raymarine E85001 Interface Box that came with boat (and was mounted under the navigation table in the saloon) but I never was able to get it to work. So I removed it and stored it at home. And went on designing multiplexers. This week I remember about that box. I found it and decided to try it again. And it works! I have now, at home, a way to check for Nmea0183 to SeaTalk1 conversions and vice versa. How many hours of work I could save if I knew!

seatalk-box.jpg

Regards, Luis

Luis Sa
Site Admin
Posts: 544
Joined: Thu May 04, 2017 4:12 am

Re: Testing and Grabbing SeaTalk1 Datagrams

Post by Luis Sa » Wed Nov 27, 2019 2:48 am

Hello,

A revised SeaTalk1 tester is NMEA4WIFIV32ST.BIN. For each received datagram on port 4 it outupts 2 lines. The 1st line is the datagram itself. The second line can be one of the following:
  • An Nmea 0183 sentence starting with character "$" which was converted from the received datagram.
  • The text "Auxiliar value stored!" which means that the datagram was interpreted and data was stored to be used in future conversions.
  • The text "Datagram not converted!" which means that the datagram was corrected received and was valid but its conversion was not done.
  • The text "Invalid or Unknown!" which means that the datagram is unknown or is corrupted (in this case only the first 2 bytes of the datagram are shown.
Examples are shown here:

Code: Select all

ST=00 02 40 39 74
$SDDBT,2975.3,f,906.9,M,496.0,F*74
ST=10 01 00 F7
Auxiliar value stored!
ST=88 03 02 34 FF 67
Datagram not converted!
ST=58 15 04 0E 74 0C AB B4
Auxiliar value stored!
ST=84 36 D8 5A 00 00 00 00 00
$HCHDG,318,,,2,W*78
ST=23 04 ...
Invalid or Unknown!
Note: Some adjustments on the reception/conversion of SeaTalk1 datagrams on port P4 were introduced in this 32ST version. They will probably will be introduced in "normal" firmware 32 after careful testing. I am also revising one by one all the datagrams that we can translate to Nmea 0183, using the Raymarine E85001 box. It is also possible that some conversions could be improved.

Regards, Luis

Luis Sa
Site Admin
Posts: 544
Joined: Thu May 04, 2017 4:12 am

Re: Testing and Grabbing SeaTalk1 Datagrams

Post by Luis Sa » Wed Nov 27, 2019 7:55 pm

Hello,

This is is the description of the SeaTalk1 generator that I am using. Note that it does not negotiates the bus. It just sends data without checking if any other talker has taking the bus. That is OK as I am only connecting it either to P4 alone or to the E85001 box alone.

The schematics, a photo of the breadboard and the source code follows. The schematics shows the Wemos Esp32 but in the breadboard I used another ESP32 board. Only GPIO14 pin is used.

generator-st1.jpg

From the Arduino Serial terminal or from the Nmea0183Tester tool we send strings like ST=00 02 40 39 74. Only what follows the "=" character is read. Also the separator between bytes can be any character. The above datagram could have been sent as this:

This is a datagram =00a02,40(39=74

Code: Select all

/* ====================================================
 *  Simple Generator of SeaTalk1 Datagrams for Testing,
 *  Debugging & Conversion from SeaTalk1 to NMEA 0183
 * ====================================================
 *  
 *  Runs on an ESP32 Dev Module compiled with Arduino 1.8.10. 
 *  
 *  Based on:
 *  
 *  - SeaTalk Technical Reference by Thomas Knauf http://www.thomasknauf.de/seatalk.htm
 *  - NMEA Revealed by Eric S. Raymond http://www.catb.org/gpsd/NMEA.html
 *  
 */
 
#define TX_PIN    14                   // this is the transmit PIN
             
char ST[18];                           // array to build the SeaTalk datagram
int i_ST;                              // index for ST[]
int len_ST;                            // length of datagram
boolean Is_ST = false;                 // true when Serial is receiving pertinent data               // 

char input[54];                        // buffer to receive a line
boolean line = false;                  // true when last byte of a line is received
int i_i;                               // index for inp[]

byte HexTable[128];                    // table for ASCII to HEX conversion

void setup() {
  pinMode(TX_PIN, OUTPUT);
  digitalWrite(TX_PIN, LOW);           // iddle state is low (inverted by the transistor)
  Serial.begin(4800);                  // input (and output echo) from COM port (or Arduino Serial Monitor)
  BuildHexTable();
}

void loop() {
  Test_Serial();
  if ( line ) {
    if ( ParseLine() ) {
      // send bits and echo
      Send_Bits();
      Print_ST();
      line = false;
    }
  }
}

boolean ParseLine() {
  int j, k1, k2;
  int len = (i_i + 1) / 3 ;
  if ( len < 3 ) { return false; } 
  if ( ( 3 * len ) != ( i_i + 1 )) { return false; } // wrong number of chars
  len_ST = len;
  for ( int i = 0 ; i < len ; i++ ) {
    j = 3 * i;
    k1 = HexTable[ input[j] ];
    if ( k1 > 15 ) { return false; }
    k2 = HexTable[ input[j + 1] ];
    if ( k2 > 15 ) { return false; }   
    ST[i] = 16 * k1 + k2;
    if ( i == 1 ) {
      if ( len != ( 3 + ( ST[1] & 0x0F ) ) ) {
//        return false; let it pass so that we can detect wrong datagrams!
      }
    }
  }
  return true;
}


void Print_ST() {
  int len = len_ST;
  Serial.print("ST=");  
  for (int i=0; i<len; i++) {
    if (ST[i]<16) { Serial.print("0");}
    Serial.print(ST[i],HEX); Serial.print(" ");
  }
   Serial.println();  
}

void Send_Bits() {
  int len = len_ST;
  Send9bits(ST[0] , 1);
  for (int i=1; i<len; i++) { Send9bits(ST[i] , 0); }
}

void Send9bits( byte out, byte sig ) {
  // SeaTalk transmits at 4800 baud meaning a "bit time" of 208us
  digitalWrite(TX_PIN, HIGH); delayMicros(208);  // start bit followed by least significative bit ...
  (out & B00000001) ? digitalWrite(TX_PIN, LOW) : digitalWrite(TX_PIN, HIGH); delayMicros(208);
  (out & B00000010) ? digitalWrite(TX_PIN, LOW) : digitalWrite(TX_PIN, HIGH); delayMicros(208);
  (out & B00000100) ? digitalWrite(TX_PIN, LOW) : digitalWrite(TX_PIN, HIGH); delayMicros(208);
  (out & B00001000) ? digitalWrite(TX_PIN, LOW) : digitalWrite(TX_PIN, HIGH); delayMicros(208);
  (out & B00010000) ? digitalWrite(TX_PIN, LOW) : digitalWrite(TX_PIN, HIGH); delayMicros(208);
  (out & B00100000) ? digitalWrite(TX_PIN, LOW) : digitalWrite(TX_PIN, HIGH); delayMicros(208);
  (out & B01000000) ? digitalWrite(TX_PIN, LOW) : digitalWrite(TX_PIN, HIGH); delayMicros(208);
  (out & B10000000) ? digitalWrite(TX_PIN, LOW) : digitalWrite(TX_PIN, HIGH); delayMicros(208);  
  (sig) ? digitalWrite(TX_PIN, LOW) : digitalWrite(TX_PIN, HIGH); delayMicros(208); 
  digitalWrite(TX_PIN, LOW); delayMicros(208); // stop bit
}

void delayMicros( int n ) {
  unsigned long time0 = micros();
  unsigned long time1 = time0 + n - 1 ;  // 207 micro seconds just counts for code to execute
  while( micros() < time1 ){ }
}

void Test_Serial() {  
  char b;
  while (Serial.available() > 0) {    // get the character
    b = Serial.read();
    if ( Is_ST ) {
      input[i_i] = b;
      if (b == 0x0D) {        //0D is CR  
          input[i_i] = 0x00;    
          line = true;      
          Is_ST = false;   
          return; }
      else { i_i = i_i + 1; }
    }
    if ( Is_ST == false ) {
      line = false;
      if ( b == 61 ) {      //  test for "=" or Ascii 61
        Is_ST = true;
        i_i = 0;          
      } 
    }
    if (i_i > 53) { Is_ST = false;  line = false; return; }   // line too long   
  }
}

void BuildHexTable() {
  // fill with 16 - not valid value
  for ( int i = 0; i < 128; i++) {
    HexTable[i] = 16 ;   
  }
  // now fill the valid characters
  HexTable[48] = 0;   HexTable[49] = 1;   HexTable[50] = 2;
  HexTable[51] = 3;   HexTable[52] = 4;   HexTable[53] = 5;  
  HexTable[54] = 6;   HexTable[55] = 7;   HexTable[56] = 8;  
  HexTable[57] = 9;  
  // Capitals
  HexTable[65] = 10;  HexTable[66] = 11;  HexTable[67] = 12;  
  HexTable[68] = 13;  HexTable[69] = 14;  HexTable[70] = 15;
  // small
  HexTable[97] = 10;  HexTable[98] = 11;  HexTable[99] = 12;  
  HexTable[100] = 13; HexTable[101] = 14; HexTable[102] = 15;
}

Regards, Luis
Attachments
Schematic_SEATALK_GENERATOR.pdf
(25 KiB) Downloaded 285 times

Luis Sa
Site Admin
Posts: 544
Joined: Thu May 04, 2017 4:12 am

Re: Testing and Grabbing SeaTalk1 Datagrams

Post by Luis Sa » Wed Nov 27, 2019 9:14 pm

Hello,

Using the Nmea0183Tester tool we filled a file with instances of all the datagrams that the multiplexers are able to produce. The file is this one:

Code: Select all

ST=00 02 40 39 74
ST=10 01 00 F7
ST=11 01 0C 03
ST=20 01 00 41
ST=21 02 00 71 0F
ST=22 02 87 1F 00
ST=23 01 0E 39
ST=25 04 CB 1D 3B 13 00
ST=26 04 02 88 02 10 00
ST=27 01 00 F8
ST=50 02 04 81 72
ST=51 02 0C 11 2B
ST=52 01 00 B5
ST=53 B0 19
ST=54 D1 06 0E
ST=56 B1 12 12
ST=58 15 04 0E 74 0C AB B4
ST=84 36 D8 5A 00 00 00 00 00
ST=89 32 18 00 00
ST=99 00 02
ST=9C 31 18 00
I connected the yellow data cable to B4 of the " 32ST" multiplexer and the 12V red cable to A4, Then after confirming that my laptop was connected to the NMEA4WIFI network that the "32ST" multiplexer created, I set it to send the P4 data to UDP using port 2000. In the Receiving Panel of the Nmea0183Tester tool I set the Source of data to come from UDP at port 2000. Then I press the "Resume" button in the Receiving Panel and the green ligh started to blink telling me that it was listening on that port. Then, I sent the above file to the Target COM4 (the port that the SeaTalk simple generator got when I inserted the USB cable on the computer) at 4800 baude, by pressing the "Resume" button on the Transmitting Panel. When I have done that I saw data filling the Receiving Panel. I got the following data:

Code: Select all

ST=00 02 40 39 74
$SDDBT,2975.3,f,906.9,M,496.0,F*74
ST=10 01 00 F7
Auxiliar value stored!
ST=11 01 0C 03
$WIMWV,123.5,R,12.3,N,A*0D
ST=20 01 00 41
$VWVHW,,,,,1664.0,N,,,*5D
ST=21 02 00 71 0F
$IIVLW,807.1,N,10119.68,N*4E
ST=22 02 87 1F 00
Auxiliar value stored!
ST=23 01 0E 39
$IIMTW,14,C*1D
ST=25 04 CB 1D 3B 13 00
$IIVLW,762.7,N,49.23,N*0B
ST=26 04 02 88 02 10 00
$VWVHW,,,,,348.18,N,,,*79
ST=27 01 00 F8
$IIMTW,6338.8,C*05
ST=50 02 04 81 72
Auxiliar value stored!
ST=51 02 0C 11 2B
Auxiliar value stored!
ST=52 01 00 B5
Auxiliar value stored!
ST=53 B0 19
$GPRMC,140145,A,403.700,S,1243.956,W,25.6,321,181118,2,W*65
ST=54 D1 06 0E
Auxiliar value stored!
ST=56 B1 12 12
Auxiliar value stored!
ST=58 15 04 0E 74 0C AB B4
Auxiliar value stored!
ST=89 32 18 00 00
$HCHDG,318,,,2,W*70
ST=99 00 02
Auxiliar value stored!
ST=9C 31 18 00
$HCHDG,318,,,2,W*28
This data shows the conversions made by the "32ST" multiplexer. In order to compare to what the E85001 box does, I disconnected the output of the SeaTalk Generator from the P4 input and connected it to the E85001 box. I connected a Serial to USB adapter to the Nmea Output of the box. The adapter got COM5 port. So in the Nmea0183Tester tool I set the Source of data to be COM5 at 4800 baude. I set Record=ON and ShowTime=ON. I pressed the Resume button on the Receiving Panel and started to receive sentence $IIBWC,,,,,,,T,,M,,N,*01 every 2 seconds even before I transmitted the Send File. This sentence means "Bearing and Distance to WayPoint". I will try to investigate why is that. I had a time interval of 200 miliseconds between each of the transmitted datagrams. I pressed Resume on the Transmitting Panel and the whole file (containing 21 datagrams containing a total of 104 bytes) took 4.44 seconds to be transmitted. This value of 4.44 seconds is 2.20 ( 20 intervals of 200 miliseconds) plus 0.24 (104 bytes, each byte with 1 start bit, 9 bits and 1 stop, 11 bits in total being the bit duration 208 microseconds). The E85001 box outputted data for about 50 seconds! Here the data that was recorded.

Code: Select all

09:30:58  $IIBWC,,,,,,,T,,M,,N,*01
09:31:00  $IIBWC,,,,,,,T,,M,,N,*01
09:31:00  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:02  $IIMTW,-10.0,C*3F
09:31:02  $IIVLW,762.7,N,49.23,N*45
09:31:02  $IIBWC,,,,,,,T,,M,,N,*01
09:31:03  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:03  $IIGLL,0447.370,N,01228.330,W,,A,A*48
09:31:03  $IIMWV,123.5,R,12.3,N,A*08
09:31:03  $IIMWV,178.5,T,355.0,N,A*33
09:31:03  $IIVHW,,T,,M,348.18,N,644.78,K*5A
09:31:03  $IIVPW,307.30,N,3.01,M*57
09:31:03  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
09:31:03  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
09:31:04  $IIBWC,140147,,,,,,T,,M,,N,*06
09:31:04  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:04  $IIGLL,0403.700,S,01243.956,W,140147,A,A*56
09:31:04  $IIHDG,318.0,,,2,W*26
09:31:04  $IIHDM,318.0,M*28
09:31:04  $IIHDT,316.0,T*26
09:31:05  $IIRSA,0,A,,V*67
09:31:05  $IIMWV,123.5,R,12.3,N,A*08
09:31:05  $IIMWV,178.5,T,355.0,N,A*33
09:31:05  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
09:31:05  $IIVPW,307.30,N,3.01,M*57
09:31:05  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
09:31:05  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
09:31:05  $IIRSA,0,A,,V*67
09:31:06  $IIBWC,140149,,,,,,T,,M,,N,*08
09:31:06  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:06  $IIGLL,0403.700,S,01243.956,W,140149,A,A*58
09:31:06  $IIHDG,318.0,,,2,W*26
09:31:06  $IIHDM,318.0,M*28
09:31:07  $IIHDT,316.0,T*26
09:31:07  $IIRSA,0,A,,V*67
09:31:07  $IIMWV,123.5,R,12.3,N,A*08
09:31:07  $IIMWV,178.5,T,355.0,N,A*33
09:31:07  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
09:31:07  $IIVPW,307.30,N,3.01,M*57
09:31:07  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
09:31:07  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
09:31:07  $IIMWD,134.5,T,136.5,M,355.0,N,47.9,M*7F
09:31:07  $IIVLW,762.7,N,49.23,N*45
09:31:07  $IIVTG,319.0,T,321.0,M,4633.6,N,85.3,K*58
09:31:08  $IIBWC,140151,,,,,,T,,M,,N,*01
09:31:08  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:08  $IIGLL,0403.700,S,01243.956,W,140151,A,A*51
09:31:08  $IIHDG,318.0,,,2,W*26
09:31:08  $IIHDM,318.0,M*28
09:31:09  $IIHDT,316.0,T*26
09:31:09  $IIRSA,0,A,,V*67
09:31:09  $IIMWV,123.5,R,12.3,N,A*08
09:31:09  $IIMWV,178.5,T,355.0,N,A*33
09:31:09  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
09:31:09  $IIVPW,307.30,N,3.01,M*57
09:31:09  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
09:31:09  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
09:31:10  $IIBWC,140153,,,,,,T,,M,,N,*03
09:31:10  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:10  $IIGLL,0403.700,S,01243.956,W,140153,A,A*53
09:31:10  $IIHDG,318.0,,,2,W*26
09:31:10  $IIHDM,318.0,M*28
09:31:10  $IIHDT,316.0,T*26
09:31:11  $IIRSA,0,A,,V*67
09:31:11  $IIMWV,123.5,R,12.3,N,A*08
09:31:11  $IIMWV,178.5,T,355.0,N,A*33
09:31:11  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
09:31:11  $IIVPW,307.30,N,3.01,M*57
09:31:11  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
09:31:11  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
09:31:12  $IIMTW,-10.0,C*3F
09:31:12  $IIZDA,140155,18,11,2018,,*59
09:31:12  $IIHVM,2,W*36
09:31:12  $IIMWD,134.5,T,136.5,M,355.0,N,47.9,M*7F
09:31:12  $IIVLW,762.7,N,49.23,N*45
09:31:13  $IIVTG,319.0,T,321.0,M,4633.6,N,85.3,K*58
09:31:13  $IIBWC,140155,,,,,,T,,M,,N,*05
09:31:13  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:13  $IIGLL,0403.700,S,01243.956,W,140155,A,A*55
09:31:13  $IIHDG,318.0,,,2,W*26
09:31:13  $IIHDM,318.0,M*28
09:31:13  $IIHDT,316.0,T*26
09:31:13  $IIRSA,0,A,,V*67
09:31:13  $IIMWV,123.5,R,12.3,N,A*08
09:31:13  $IIMWV,178.5,T,355.0,N,A*33
09:31:13  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
09:31:14  $IIVPW,307.30,N,3.01,M*57
09:31:14  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
09:31:14  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
09:31:14  $IIBWC,140157,,,,,,T,,M,,N,*07
09:31:14  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:14  $IIGLL,0403.700,S,01243.956,W,140157,A,A*57
09:31:14  $IIHDG,318.0,,,2,W*26
09:31:14  $IIHDM,318.0,M*28
09:31:15  $IIHDT,316.0,T*26
09:31:15  $IIRSA,0,A,,V*67
09:31:15  $IIMWV,123.5,R,12.3,N,A*08
09:31:15  $IIMWV,178.5,T,355.0,N,A*33
09:31:15  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
09:31:15  $IIVPW,307.30,N,3.01,M*57
09:31:15  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
09:31:15  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
09:31:16  $IIBWC,140159,,,,,,T,,M,,N,*09
09:31:16  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:16  $IIGLL,0403.700,S,01243.956,W,140159,A,A*59
09:31:16  $IIHDG,318.0,,,2,W*26
09:31:16  $IIHDM,318.0,M*28
09:31:16  $IIHDT,316.0,T*26
09:31:17  $IIRSA,0,A,,V*67
09:31:17  $IIMWV,123.5,R,12.3,N,A*08
09:31:17  $IIMWV,178.5,T,355.0,N,A*33
09:31:17  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
09:31:17  $IIVPW,307.30,N,3.01,M*57
09:31:17  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
09:31:17  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
09:31:17  $IIMWD,134.5,T,136.5,M,355.0,N,47.9,M*7F
09:31:17  $IIVLW,762.7,N,49.23,N*45
09:31:17  $IIVTG,319.0,T,321.0,M,4633.6,N,85.3,K*58
09:31:18  $IIBWC,140201,,,,,,T,,M,,N,*07
09:31:18  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:18  $IIGLL,0403.700,S,01243.956,W,140201,A,A*57
09:31:18  $IIHDG,318.0,,,2,W*26
09:31:18  $IIHDM,318.0,M*28
09:31:18  $IIHDT,316.0,T*26
09:31:19  $IIRSA,0,A,,V*67
09:31:19  $IIMWV,123.5,R,12.3,N,A*08
09:31:19  $IIMWV,178.5,T,355.0,N,A*33
09:31:19  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
09:31:19  $IIVPW,307.30,N,3.01,M*57
09:31:19  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
09:31:19  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
09:31:20  $IIBWC,140203,,,,,,T,,M,,N,*05
09:31:20  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:20  $IIGLL,0403.700,S,01243.956,W,140203,A,A*55
09:31:20  $IIHDG,318.0,,,2,W*26
09:31:20  $IIHDM,318.0,M*28
09:31:20  $IIHDT,316.0,T*26
09:31:21  $IIRSA,0,A,,V*67
09:31:21  $IIMWV,123.5,R,12.3,N,A*08
09:31:21  $IIMWV,178.5,T,355.0,N,A*33
09:31:21  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
09:31:21  $IIVPW,307.30,N,3.01,M*57
09:31:21  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
09:31:21  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
09:31:22  $IIMTW,-10.0,C*3F
09:31:22  $IIZDA,140205,18,11,2018,,*5F
09:31:22  $IIHVM,2,W*36
09:31:22  $IIMWD,134.5,T,136.5,M,355.0,N,47.9,M*7F
09:31:22  $IIVLW,762.7,N,49.23,N*45
09:31:23  $IIVTG,319.0,T,321.0,M,4633.6,N,85.3,K*58
09:31:23  $IIBWC,140205,,,,,,T,,M,,N,*03
09:31:23  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:23  $IIGLL,0403.700,S,01243.956,W,140205,A,A*53
09:31:23  $IIHDG,318.0,,,2,W*26
09:31:23  $IIHDM,318.0,M*28
09:31:23  $IIHDT,316.0,T*26
09:31:23  $IIRSA,0,A,,V*67
09:31:23  $IIMWV,123.5,R,12.3,N,A*08
09:31:23  $IIMWV,178.5,T,355.0,N,A*33
09:31:23  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
09:31:23  $IIVPW,307.30,N,3.01,M*57
09:31:24  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
09:31:24  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
09:31:24  $IIBWC,140207,,,,,,T,,M,,N,*01
09:31:24  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:24  $IIGLL,0403.700,S,01243.956,W,140207,A,A*51
09:31:24  $IIHDG,318.0,,,2,W*26
09:31:24  $IIHDM,318.0,M*28
09:31:24  $IIHDT,316.0,T*26
09:31:24  $IIRSA,0,A,,V*67
09:31:25  $IIMWV,123.5,R,12.3,N,A*08
09:31:25  $IIMWV,178.5,T,355.0,N,A*33
09:31:25  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
09:31:25  $IIVPW,307.30,N,3.01,M*57
09:31:25  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
09:31:25  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
09:31:26  $IIBWC,140209,,,,,,T,,M,,N,*0F
09:31:26  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:26  $IIGLL,0403.700,S,01243.956,W,140209,A,A*5F
09:31:26  $IIHDG,318.0,,,2,W*26
09:31:26  $IIHDM,318.0,M*28
09:31:26  $IIHDT,316.0,T*26
09:31:27  $IIRSA,0,A,,V*67
09:31:27  $IIMWV,123.5,R,12.3,N,A*08
09:31:27  $IIMWV,178.5,T,355.0,N,A*33
09:31:27  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
09:31:27  $IIVPW,307.30,N,3.01,M*57
09:31:27  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
09:31:27  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
09:31:27  $IIMWD,134.5,T,136.5,M,355.0,N,47.9,M*7F
09:31:27  $IIVLW,762.7,N,49.23,N*45
09:31:27  $IIVTG,319.0,T,321.0,M,4633.6,N,85.3,K*58
09:31:28  $IIBWC,140211,,,,,,T,,M,,N,*06
09:31:28  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:28  $IIGLL,0403.700,S,01243.956,W,140211,A,A*56
09:31:28  $IIHDG,318.0,,,2,W*26
09:31:28  $IIHDM,318.0,M*28
09:31:28  $IIHDT,316.0,T*26
09:31:29  $IIRSA,0,A,,V*67
09:31:29  $IIMWV,123.5,R,12.3,N,A*08
09:31:29  $IIMWV,178.5,T,355.0,N,A*33
09:31:29  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
09:31:29  $IIVPW,307.30,N,3.01,M*57
09:31:29  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
09:31:29  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
09:31:30  $IIBWC,140213,,,,,,T,,M,,N,*04
09:31:30  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:30  $IIGLL,0403.700,S,01243.956,W,140213,A,A*54
09:31:30  $IIHDG,318.0,,,2,W*26
09:31:30  $IIHDM,318.0,M*28
09:31:30  $IIHDT,316.0,T*26
09:31:30  $IIRSA,0,A,,V*67
09:31:31  $IIMWV,123.5,R,12.3,N,A*08
09:31:31  $IIMWV,178.5,T,355.0,N,A*33
09:31:31  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
09:31:31  $IIVPW,307.30,N,3.01,M*57
09:31:31  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
09:31:31  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
09:31:32  $IIMTW,-10.0,C*3F
09:31:32  $IIZDA,140215,18,11,2018,,*5E
09:31:32  $IIHVM,2,W*36
09:31:32  $IIMWD,134.5,T,136.5,M,355.0,N,47.9,M*7F
09:31:32  $IIVLW,762.7,N,49.23,N*45
09:31:32  $IIVTG,319.0,T,321.0,M,4633.6,N,85.3,K*58
09:31:33  $IIBWC,140215,,,,,,T,,M,,N,*02
09:31:33  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:33  $IIGLL,0403.700,S,01243.956,W,140215,A,A*52
09:31:33  $IIHDG,318.0,,,2,W*26
09:31:33  $IIHDM,318.0,M*28
09:31:33  $IIHDT,316.0,T*26
09:31:33  $IIRSA,0,A,,V*67
09:31:33  $IIMWV,123.5,R,12.3,N,A*08
09:31:33  $IIMWV,178.5,T,355.0,N,A*33
09:31:33  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
09:31:33  $IIVPW,307.30,N,3.01,M*57
09:31:34  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
09:31:34  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
09:31:34  $IIBWC,140217,,,,,,T,,M,,N,*00
09:31:34  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:34  $IIGLL,0403.700,S,01243.956,W,140217,A,A*50
09:31:34  $IIHDG,318.0,,,2,W*26
09:31:34  $IIHDM,318.0,M*28
09:31:34  $IIHDT,316.0,T*26
09:31:35  $IIRSA,0,A,,V*67
09:31:35  $IIMWV,123.5,R,12.3,N,A*08
09:31:35  $IIMWV,178.5,T,355.0,N,A*33
09:31:35  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
09:31:35  $IIVPW,307.30,N,3.01,M*57
09:31:35  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
09:31:35  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
09:31:36  $IIBWC,140219,,,,,,T,,M,,N,*0E
09:31:36  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:36  $IIGLL,0403.700,S,01243.956,W,140219,A,A*5E
09:31:36  $IIHDG,318.0,,,2,W*26
09:31:36  $IIHDM,318.0,M*28
09:31:36  $IIHDT,316.0,T*26
09:31:36  $IIRSA,0,A,,V*67
09:31:37  $IIMWV,123.5,R,12.3,N,A*08
09:31:37  $IIMWV,178.5,T,355.0,N,A*33
09:31:37  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
09:31:37  $IIVPW,307.30,N,3.01,M*57
09:31:37  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
09:31:37  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
09:31:37  $IIMWD,134.5,T,136.5,M,355.0,N,47.9,M*7F
09:31:37  $IIVLW,762.7,N,49.23,N*45
09:31:37  $IIVTG,319.0,T,321.0,M,4633.6,N,85.3,K*58
09:31:38  $IIBWC,140221,,,,,,T,,M,,N,*05
09:31:38  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:38  $IIGLL,0403.700,S,01243.956,W,140221,A,A*55
09:31:38  $IIHDG,318.0,,,2,W*26
09:31:38  $IIHDM,318.0,M*28
09:31:38  $IIHDT,316.0,T*26
09:31:39  $IIRSA,0,A,,V*67
09:31:39  $IIMWV,123.5,R,12.3,N,A*08
09:31:39  $IIMWV,178.5,T,355.0,N,A*33
09:31:39  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
09:31:39  $IIVPW,307.30,N,3.01,M*57
09:31:39  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
09:31:39  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
09:31:40  $IIBWC,140223,,,,,,T,,M,,N,*07
09:31:40  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:40  $IIGLL,0403.700,S,01243.956,W,140223,A,A*57
09:31:40  $IIHDG,318.0,,,2,W*26
09:31:40  $IIHDM,318.0,M*28
09:31:40  $IIHDT,316.0,T*26
09:31:41  $IIRSA,0,A,,V*67
09:31:41  $IIMWV,123.5,R,12.3,N,A*08
09:31:41  $IIMWV,178.5,T,355.0,N,A*33
09:31:41  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
09:31:41  $IIVPW,307.30,N,3.01,M*57
09:31:41  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
09:31:41  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
09:31:42  $IIMTW,-10.0,C*3F
09:31:42  $IIZDA,140225,18,11,2018,,*5D
09:31:42  $IIHVM,2,W*36
09:31:42  $IIMWD,134.5,T,136.5,M,355.0,N,47.9,M*7F
09:31:42  $IIVLW,762.7,N,49.23,N*45
09:31:42  $IIVTG,319.0,T,321.0,M,4633.6,N,85.3,K*58
09:31:43  $IIBWC,140225,,,,,,T,,M,,N,*01
09:31:43  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:43  $IIGLL,0403.700,S,01243.956,W,140225,A,A*51
09:31:43  $IIHDG,318.0,,,2,W*26
09:31:43  $IIHDM,318.0,M*28
09:31:43  $IIHDT,316.0,T*26
09:31:43  $IIRSA,0,A,,V*67
09:31:43  $IIMWV,123.5,R,12.3,N,A*08
09:31:43  $IIMWV,178.5,T,355.0,N,A*33
09:31:43  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
09:31:43  $IIVPW,307.30,N,3.01,M*57
09:31:43  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
09:31:44  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
09:31:44  $IIBWC,140227,,,,,,T,,M,,N,*03
09:31:44  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:44  $IIGLL,0403.700,S,01243.956,W,140227,A,A*53
09:31:44  $IIHDG,318.0,,,2,W*26
09:31:44  $IIHDM,318.0,M*28
09:31:44  $IIHDT,316.0,T*26
09:31:44  $IIRSA,0,A,,V*67
09:31:45  $IIMWV,123.5,R,12.3,N,A*08
09:31:45  $IIMWV,178.5,T,355.0,N,A*33
09:31:45  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
09:31:45  $IIVPW,307.30,N,3.01,M*57
09:31:45  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
09:31:45  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
09:31:46  $IIBWC,140229,,,,,,T,,M,,N,*0D
09:31:46  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:46  $IIGLL,0403.700,S,01243.956,W,140229,A,A*5D
09:31:46  $IIHDG,318.0,,,2,W*26
09:31:46  $IIHDM,318.0,M*28
09:31:46  $IIHDT,316.0,T*26
09:31:46  $IIRSA,0,A,,V*67
09:31:47  $IIMWV,123.5,R,12.3,N,A*08
09:31:47  $IIMWV,178.5,T,355.0,N,A*33
09:31:47  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
09:31:47  $IIVPW,307.30,N,3.01,M*57
09:31:47  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
09:31:47  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
09:31:47  $IIMWD,134.5,T,136.5,M,355.0,N,47.9,M*7F
09:31:47  $IIVLW,762.7,N,49.23,N*45
09:31:47  $IIVTG,319.0,T,321.0,M,4633.6,N,85.3,K*58
09:31:48  $IIBWC,140231,,,,,,T,,M,,N,*04
09:31:48  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:48  $IIGLL,0403.700,S,01243.956,W,140231,A,A*54
09:31:48  $IIHDG,318.0,,,2,W*26
09:31:48  $IIHDM,318.0,M*28
09:31:48  $IIHDT,316.0,T*26
09:31:49  $IIRSA,0,A,,V*67
09:31:49  $IIMWV,123.5,R,12.3,N,A*08
09:31:49  $IIMWV,178.5,T,355.0,N,A*33
09:31:49  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
09:31:49  $IIVPW,307.30,N,3.01,M*57
09:31:49  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
09:31:49  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
09:31:50  $IIBWC,140233,,,,,,T,,M,,N,*06
09:31:50  $IIDBT,2975.3,f,251.74,M,495.88,F*26
09:31:50  $IIGLL,0403.700,S,01243.956,W,140233,A,A*56
09:31:50  $IIHDG,318.0,,,2,W*26
09:31:50  $IIHDM,318.0,M*28
09:31:50  $IIHDT,316.0,T*26
09:31:50  $IIRSA,0,A,,V*67
09:31:51  $IIMWV,123.5,R,12.3,N,A*08
09:31:51  $IIMWV,178.5,T,355.0,N,A*33
09:31:51  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
09:31:51  $IIVPW,307.30,N,3.01,M*57
09:31:51  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
09:31:51  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
09:31:52  $IIBWC,,,,,,,T,,M,,N,*01
09:31:54  $IIBWC,,,,,,,T,,M,,N,*01
09:31:56  $IIBWC,,,,,,,T,,M,,N,*01
09:31:58  $IIBWC,,,,,,,T,,M,,N,*01
I repeated the experiment changing the interval between sent datagrams to be 1 second instead of 200 miliseconds. The following data was obtained:

Code: Select all

10:11:28  $IIBWC,,,,,,,T,,M,,N,*01
10:11:29  $IIBWC,,,,,,,T,,M,,N,*01
10:11:30  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:11:31  $IIBWC,,,,,,,T,,M,,N,*01
10:11:32  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:11:32  $IIMWV,123.5,R,12.3,N,A*08
10:11:32  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:11:34  $IIBWC,,,,,,,T,,M,,N,*01
10:11:34  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:11:34  $IIMWV,123.5,R,12.3,N,A*08
10:11:34  $IIMWV,178.5,T,360.1,N,A*34
10:11:34  $IIVHW,,T,,M,353.28,N,654.22,K*5D
10:11:34  $IIVPW,302.20,N,0.38,M*5A
10:11:34  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:11:34  $IIVWT,178.5,R,360.1,N,50.5,M,181.4,K*7C
10:11:36  $IIMTW,14.0,C*16
10:11:36  $IIVLW,807.1,N,10119.68,N*75
10:11:36  $IIBWC,,,,,,,T,,M,,N,*01
10:11:36  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:11:36  $IIMWV,123.5,R,12.3,N,A*08
10:11:36  $IIMWV,178.5,T,360.1,N,A*34
10:11:36  $IIVHW,,T,,M,353.28,N,654.22,K*5D
10:11:36  $IIVPW,302.20,N,0.38,M*5A
10:11:36  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:11:37  $IIVWT,178.5,R,360.1,N,50.5,M,181.4,K*7C
10:11:38  $IIBWC,,,,,,,T,,M,,N,*01
10:11:38  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:11:38  $IIMWV,123.5,R,12.3,N,A*08
10:11:38  $IIMWV,178.5,T,355.0,N,A*33
10:11:38  $IIVHW,,T,,M,348.18,N,644.78,K*5A
10:11:38  $IIVPW,307.30,N,3.01,M*57
10:11:38  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:11:38  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
10:11:40  $IIBWC,,,,,,,T,,M,,N,*01
10:11:40  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:11:40  $IIMWV,123.5,R,12.3,N,A*08
10:11:40  $IIMWV,178.5,T,355.0,N,A*33
10:11:40  $IIVHW,,T,,M,348.18,N,644.78,K*5A
10:11:40  $IIVPW,307.30,N,3.01,M*57
10:11:40  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:11:40  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
10:11:41  $IIVLW,762.7,N,49.23,N*45
10:11:42  $IIBWC,,,,,,,T,,M,,N,*01
10:11:42  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:11:42  $IIGLL,0447.370,N,01228.330,W,,A,A*48
10:11:42  $IIMWV,123.5,R,12.3,N,A*08
10:11:42  $IIMWV,178.5,T,355.0,N,A*33
10:11:42  $IIVHW,,T,,M,348.18,N,644.78,K*5A
10:11:42  $IIVPW,307.30,N,3.01,M*57
10:11:42  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:11:42  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
10:11:44  $IIBWC,140146,,,,,,T,,M,,N,*07
10:11:44  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:11:44  $IIGLL,0447.370,N,01228.330,W,140146,A,A*4E
10:11:44  $IIMWV,123.5,R,12.3,N,A*08
10:11:44  $IIMWV,178.5,T,355.0,N,A*33
10:11:44  $IIVHW,,T,,M,348.18,N,644.78,K*5A
10:11:44  $IIVPW,307.30,N,3.01,M*57
10:11:44  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:11:44  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
10:11:45  $IIMTW,-10.0,C*3F
10:11:46  $IIZDA,140148,18,11,2018,,*55
10:11:46  $IIVLW,762.7,N,49.23,N*45
10:11:46  $IIVTG,321.0,T,,M,4633.6,N,85.3,K*7D
10:11:46  $IIBWC,140148,,,,,,T,,M,,N,*09
10:11:46  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:11:46  $IIGLL,0403.700,S,01243.956,W,140148,A,A*59
10:11:46  $IIHDG,318.0,,,,*43
10:11:46  $IIHDM,318.0,M*28
10:11:46  $IIMWV,123.5,R,12.3,N,A*08
10:11:46  $IIMWV,178.5,T,355.0,N,A*33
10:11:47  $IIVHW,,T,318.0,M,348.18,N,644.78,K*7E
10:11:47  $IIVPW,307.30,N,3.01,M*57
10:11:47  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:11:47  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
10:11:47  $IIBWC,140150,,,,,,T,,M,,N,*00
10:11:48  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:11:48  $IIGLL,0403.700,S,01243.956,W,140150,A,A*50
10:11:48  $IIHDG,318.0,,,,*43
10:11:48  $IIHDM,318.0,M*28
10:11:48  $IIMWV,123.5,R,12.3,N,A*08
10:11:48  $IIMWV,178.5,T,355.0,N,A*33
10:11:48  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
10:11:48  $IIVPW,307.30,N,3.01,M*57
10:11:48  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:11:48  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
10:11:49  $IIRSA,0,A,,V*67
10:11:50  $IIBWC,140152,,,,,,T,,M,,N,*02
10:11:50  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:11:50  $IIGLL,0403.700,S,01243.956,W,140152,A,A*52
10:11:50  $IIHDG,318.0,,,2,W*26
10:11:50  $IIHDM,318.0,M*28
10:11:50  $IIHDT,316.0,T*26
10:11:50  $IIRSA,0,A,,V*67
10:11:50  $IIMWV,123.5,R,12.3,N,A*08
10:11:50  $IIMWV,178.5,T,355.0,N,A*33
10:11:50  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
10:11:50  $IIVPW,307.30,N,3.01,M*57
10:11:50  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:11:51  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
10:11:51  $IIMWD,134.5,T,136.5,M,355.0,N,47.9,M*7F
10:11:51  $IIVLW,762.7,N,49.23,N*45
10:11:51  $IIVTG,319.0,T,321.0,M,4633.6,N,85.3,K*58
10:11:52  $IIBWC,140154,,,,,,T,,M,,N,*04
10:11:52  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:11:52  $IIGLL,0403.700,S,01243.956,W,140154,A,A*54
10:11:52  $IIHDG,318.0,,,2,W*26
10:11:52  $IIHDM,318.0,M*28
10:11:52  $IIHDT,316.0,T*26
10:11:52  $IIRSA,0,A,,V*67
10:11:52  $IIMWV,123.5,R,12.3,N,A*08
10:11:52  $IIMWV,178.5,T,355.0,N,A*33
10:11:52  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
10:11:52  $IIVPW,307.30,N,3.01,M*57
10:11:52  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:11:52  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
10:11:53  $IIBWC,140156,,,,,,T,,M,,N,*06
10:11:54  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:11:54  $IIGLL,0403.700,S,01243.956,W,140156,A,A*56
10:11:54  $IIHDG,318.0,,,2,W*26
10:11:54  $IIHDM,318.0,M*28
10:11:54  $IIHDT,316.0,T*26
10:11:54  $IIRSA,0,A,,V*67
10:11:54  $IIMWV,123.5,R,12.3,N,A*08
10:11:54  $IIMWV,178.5,T,355.0,N,A*33
10:11:54  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
10:11:54  $IIVPW,307.30,N,3.01,M*57
10:11:54  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:11:54  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
10:11:55  $IIMTW,-10.0,C*3F
10:11:56  $IIZDA,140158,18,11,2018,,*54
10:11:56  $IIHVM,2,W*36
10:11:56  $IIMWD,134.5,T,136.5,M,355.0,N,47.9,M*7F
10:11:56  $IIVLW,762.7,N,49.23,N*45
10:11:56  $IIVTG,319.0,T,321.0,M,4633.6,N,85.3,K*58
10:11:56  $IIBWC,140158,,,,,,T,,M,,N,*08
10:11:56  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:11:56  $IIGLL,0403.700,S,01243.956,W,140158,A,A*58
10:11:56  $IIHDG,318.0,,,2,W*26
10:11:56  $IIHDM,318.0,M*28
10:11:57  $IIHDT,316.0,T*26
10:11:57  $IIRSA,0,A,,V*67
10:11:57  $IIMWV,123.5,R,12.3,N,A*08
10:11:57  $IIMWV,178.5,T,355.0,N,A*33
10:11:57  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
10:11:57  $IIVPW,307.30,N,3.01,M*57
10:11:57  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:11:57  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
10:11:58  $IIBWC,140200,,,,,,T,,M,,N,*06
10:11:58  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:11:58  $IIGLL,0403.700,S,01243.956,W,140200,A,A*56
10:11:58  $IIHDG,318.0,,,2,W*26
10:11:58  $IIHDM,318.0,M*28
10:11:58  $IIHDT,316.0,T*26
10:11:58  $IIRSA,0,A,,V*67
10:11:58  $IIMWV,123.5,R,12.3,N,A*08
10:11:58  $IIMWV,178.5,T,355.0,N,A*33
10:11:58  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
10:11:58  $IIVPW,307.30,N,3.01,M*57
10:11:58  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:11:59  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
10:12:00  $IIBWC,140202,,,,,,T,,M,,N,*04
10:12:00  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:12:00  $IIGLL,0403.700,S,01243.956,W,140202,A,A*54
10:12:00  $IIHDG,318.0,,,2,W*26
10:12:00  $IIHDM,318.0,M*28
10:12:00  $IIHDT,316.0,T*26
10:12:00  $IIRSA,0,A,,V*67
10:12:00  $IIMWV,123.5,R,12.3,N,A*08
10:12:00  $IIMWV,178.5,T,355.0,N,A*33
10:12:00  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
10:12:00  $IIVPW,307.30,N,3.01,M*57
10:12:00  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:12:00  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
10:12:01  $IIMWD,134.5,T,136.5,M,355.0,N,47.9,M*7F
10:12:01  $IIVLW,762.7,N,49.23,N*45
10:12:01  $IIVTG,319.0,T,321.0,M,4633.6,N,85.3,K*58
10:12:01  $IIBWC,140204,,,,,,T,,M,,N,*02
10:12:02  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:12:02  $IIGLL,0403.700,S,01243.956,W,140204,A,A*52
10:12:02  $IIHDG,318.0,,,2,W*26
10:12:02  $IIHDM,318.0,M*28
10:12:02  $IIHDT,316.0,T*26
10:12:02  $IIRSA,0,A,,V*67
10:12:02  $IIMWV,123.5,R,12.3,N,A*08
10:12:02  $IIMWV,178.5,T,355.0,N,A*33
10:12:02  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
10:12:02  $IIVPW,307.30,N,3.01,M*57
10:12:02  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:12:02  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
10:12:03  $IIBWC,140206,,,,,,T,,M,,N,*00
10:12:04  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:12:04  $IIGLL,0403.700,S,01243.956,W,140206,A,A*50
10:12:04  $IIHDG,318.0,,,2,W*26
10:12:04  $IIHDM,318.0,M*28
10:12:04  $IIHDT,316.0,T*26
10:12:04  $IIRSA,0,A,,V*67
10:12:04  $IIMWV,123.5,R,12.3,N,A*08
10:12:04  $IIMWV,178.5,T,355.0,N,A*33
10:12:04  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
10:12:04  $IIVPW,307.30,N,3.01,M*57
10:12:04  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:12:04  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
10:12:05  $IIMTW,-10.0,C*3F
10:12:06  $IIZDA,140208,18,11,2018,,*52
10:12:06  $IIHVM,2,W*36
10:12:06  $IIMWD,134.5,T,136.5,M,355.0,N,47.9,M*7F
10:12:06  $IIVLW,762.7,N,49.23,N*45
10:12:06  $IIVTG,319.0,T,321.0,M,4633.6,N,85.3,K*58
10:12:06  $IIBWC,140208,,,,,,T,,M,,N,*0E
10:12:06  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:12:06  $IIGLL,0403.700,S,01243.956,W,140208,A,A*5E
10:12:06  $IIHDG,318.0,,,2,W*26
10:12:06  $IIHDM,318.0,M*28
10:12:07  $IIHDT,316.0,T*26
10:12:07  $IIRSA,0,A,,V*67
10:12:07  $IIMWV,123.5,R,12.3,N,A*08
10:12:07  $IIMWV,178.5,T,355.0,N,A*33
10:12:07  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
10:12:07  $IIVPW,307.30,N,3.01,M*57
10:12:07  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:12:07  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
10:12:08  $IIBWC,140210,,,,,,T,,M,,N,*07
10:12:08  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:12:08  $IIGLL,0403.700,S,01243.956,W,140210,A,A*57
10:12:08  $IIHDG,318.0,,,2,W*26
10:12:08  $IIHDM,318.0,M*28
10:12:08  $IIHDT,316.0,T*26
10:12:08  $IIRSA,0,A,,V*67
10:12:08  $IIMWV,123.5,R,12.3,N,A*08
10:12:08  $IIMWV,178.5,T,355.0,N,A*33
10:12:08  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
10:12:08  $IIVPW,307.30,N,3.01,M*57
10:12:08  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:12:08  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
10:12:09  $IIBWC,140212,,,,,,T,,M,,N,*05
10:12:09  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:12:10  $IIGLL,0403.700,S,01243.956,W,140212,A,A*55
10:12:10  $IIHDG,318.0,,,2,W*26
10:12:10  $IIHDM,318.0,M*28
10:12:10  $IIHDT,316.0,T*26
10:12:10  $IIRSA,0,A,,V*67
10:12:10  $IIMWV,123.5,R,12.3,N,A*08
10:12:10  $IIMWV,178.5,T,355.0,N,A*33
10:12:10  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
10:12:10  $IIVPW,307.30,N,3.01,M*57
10:12:10  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:12:10  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
10:12:11  $IIMWD,134.5,T,136.5,M,355.0,N,47.9,M*7F
10:12:11  $IIVLW,762.7,N,49.23,N*45
10:12:11  $IIVTG,319.0,T,321.0,M,4633.6,N,85.3,K*58
10:12:11  $IIBWC,140214,,,,,,T,,M,,N,*03
10:12:12  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:12:12  $IIGLL,0403.700,S,01243.956,W,140214,A,A*53
10:12:12  $IIHDG,318.0,,,2,W*26
10:12:12  $IIHDM,318.0,M*28
10:12:12  $IIHDT,316.0,T*26
10:12:12  $IIRSA,0,A,,V*67
10:12:12  $IIMWV,123.5,R,12.3,N,A*08
10:12:12  $IIMWV,178.5,T,355.0,N,A*33
10:12:12  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
10:12:12  $IIVPW,307.30,N,3.01,M*57
10:12:12  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:12:12  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
10:12:13  $IIBWC,140216,,,,,,T,,M,,N,*01
10:12:14  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:12:14  $IIGLL,0403.700,S,01243.956,W,140216,A,A*51
10:12:14  $IIHDG,318.0,,,2,W*26
10:12:14  $IIHDM,318.0,M*28
10:12:14  $IIHDT,316.0,T*26
10:12:14  $IIRSA,0,A,,V*67
10:12:14  $IIMWV,123.5,R,12.3,N,A*08
10:12:14  $IIMWV,178.5,T,355.0,N,A*33
10:12:14  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
10:12:14  $IIVPW,307.30,N,3.01,M*57
10:12:14  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:12:14  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
10:12:15  $IIMTW,-10.0,C*3F
10:12:16  $IIZDA,140218,18,11,2018,,*53
10:12:16  $IIHVM,2,W*36
10:12:16  $IIMWD,134.5,T,136.5,M,355.0,N,47.9,M*7F
10:12:16  $IIVLW,762.7,N,49.23,N*45
10:12:16  $IIVTG,319.0,T,321.0,M,4633.6,N,85.3,K*58
10:12:16  $IIBWC,140218,,,,,,T,,M,,N,*0F
10:12:16  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:12:16  $IIGLL,0403.700,S,01243.956,W,140218,A,A*5F
10:12:16  $IIHDG,318.0,,,2,W*26
10:12:16  $IIHDM,318.0,M*28
10:12:17  $IIHDT,316.0,T*26
10:12:17  $IIRSA,0,A,,V*67
10:12:17  $IIMWV,123.5,R,12.3,N,A*08
10:12:17  $IIMWV,178.5,T,355.0,N,A*33
10:12:17  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
10:12:17  $IIVPW,307.30,N,3.01,M*57
10:12:17  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:12:17  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
10:12:17  $IIBWC,140220,,,,,,T,,M,,N,*04
10:12:18  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:12:18  $IIGLL,0403.700,S,01243.956,W,140220,A,A*54
10:12:18  $IIHDG,318.0,,,2,W*26
10:12:18  $IIHDM,318.0,M*28
10:12:18  $IIHDT,316.0,T*26
10:12:18  $IIRSA,0,A,,V*67
10:12:18  $IIMWV,123.5,R,12.3,N,A*08
10:12:18  $IIMWV,178.5,T,355.0,N,A*33
10:12:18  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
10:12:18  $IIVPW,307.30,N,3.01,M*57
10:12:18  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:12:18  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
10:12:19  $IIBWC,140222,,,,,,T,,M,,N,*06
10:12:20  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:12:20  $IIGLL,0403.700,S,01243.956,W,140222,A,A*56
10:12:20  $IIHDG,318.0,,,2,W*26
10:12:20  $IIHDM,318.0,M*28
10:12:20  $IIHDT,316.0,T*26
10:12:20  $IIRSA,0,A,,V*67
10:12:20  $IIMWV,123.5,R,12.3,N,A*08
10:12:20  $IIMWV,178.5,T,355.0,N,A*33
10:12:20  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
10:12:20  $IIVPW,307.30,N,3.01,M*57
10:12:20  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:12:20  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
10:12:20  $IIMWD,134.5,T,136.5,M,355.0,N,47.9,M*7F
10:12:21  $IIVLW,762.7,N,49.23,N*45
10:12:21  $IIVTG,319.0,T,321.0,M,4633.6,N,85.3,K*58
10:12:21  $IIBWC,140224,,,,,,T,,M,,N,*00
10:12:21  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:12:22  $IIGLL,0403.700,S,01243.956,W,140224,A,A*50
10:12:22  $IIHDG,318.0,,,2,W*26
10:12:22  $IIHDM,318.0,M*28
10:12:22  $IIHDT,316.0,T*26
10:12:22  $IIRSA,0,A,,V*67
10:12:22  $IIMWV,123.5,R,12.3,N,A*08
10:12:22  $IIMWV,178.5,T,355.0,N,A*33
10:12:22  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
10:12:22  $IIVPW,307.30,N,3.01,M*57
10:12:22  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:12:22  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
10:12:23  $IIBWC,140226,,,,,,T,,M,,N,*02
10:12:24  $IIDBT,2975.3,f,251.74,M,495.88,F*26
10:12:24  $IIGLL,0403.700,S,01243.956,W,140226,A,A*52
10:12:24  $IIHDG,318.0,,,2,W*26
10:12:24  $IIHDM,318.0,M*28
10:12:24  $IIHDT,316.0,T*26
10:12:24  $IIRSA,0,A,,V*67
10:12:24  $IIMWV,123.5,R,12.3,N,A*08
10:12:24  $IIMWV,178.5,T,355.0,N,A*33
10:12:24  $IIVHW,316.0,T,318.0,M,348.18,N,644.78,K*54
10:12:24  $IIVPW,307.30,N,3.01,M*57
10:12:24  $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
10:12:24  $IIVWT,178.5,R,355.0,N,47.9,M,172.0,K*79
10:12:25  $IIBWC,,,,,,,T,,M,,N,*01
10:12:27  $IIBWC,,,,,,,T,,M,,N,*01
I think that in order to investigate the operation of the E85001 box I need to send one datagram at a time (that was the reason why I changed the Nmea0183Tester tool to have a button to send just the 1st line of the Transmitting Panel display). A briefly comparison of the first sentences I note that the DBT (Depth Below Transducer which corresponds to datagram ST=00 .... ) was the 1st, 5th, 14th, ... outputted sentence when the time interval was 200 milliseconds and was the 1st, 3rd, 7th, ... when that interval was 1 second. That is natural as the box had not yet data to generate the other sentences. It also shows that it echoes (repeats) the sentences when no new data is received. It stops repeating after a while.

(following in the next post)

Regards Luis

Luis Sa
Site Admin
Posts: 544
Joined: Thu May 04, 2017 4:12 am

Re: Testing and Grabbing SeaTalk1 Datagrams

Post by Luis Sa » Wed Nov 27, 2019 10:32 pm

Hello again,

Now we can take some conclusions. Let us start with DBT (Depth Below Transducer) corresponding to datagram ST=00 02 40 39 74.

Code: Select all

$IIDBT,2975.3,f,251.74,M,495.88,F*26    this from the E85001
$SDDBT,2975.3,f,906.9,M,496.0,F*74      this from the "32ST" multiplexer
The box uses II (Integrated Instrumentation) for the Talker ID and the multiplexer uses SD (Sounder, Depth). I see no reason to change the multiplexer. I note that in the 32ST multiplexer I fill the values for meters and fathoms instead of leaving them blank as in all multiplexer up to version 31 inclusive (see the other post on Depth Conversion). The value in feet is OK and the value in fathoms also looks OK. May be I should round the values to 2 decimal digits. But there is a mismatch on the value of meters and I think the problem is in the box. Before looking to other datagrams I will try to send both Nmea sentences from my tool COM port to the box Nmea Input and connect the SeatTalk output to the P4 input of the 32ST multiplexer, routing P4 to UDP and receive the result in the Receiving Panel of the tool.

If I send $IIDBT,2975.3,f,251.74,M,495.88,F*26 I get this:

Code: Select all

11:15:57  ST=90 00 19
11:15:57  Datagram not converted!
11:16:07  ST=90 00 19
11:16:07  Datagram not converted!
11:16:08  ST=00 02 00 F8 25
11:16:08  $SDDBT,972.0,f,296.3,M,162.0,F*30
11:16:09  ST=00 02 00 F8 25
11:16:09  $SDDBT,972.0,f,296.3,M,162.0,F*30
11:16:11  ST=00 02 00 F8 25
11:16:11  $SDDBT,972.0,f,296.3,M,162.0,F*30
11:16:12  ST=00 02 00 F8 25
11:16:12  $SDDBT,972.0,f,296.3,M,162.0,F*30
11:16:13  ST=00 02 00 F8 25
11:16:13  $SDDBT,972.0,f,296.3,M,162.0,F*30
11:16:14  ST=00 02 00 F8 25
11:16:14  $SDDBT,972.0,f,296.3,M,162.0,F*30

As we see the Box transmits every 10 seconds datagram ST=90 00 19 that the 32ST accepts as valid but does not know how to convert to Nmea0183. This datagram means Identification where the byte = 19 should mean the E85001 box. As the moment of writing I do not understand where the box got the pair F8 25 that reversing to 25 F8 is equal to 9720 in decimal that divided by 10 gives the result of 972 Feet. Even worst the box does not responds to $SDDBT,2975.3,f,906.9,M,496.0,F*74 nor to the $SDDBT,2975.3,f,,,,*?? that version 31 is using. So I will have to check many things. The 1st one is to check if it is because of the SD ID instead of II that causes the box not to respond. And, mainly I will try to fully understand the meaning of the 3rd byte that the box sents out as 00. I started with 04 which is probably wrong. Tomorrow I will continue these findings!

Regards, Luis

Luis Sa
Site Admin
Posts: 544
Joined: Thu May 04, 2017 4:12 am

Re: Testing and Grabbing SeaTalk1 Datagrams

Post by Luis Sa » Thu Nov 28, 2019 1:29 am

Hello,

I think I found the strategy for datagram 00 (Depth Below Transducer). Here is what we see in Thomas Knauf document

Code: Select all

 00  02  YZ  XX XX  Depth below transducer: XXXX/10 feet
                       Flags in Y: Y&8 = 8: Anchor Alarm is active
                                  Y&4 = 4: Metric display units or
                                           Fathom display units if followed by command 65
                                  Y&2 = 2: Used, unknown meaning
                      Flags in Z: Z&4 = 4: Transducer defective
                                  Z&2 = 2: Deep Alarm is active
                                  Z&1 = 1: Shallow Depth Alarm is active
                    Corresponding NMEA sentences: DPT, DBT
After feeding the Raymarine E85001 box with different values, the last 2 bytes always mean XXXX = 10 * Depth in Feet.
Regarding the YZ flag the only difference is when Z&4=4 as in the case of ST[2] = 4 meaning a defective transducer. See below that the fields for feet, meter and fathom are blank. Values of Depth are always correct for Feet and Fathom. However, for Meters, they only are OK up to Depth of 2149.5 feet corresponding to XX XX = F7 53 and giving 655.34 meters. The next value of F8 53 gives 0.01 meters. I am not sure if this is an error of the box or if I should deal with that. I will not. Depth is already greater than 655 meters. So I will revise the conversion to check Z&4 = 4. I will also need to decide if I shall use ID=II or ID=SD. I will also supply the 3 values for feet meters and fathoms instead of feet only, as I do in version 31. Here are the results that justify what I wrote.

Code: Select all

22 39 is in decimal 8761 meaning 876.1 Feet

ST=00 02 00 39 22   ST[2]=00 normal case
$IIDBT,876.1,f,267.10,M,146.01,F*19

ST=00 02 01 39 22   ST[2]=01 shallow depth alarm active
$IIDBT,876.1,f,267.10,M,146.01,F*19

ST=00 02 02 39 22   ST[2]=01 deep alarm active
$IIDBT,876.1,f,267.10,M,146.01,F*19

ST=00 02 04 39 22   ST[2]=04 defective
$IIDBT,,f,,M,,F*3F

ST=00 02 40 39 22   ST[2]=40 metric display units or ...
$IIDBT,876.1,f,267.10,M,146.01,F*19

now with big depth 39 77 
77 39 is in decimal 30521 meaning 3052.1 Feet

ST=00 02 00 39 77      !!! wrong value of meters!
$IIDBT,3052.1,f,275.16,M,508.68,F*20

with trial and error I found that the error occurs in the transition from f7 53 to F8 53

ST=00 02 00 F7 53      !!! OK here
$IIDBT,2149.5,f,655.34,M,358.25,F*22

ST=00 02 00 F8 53      !!! not OK here
$IIDBT,2149.6,f,0.01,M,358.26,F*22
Regards, Luis

Luis Sa
Site Admin
Posts: 544
Joined: Thu May 04, 2017 4:12 am

Re: Testing and Grabbing SeaTalk1 Datagrams

Post by Luis Sa » Fri Nov 29, 2019 1:41 am

Hello,

(if someone is following this article and has downloaded firmware "32ST" please download it again because I changed that just before writing this in order to redifine the evaluation of the checksum of the Nmea0183 sentences on the "32ST")

About datagram ST=00 (depth below transducer)

As before the E85001 does the following:

Code: Select all

converts datagram ST=00 02 00 39 22     to     $IIDBT,876.1,f,267.10,M,146.01,F*19
the "32ST" firmware with the checksum corrected:

Code: Select all

converts datagram ST=00 02 00 39 22     to     $SDDBT,876.1,f,267.0,M,146.0,F*0E
And if I send any of the 3 following sentences to the box it responds with ST=00 02 00 39 22.

Code: Select all

box converts to ST=00 02 00 39 22   when it receives $IIDBT,876.1,f,267.10,M,146.01,F*19
box converts to ST=00 02 00 39 22   when it receives $SDDBT,876.1,f,267.0,M,146.0,F*0E
box converts to ST=00 02 00 39 22   when it receives $SDDBT,876.1,f,,,,*05
So everything is clear now. The Box was not accepting the $SDDBT's before, because there was a wrong checksum. This finalizes the inspection of the "00" datagram. Now I will look to the other ones.

Regards Luis

Luis Sa
Site Admin
Posts: 544
Joined: Thu May 04, 2017 4:12 am

Re: Testing and Grabbing SeaTalk1 Datagrams

Post by Luis Sa » Sun Dec 01, 2019 2:05 am

Hello,

About datagrams ST=10 (apparent wind angle) and ST=11 (apparent wind speed)

In the multiplexer firmware 31 when ST=10 is received the angle extracted from the datagram is stored in a variable called AppWindAng. No Nmea0183 sentence is generated. When ST=11 is received a Nmea0183 sentence is generated using the speed extracted from the datagram and, for the angle, the value of AppWindAng variable. If no ST=10 datagram has been received since the multiplexer has been powered on, a blank is filled in the Nmea0183 sentence in the place of the angle. If just one ST=10 is received the value stored in AppWindAng will be always used in future sentences converted from ST=11. I could specify an "age" for the AppWindAng, so that it would be forgotten if was received more than 5 seconds ago. However I will not follow that approach for the moment. I could generate a Nmea0183 sentence after ST=10 as, for example, it happens on the Raymarine E85001 box (using a blank in the place of speed if no ST=11 has been received since power up). Again I will keep the present implementation as ST=10 and ST=11 will appear one after the other, so I think.

Another difference from the multiplexer firmware 31 in relation to the Raymarine E85001 box is that the box sends out 2 sentences, MWV and VWR both using ID=II (Integrated Instrumentation). The multiplexer only sends MWV with ID=WI (Weather Instruments). I will not change the multiplexer software. The MWV sends the angle and the speed in Knots. The VWR sends exactly the same followed by speed in meters/second and speed in kilometers per hour. I also noted that the in datagram ST=11 the box ignores the 1st bit of ST[2] that in Tomhas Knauf document is said to be used for display units.

If no ST=11 has been received yet, the box:

Code: Select all

converts datagram ST=10 01 00 F7     to     $IIMWV,123.5,R,,N,A*16
                                    and     $IIVWR,123.5,R,,,,,,*2A
When ST=11 is received (after a ST=10), the box:

Code: Select all

converts datagram ST=11 01 0C 03     to     $IIMWV,123.5,R,12.3,N,A*08
                                    and     $IIVWR,123.5,R,12.3,N,6.3,M,22.8,K*41
The 32ST multiplexer responds this way

Code: Select all

converts datagram ST=10 01 00 F7     to     Auxiliar value stored!
converts datagram ST=11 01 0C 03     to     $WIMWV,123.5,R,12.3,N,A*16
We can see that both MWV are the same:

Code: Select all

from the box     ...    $IIMWV,123.5,R,12.3,N,A*08
from the 32ST    ...    $WIMWV,123.5,R,12.3,N,A*16
or if no ST[10] has yet been received:
from the 32ST    ...    $WIMWV,,R,12.3,N,A*3D

Luis Sa
Site Admin
Posts: 544
Joined: Thu May 04, 2017 4:12 am

Re: Testing and Grabbing SeaTalk1 Datagrams

Post by Luis Sa » Sun Dec 01, 2019 2:41 am

Hello

About datagrams ST=20 and ST=26 (speed through water)

First I present the results using ST=20 01 AF 01

Code: Select all

box responds with     $IIVHW,,T,,M,43.10,N,79.81,K*54
32ST responds with    $VWVHW,,,,,43.1,N,,,*32
we note that the bytes AF 01 are read as 01 AF which converted to decimal give 431. We divide by 10 to get the speed which is 43.1 knots. I am not sure if I need to add the redundant speed value in km/hour (79.81). I will keep my implementation. Also I will not add the fields T (true) and M (magnetic) as there blanks before. I need to correct the number of ",". I am generating 9 instead of 8. I also noted that for very large speeds, the box is wrong as already noted with very large depths. For example datagram ST=20 01 AF 91 corresponds 3729.5 knots and the outputs are:

Code: Select all

box responds with     $IIVHW,,T,,M,452.70,N,182.97,K*54
32ST responds with    $VWVHW,,,,,3729.5,N,,,*3E
I also keep the ID. ID=VD (means speed sensor, water, mechanical)

Now we turn our attention to datagram ST=26. The 32ST responds this way:

Code: Select all

ST=26 04 80 01 00 10 00
$VWVHW,,,,,3.84,N,,,*3B
and the Raymarine box:

Code: Select all

ST=26 04 80 01 02 10 00
$IIVHW,,T,,M,3.84,N,7.11,K*5D
I noted that very large and surrealistic values of speed are not well converted by the box. I need to remove one of the commas as in datagram ST=20. In both cases I will add km/hour if someone tells me it is needed.

Edited after analysis of datagrams ST=84 ST=89 and ST=99: The 32ST will fill the values for Compass Heading if the referred to datagrams have arrived before. So for a sequence like this, we get:

Code: Select all

ST=99 00 02
Auxiliar value stored!
ST=84 36 D8 5A 00 00 00 00 00
$HCHDG,318,,,2,W*33
ST=89 32 18 00 00
$HCHDG,318,,,2,W*33
ST=26 04 80 01 00 10 00
$VWVHW,,,318,M,3.84,N,,,*4C

Regards, Luis

Luis Sa
Site Admin
Posts: 544
Joined: Thu May 04, 2017 4:12 am

Re: Testing and Grabbing SeaTalk1 Datagrams

Post by Luis Sa » Tue Dec 03, 2019 9:33 pm

Hello

About datagrams ST=21 (trip mileage) and ST=22 (total mileage)

The 32ST responds to trip mileage:

Code: Select all

ST=21 02 00 71 0F
Auxiliar value stored!
and to total mileage:

Code: Select all

ST=22 02 87 1F 00
Auxiliar value stored!
these 2 values were the first received after power up, Repeating we get from the 32ST for trip mileage:

Code: Select all

ST=21 02 00 71 0F
$IIVLW,807.1,N,10119.68,N*75
and for total mileage:

Code: Select all

ST=22 02 87 1F 00
Auxiliar value stored!
Before we examine the response of the Raymarine E85001 bridge let us see the Thomas Knauf description of the datagrams and the meaning of the VLW sentence

Code: Select all

 21  02  XX  XX  0X  Trip Mileage: XXXXX/100 nautical miles
 22  02  XX  XX  00  Total Mileage: XXXX/10 nautical miles

Code: Select all

VLW - Distance Traveled through Water
        1   2 3   4 5   6  7  8  9
        |   | |   | |   |  |  |  |
 $--VLW,x.x,N,x.x,N,x.x,N,x.x,N*hh<CR><LF>
Field Number:
1. Total cumulative water distance, nm
2. N = Nautical Miles
3. Water distance since Reset, nm
4. N = Nautical Miles
5. Total cumulative ground distance, nm (NMEA 3 and above)
6. N = Nautical Miles (NMEA 3 and above)
7. Ground distance since reset, nm (NMEA 3 and above)
8. N = Nautical Miles (NMEA 3 and above)
9. Checksum
After power up and in the first time the Raymarine bridge receives these datagrams it respond to trip mileage:

Code: Select all

ST=21 02 00 71 0F
$IIVLW,,N,10119.68,N*55
and to total mileage;

Code: Select all

ST=22 02 87 1F 00
$IIVLW,807.1,N,,N*6D
But after that it responds in the same way to both datagrams:

Code: Select all

ST=21 02 00 71 0F  or ST=22 02 87 1F 00
$IIVLW,807.1,N,10119.68,N*75
Now we can compare the responses of the 32ST and the Raymarine bridge:

Code: Select all

$IIVLW,807.1,N,10119.68,N*75   from the Raymarine in response to either ST=21 or ST=22
$IIVLW,807.1,N,10119.68,N*75   from the 32ST in response to ST=21
.

Conclusion: I will revise the conversion and I do not wait for ST=22 in order to output the VLW sentence when ST=21 is received. I will also use a timer to forget each the stores value. Will set this value to 20 seconds. For example If I receive ST=22 I will generate the VLW sentence using the just received "total cumulative water distance" and filling with blanks the "water distance since reset" if the last ST=21 was received more than 20 seconds ago.

Regards, Luis

Post Reply