CAN bus communications

Platform:

OEM719, OEM729, OEM7500, OEM7600, OEM7700, OEM7720, PwrPak7, CPT7, CPT7700, SMART7, SMART2

Controller Area Network CAN) is a communication medium which allows for data exchange between devices using a multi-master serial data communication model. The main advantage of CAN is that multiple devices can communicate through two inexpensive wires that act as a BUS

All OEM7 receivers support CAN bus communications.

CAN bus support on OEM7 receivers

Receivers

Number of
CAN ports

Maximum
data rate

OEM719, OEM729, OEM7600, OEM7700 and OEM7720

2

1 Mbps

PwrPak7, SMART7, CPT7, CPT7700 and OEM7500

1

1 Mbps

SMART2

1

500 kbits/s

The OEM7 receivers support the following CAN protocols:

  • NMEA2000: used for standard as well as NovAtel-proprietary messages (transmitting only)

  • J1939 Transport and Extended Transport Protocol: used for corrections and NovAtel messages (both transmitting and receiving)
    (Not supported on the SMART2)

CAN messages can also be read from or written to a CAN port using OEM7 commands and logs. This is typically implemented using the NovAtel API. For more information refer to Using Lua to access I/O devices connected to the receiver.

Note that if J1939 or NMEA protocol is enabled using the CANCONFIG command, the user CAN access commands will be rejected.

The SMART2 requires an Advanced CAN Bus (-C) software model to read and write CAN bus messages using commands and logs

By default, CAN is disabled on OEM7 receivers. Critical CAN configuration parameters such as Parameter Group Numbers (PGNs), addresses and priorities are system-specific and must be explicitly configured.

The addresses and PGNs are typically allocated when the overall CAN bus topology is determined. On OEM7 receiver cards with two CAN ports, the receiver can operate on 2 CAN buses concurrently, it can run 0, 1 or 2 CAN Nodes. A Node has a unique CAN J1939 NAME and address.

There are no CAN transceivers on the OEM7 receiver cards. These cards require external CAN transceivers and proper bus terminations. See CAN controller ports for an example of a CAN transceiver circuit.

The PwrPak7, CPT7, CPT7700, SMART7 and SMART2 have internal CAN transceivers, however they still require proper bus terminations.

 

On the OEM719, CAN1 is multiplexed with user VARF and EVENT2, so the following commands must be issued before enabling CAN1:

EVENTOUTCONTROL MARK1 DISABLE

EVENTINCONTROL MARK2 DISABLE

Refer to OEM719 interface connector, OEM729 interface connectors, OEM7600 interface connector, OEM7700 interface connector, OEM7720 interface connector, PwrPak7 connectors, CPT7 connectors and Table: SMART Antenna interface cable connector pinout for pin-out information.

CAN messages supported

OEM7 receivers support the following NMEA2000 Parameter Group Messages (PGN) over the CAN bus:

  • PGN 126992 System Time

  • PGN 127250 Vessel Heading

  • PGN 127251 Rate of Turn

  • PGN 129025 GNSS Position Rapid Update

  • PGN 129026 COG & SOG Rapid Update

  • PGN 129027 Position Delta High Precision Rapid Update

  • PGN 129028 Altitude Delta, Rapid Update

  • PGN 129029 GNSS Position

  • PGN 129551 GNSS Differential Signal

OEM7 receivers also support the following J1939-71 Parameter Group Message (PGN) over the CAN bus: (OEM 7.08.15 firmware only. A SPAN hardware/software model is required.)

  • PGN 65256 Vehicle Direction and Speed (requires a valid, converged SPAN solution)

The following commands and logs are used for CAN configuration:

  • CANCONFIG command: controls the CAN transceiver hardware and places the receiver on bus or off bus

  • J1939CONFIG command: assigns the CAN J1939 NAME and address parameters to a Node

  • J1939STATUS log: reports the status a Node on the J1939 CAN network, such as the claimed address

  • LOG CCOMx PGNabcd: configures the NMEA2000 messages

  • CCOMCONFIG command: configures the parameters used by the NovAtel command interface to interact with the CAN Bus.

    CCOM ports with a lower port number have a higher transmission priority.

When the NMEASOLUTIONSOURCE is set to ANTENNA, the Vessel Heading and Rate of Turn are sourced from RTKHeadingSolutionDP, resulting in a delay between the time the rover receives the data and when the time-synchronized PGN messages are published associated to the ALIGN functionality requirement. For example, when the PGNs are logged at 10 Hz the delay may be up to 100ms and vary depending on the ALIGN corrections update rate set. Conversely, when the NMEASOLUTIONSOURCE is set to INS, the Vessel Heading and Rate of Turn are sourced from NMEAAzimuthSolutionDP, eliminating any significant delay between data provision and publication.

Details for the PGN messages can be found in the NMEA2000 specification which can be purchased directly from the National Marine Electronics Association (www.nmea.org/).

Default configuration

After a FRESET, the receiver has the following CAN configuration:

  • All CAN physical ports are disabled

  • No J1939 addresses are claimed

  • CCOM ports are configured for NMEA2000 messages only

Default NAME

Parameter

Value

Address

0x1C

Industry Group

2

Device Class

0

Device Class Instance

0

Function

23

Function Instance

0

ECU Instance

0

Manufacturer Code

305