Skip to content
ENDIGE BOATING

ENDIGE BOATING

Boats, boat electronics and software

  • Home
  • My boat
  • My electronics and software
  • Products and Downloads
  • English
    • Suomi
  • Home
  • NMEA 2000 PGN’s deciphered

NMEA 2000 PGN’s deciphered

Posted on January 7, 2021January 7, 2021 By Jaykay No Comments on NMEA 2000 PGN’s deciphered
Commercial marine equipment and products, Boating electronics and hardware, Boating software, Sensors, cameras and IoT

NMEA 2000 (standardized as IEC 61162-3), abbreviated NMEA2k or N2K, is a plug-and-play communications standard, which is used on boats and ships to connect together devices, displays and sensors. The speed of the NMEA 2000 bus is 250 kbit/s and it enables sensors and displays and any other NMEA 2000 compatible devices to “discuss” together. Electrically NMEA 2000 is compatible with Controller Area Network (“CAN bus”), which is used in gasoline and diesel powered (road) vehicles. NMEA 2000 protocol is based on SAE J1939, which has been expanded by marine-specific messages. The biggest difference between J1939 and NMEA 2000, in addition to the marine-specific messages, is that in J1939 the device and sensor IDs are hard-coded whereas in NMEA 2000, the addresses are negotiated when a new device joins the network. This makes NMEA 2000 a plug-and-play -type network. Majority of NMEA 2000 and J1939 messages are of a broadcast-type with no destination address specified. Because of this, no request-type messages are needed.

Raymarine SeaTalk 2, Raymarine SeaTalkNG, Simrad Simnet and Furuno CAN are rebranded NMEA 2000 networks, but use a different physical connector than the standard DeviceNet Micro-C M12 connector.

NMEA 2000 message structure

A 29-bit ID is used in NMEA 2000 (J1939) and the structure is as follows

PRIORITY (PRIO)RESERVED (R)DATA PAGE (DP)PDU FORMAT (PF)PDU SPECIFIC (PS)SOURCE ADDRESS (SA)
3 bits1 bit1 bit8 bits8 bits8 bits
Structure of the 29-bit ID, PGN marked with blue color

First three bits (PRIO) specify the priority of the message, zero being the highest priority. Time-critical control messages (like engine control) usually get a high priority whereas less critical messages (such as speed) get a lower priority.

Next bit (R) is reserved for the future and should therefore be set to zero.

Next bit is the data page -selector (DP). That expands the possible PGN-space that the ID can be used for.

PDU format (PF) specifies if the message is a broadcast message or addressed to a certain device. PDU comes from Protocol Data Unit.

The meaning of the PDU specific -field (PS) depends on the value of PF as follows

  • IF PF is between 0 and 239, the message has an address (PDU1) and PS-field contains the address.
  • If PF is between 240 and 255, the message is a broadcast-message (PDU2) and PS-field contains the Group Extension. Group Extensions expand the available PGNs that can be broadcast to the network.

The last 8 bits of the ID contain the source ID (address) of the sending device. Each device must have its unique ID and there can only be 254 different ID’s in the network. However, only 50 devices can be simultaneously physically connected to the network.

Term Parameter Group Number (PGN) is used to refer to the 18-bit group of the Reserve bit, DP, DF and PS, which have been marked with blue on the table above.

Examples

Example: ID 0x1F50BEE in binary form is 000 000 0 1 11110101 00001011 11101110 and it can be divided into the following fields

0x010xF50x0B0xEE
00000001111101010000101111101110
–PrioRDPPFPSSA
PGN example
  • First three bits are not in use (000)
  • Prio, R and DP (3+1+1 bits) = 0x01 (000 0 1)
  • PF (8 bits) = 0xF5 = 245, which means this is a broadcast-message (PDU2)
  • PS (8 bits) = 0x0B, which means Group Extension = 11
  • SA (8 bits) = 0xEE = 238

PGN = R, DP, PF and PS -fields – in this case 0x1F50B (which is PGN 128267)

