The NMEA 2000 J1939-based communication for navigation systems in marine applications
The National Marine Electronics Association (NMEA) is developing a data communication standard for ship-board electronic devices. The NMEA Standards Committee Working Group 2000 has decided to use the CAN protocol as data link layer, and high-speed transceivers according to ISO 11898-2 as physical layer. The chosen higher-layer protocol is based on J1939 and ISO 11783. Some marine-specific additions will be defined within the NMEA 2000 communication and application profile specification.
The use of the 29-bit identifier is the very same as specified in J1939-21 and ISO 117873-3: the first three bits of the identifier are used to assign priority to a message, the other ID-fields are used to transmit the parameter group number (PGN) describing the content of the message, the destination and the source address. Messages may be assigned to a specific node or broadcasted to all nodes. The specification supports up to 254 virtual nodes in one CAN network.
Messages that have eight byte or less are transmitted as a single CAN frame. For longer messages one of two methods may be used. Multi-packet data up to 1,785 byte may be sent according to the ISO 11783-3 protocol that places data in a transport "envelope" and transmits it to either a global or specific destination. Flow control is provided so that when sending data to a specific address the receiver can start, stop, and control the data flow. Unfortunately, when data is transmitted this way its identity is lost until the "envelope" is opened up to find out what data has been received. Because many of the messages envisioned for use with NMEA 2000 are likely to exceed 8-byte (most are probably less than 20 to 30 byte), NMEA 2000 allows the use of Fast-packet transmission for up to 256-byte data with its own identity. This method allows sequential frames to be sent; a single data byte in the first frame is used to specify the size of the entire data and each additional frame uses one data byte as a frame counter.
Another addition to J1939 and ISO 11783-3 is to provide standard messages for requesting data or commanding another device, and an acknowledgement message to be used when the request or command cannot be complied with. Command messages may be used to set values or cause actions to be taken in the receiving devices. Request messages allow for example requesting way-point information by specifying the way-point name (or number), a filed within the way-point information message.
NMEA 2000 physical layer
The NMEA 2000 Working Group defined the physical layer including cables and connectors. The chosen data rate is 250 kbit/s, allowing a maximum network length of 200 meters. The transceiver chips have to be compliant to ISO 11898-2. For critical applications, it may be necessary to employ fail-safe designs (e.g. dual network, redundant cable and two CAN controller chips). However, these methods are not in the scope of the NMEA 2000 standard.
The physical layer specification allows the use of the vessel's 12-V battery to power the network, if the length of the network cable and the number of nodes are small enough, instead of the use of more expensive, regulated power supply that were required in the first proposal. In all cases the power and common ground for the interface circuits must not connect to other power or ground in a network device. How to achieve this isolation is not specified, but opto-couplers will be one of the preferred solutions. Another way is that the very same power supply is used to also power the device application. This may be suitable for simple sensors and small displays.
In addition NMEA 2000 implementations have to meet the durability and resistance to environmental conditions as described in section 8 and the unwanted electromagnetic emissions and the immunity to electromagnetic environment conditions of section 9 and 10 of IEC 60945. The standard will allow two methods for connections to the CAN backbone via standard connectors or barrier strips. These connections are used for connecting segments of backbone cables together (e.g. termination resistors, power source, and devices). The drop cable may be connected manufacturer-specifically to the device. Barrier strips are just recommended when the connection is made in a protected location, or when they are installed in a weather-proof enclosure. Their position must be either numbered or color-coded in accordance with the NMEA 2000 standard. The connector selected for the backbone is a 5-pin open-style connector as used in many industrial applications. Those connectors are available as 3-port T-connectors from different manufacturers. Two cable sizes are defined: NMEA 2000 heavy cable (5-wire with two shielded twisted-pair and a common shield drain wire) as well as NMEA 2000 light cable.
The NMEA 2000 application profile defines the content of the messages. The content is identified by the parameter group number (PGN) transmitted in the identifier field as either an 8-bit or 16-bit value depending on whether the group is designed as an addressed or a broadcast message. Most of the parameter groups are broadcasted. Depending on the amount of data, the parameter group may require one or more CAN frames to transmit the data. The data content for all parameter groups is structured like a data dictionary. Each entry item is of a defined format, usually representing the physical parameter.
Besides application parameter groups, the NMEA 2000 standard will specify network management parameter groups. The network management is very similar to J1939-81 and ISO 11783-5 documents. It is responsible for claim and assignment of network addresses, identification of devices, and network initialization after power-on. Each node is required to have an address. Address number 255 is reserved as global address for broadcast transmission, and 254 is used as a null address for indicating when an address cannot be found.
Regarding addressing, ISO 11783-5 defines different types of devices. All NMEA 2000 compliant devices have to be self-configurable and capable of claiming addresses as specified in ISO 11783-5. Besides the device name in Address Claim message, NMEA 2000 specifies additional information about the device. There are separate messages for model number, product version, software version, etc. The NMEA 2000 request message may be used to search fields of these messages and the Name message for building a map of the network to identify the number and types of devices connected.


