OpenMarine
CAN0 PGN-126996 malformed - Printable Version

+- OpenMarine (https://forum.openmarine.net)
+-- Forum: OpenPlotter (https://forum.openmarine.net/forumdisplay.php?fid=1)
+--- Forum: Bug Reports (https://forum.openmarine.net/forumdisplay.php?fid=4)
+--- Thread: CAN0 PGN-126996 malformed (/showthread.php?tid=5736)



CAN0 PGN-126996 malformed - loutre - 2024-10-01

Hi,

When sniffing the CANbus I realise SignalK server is sending a broken pgn-126996 (0x1F014) messages, this trigger the Garmin Multi-Function Display to keep asking for it and generating lots of noise on the NMEA bus.

Signalk version: 2.11.0
OpenPlotter: latest
CPU: RPI 5, 8Gb with SDD
HAT:  PICAN-M

Details:

can0  18EA6400  [3]  14 F0 01
--> priority 6, pgn 0xEA00, destination 0x64 (SignalK), source 0x00 (Garmin Multi Function Display), request for pgn 0x01F014

can0  0DF01464  [8]  40 86 20 D6 9B 02 53 69
can0  0DF01464  [8]  41 67 6E 61 6C 20 4B FF
can0  0DF01464  [8]  42 FF FF FF FF FF FF FF
can0  0DF01464  [8]  43 FF FF FF FF FF FF FF
can0  0DF01464  [8]  44 FF FF FF FF FF FF FF
can0  0DF01464  [8]  45 FF FF 32 2E 31 30 2E
can0  0DF01464  [8]  46 30 FF FF FF FF FF FF
can0  0DF01464  [8]  47 FF FF FF FF FF FF FF
can0  0DF01464  [8]  48 FF FF FF FF FF FF FF
can0  0DF01464  [8]  49 FF FF FF FF FF FF 63
can0  0DF01464  [8]  4A 61 6E 62 6F 61 74 6A
can0  0DF01464  [8]  4B 73 FF FF FF FF FF FF
--> priority 3, pgn 0x1F014, destination 0xFF(all), source 0x64(Signalk), message length -> 134 bytes long (0x40 0x86).
The issue: the message is 77bytes long and not 134 bytes long.

If I compare with another device and I compare I will have:
can0  19F01477  [8]  40 86 35 08 9A 02 44 75
can0  19F01477  [8]  41 76 69 76 69 65 72 20
can0  19F01477  [8]  42 4D 61 72 69 6E 65 20
can0  19F01477  [8]  43 2D 20 54 61 6E 6B 20
can0  19F01477  [8]  44 73 65 6E 73 6F 72 FF
can0  19F01477  [8]  45 FF FF 70 79 74 68 6F
can0  19F01477  [8]  46 6E 20 30 2E 31 61 FF
can0  19F01477  [8]  47 FF FF FF FF FF FF FF
can0  19F01477  [8]  48 FF FF FF FF FF FF FF
can0  19F01477  [8]  49 FF FF FF FF FF FF 74
can0  19F01477  [8]  4A 65 73 74 20 30 2E 31
can0  19F01477  [8]  4B 61 FF FF FF FF FF FF
can0  19F01477  [8]  4C FF FF FF FF FF FF FF
can0  19F01477  [8]  4D FF FF FF FF FF FF FF
can0  19F01477  [8]  4E FF FF FF 30 30 30 30
can0  19F01477  [8]  4F 30 30 30 31 FF FF FF
can0  19F01477  [8]  50 FF FF FF FF FF FF FF
can0  19F01477  [8]  51 FF FF FF FF FF FF FF
can0  19F01477  [8]  52 FF FF FF FF FF FF FF
can0  19F01477  [8]  53 00 01 FF FF FF FF FF
--> priority 6, pgn 0x1F014, destination 0xFF(all), source 0x77(My own development), message length -> 134 bytes long (0x40 0x86).
This message is 134 bytes and understood by the Garmin (address 0x00).

Thanks in advance 
Bertrand Duvivier


RE: CAN0 PGN-126996 malformed - loutre - 2024-10-01

(2024-10-01, 12:42 PM)loutre Wrote: Working with SignalK to get it resolve ;-)

Hi,

When sniffing the CANbus I realise SignalK server is sending a broken pgn-126996 (0x1F014) messages, this trigger the Garmin Multi-Function Display to keep asking for it and generating lots of noise on the NMEA bus.

Signalk version: 2.11.0
OpenPlotter: latest
CPU: RPI 5, 8Gb with SDD
HAT:  PICAN-M

Details:

can0  18EA6400  [3]  14 F0 01
--> priority 6, pgn 0xEA00, destination 0x64 (SignalK), source 0x00 (Garmin Multi Function Display), request for pgn 0x01F014

can0  0DF01464  [8]  40 86 20 D6 9B 02 53 69
can0  0DF01464  [8]  41 67 6E 61 6C 20 4B FF
can0  0DF01464  [8]  42 FF FF FF FF FF FF FF
can0  0DF01464  [8]  43 FF FF FF FF FF FF FF
can0  0DF01464  [8]  44 FF FF FF FF FF FF FF
can0  0DF01464  [8]  45 FF FF 32 2E 31 30 2E
can0  0DF01464  [8]  46 30 FF FF FF FF FF FF
can0  0DF01464  [8]  47 FF FF FF FF FF FF FF
can0  0DF01464  [8]  48 FF FF FF FF FF FF FF
can0  0DF01464  [8]  49 FF FF FF FF FF FF 63
can0  0DF01464  [8]  4A 61 6E 62 6F 61 74 6A
can0  0DF01464  [8]  4B 73 FF FF FF FF FF FF
--> priority 3, pgn 0x1F014, destination 0xFF(all), source 0x64(Signalk), message length -> 134 bytes long (0x40 0x86).
The issue: the message is 77bytes long and not 134 bytes long.

If I compare with another device and I compare I will have:
can0  19F01477  [8]  40 86 35 08 9A 02 44 75
can0  19F01477  [8]  41 76 69 76 69 65 72 20
can0  19F01477  [8]  42 4D 61 72 69 6E 65 20
can0  19F01477  [8]  43 2D 20 54 61 6E 6B 20
can0  19F01477  [8]  44 73 65 6E 73 6F 72 FF
can0  19F01477  [8]  45 FF FF 70 79 74 68 6F
can0  19F01477  [8]  46 6E 20 30 2E 31 61 FF
can0  19F01477  [8]  47 FF FF FF FF FF FF FF
can0  19F01477  [8]  48 FF FF FF FF FF FF FF
can0  19F01477  [8]  49 FF FF FF FF FF FF 74
can0  19F01477  [8]  4A 65 73 74 20 30 2E 31
can0  19F01477  [8]  4B 61 FF FF FF FF FF FF
can0  19F01477  [8]  4C FF FF FF FF FF FF FF
can0  19F01477  [8]  4D FF FF FF FF FF FF FF
can0  19F01477  [8]  4E FF FF FF 30 30 30 30
can0  19F01477  [8]  4F 30 30 30 31 FF FF FF
can0  19F01477  [8]  50 FF FF FF FF FF FF FF
can0  19F01477  [8]  51 FF FF FF FF FF FF FF
can0  19F01477  [8]  52 FF FF FF FF FF FF FF
can0  19F01477  [8]  53 00 01 FF FF FF FF FF
--> priority 6, pgn 0x1F014, destination 0xFF(all), source 0x77(My own development), message length -> 134 bytes long (0x40 0x86).
This message is 134 bytes and understood by the Garmin (address 0x00).

Thanks in advance 
Bertrand Duvivier