ID 0xDF50BEE also contains PGN 128267, but it cannot be directly seen from the HEX-value, because priority-bits are not 000 here. To get the PGN out from this, the HEX must first be translated into a binary number as follows

0x0D0xF50x0B0xEE
00001101111101010000101111101110
–PrioRDPPFPSSA
PGN example

Then we take the binary of the PGN (R, DP, PF and PS) which is 0 1 11110101 00001011 and translate that into HEX, which is 0x1F50B (PGN 128267).

List of NMEA 2000 PGN’s

Below is the list of NMEA 2000 PGN’s (source Yacht Devices).

PGNHEXSISÄLTÖ
653110x0FF1FMagnetic Variation (Raymarine Proprietary)
1269920x1F010System Time
1272370x1F105Heading/Track Control
1272450x1F10DRudder
1272500x1F112Vessel Heading
1272510x1F113Rate of Turn
1272580x1F11AMagnetic Variation
1274880x1F200Engine Parameters, Rapid Update
1282590x1F503Speed, Water referenced
1282670x1F50BWater Depth
1282750x1F513Distance Log
1290250x1F801Position, Rapid Update
1290260x1F802COG & SOG, Rapid Update
1290290x1F805GNSS Position Data
1290330x1F809Local Time Offset
1290440x1F814Datum
1292830x1F903Cross Track Error
1292840x1F904Navigation Data
1292850x1F905Navigation — Route/WP information
1292910x1F90BSet & Drift, Rapid Update
1295390x1FA03GNSS DOPs
1295400x1FA04GNSS Sats in View
1300660x1FC12Route and WP Service — Route/WP— List Attributes
1300670x1FC13Route and WP Service — Route — WP Name & Position
1300740x1FC1ARoute and WP Service — WP List — WP Name & Position
1303060x1FD02Wind Data
1303100x1FD06Environmental Parameters
1303110x1FD07Environmental Parameters
1303120x1FD08Temperature
1303130x1FD09Humidity
1303140x1FD0AActual Pressure
1303160x1FD0CTemperature, Extended Range
1290380x1F80EAIS Class A Position Report
1290390x1F80FAIS Class B Position Report
1290400x1F810AIS Class B Extended Position Report
1290410x1F811AIS Aids to Navigation (AtoN) Report
1297930x1FB01AIS UTC and Date Report
1297940x1FB02AIS Class A Static and Voyage Related Data
1297980x1FB06AIS SAR Aircraft Position Report
1298090x1FB11AIS Class B “CS” Static Data Report, Part A
1298100x1FB12AIS Class B “CS” Static Data Report, Part B

Share this:

  • Twitter
  • Facebook
  • LinkedIn
  • WhatsApp
  • Reddit

Related

Tags: J1939 nmea nmea2000 PGN

Post navigation

❮ Previous Post: Testing Artificial Intelligence (deep neural networks) for maritime collision avoidance
Next Post: Designing a commercial marine chartplotter – not as easy as it may sound like ❯

Leave a ReplyCancel reply

Cart

Categories

  • Boats general
  • Boating software
    • OpenCPN
    • Mobile apps
  • Boating electronics and hardware
    • Sensors, cameras and IoT
    • Displays
    • Control devices
    • 3D printing
  • Commercial marine equipment and products
  • Nautical charts
  • Finland-specific

Subscribe to posts



Search

Tags

Aquador 32C archipelago aspect ratio boat hooks brutally honest opinions™ code dashboard DIY DYI finland fix fuel station Furuno gasoline glass cockpit gpx instructions islands issue keyboard kimppavene lakes marine engine marine gear nmea nmea0183 nmea2000 Nord Star 31 no wash oesenc osaomistus outboard pod drive Radio Ocean RO4800 selecting a boat shaft drive shortcuts sopimus speed limit stern drive Tristan 315 työkalut vector chart waypoints
  • About this blog
  • Contact
  • RSS
  • Privacy Policy
  • Suomi

Copyright © 2025 ENDIGE BOATING.

Theme: Oceanly by ScriptsTown