J1939 Communication

Vehicle network communication using J1939 protocol

Create J1939 parameter groups and channels to transmit over a CAN network using MATLAB® or Simulink®.


You cannot run on Linux® any Simulink models that contain blocks from the Vehicle Network Toolbox™ J1939 Communication block library.


expand all

canDatabaseCreate handle to CAN database file
j1939ParameterGroupCreate J1939 parameter group
j1939ParameterGroupImportImport J1939 log file
extractAllOccurrences of specified J1939 parameter groups
extractRecentOccurrences of most recent J1939 parameter groups
extractTimeOccurrences of J1939 parameter groups within time range
canDatabaseCreate handle to CAN database file
j1939ChannelCreate J1939 CAN channel
configBusSpeedConfigure bit timing of J1939 channel
startStart channel connection to J1939 bus
stopStop channel connection to J1939 bus
receiveReceive parameter groups from J1939 bus
transmitSend parameter groups via channel to J1939 bus
discardDiscard available parameter groups on J1939 channel
filterAllowAllOpen parameter group filters on J1939 channel
filterAllowOnlyAllow only specified parameter groups to pass J1939 channel filter
filterBlockOnlyBlock only specified parameter groups on J1939 channel filter


expand all

DataCAN message or J1939 parameter group data
DatabaseStore CAN database information
DestinationAddressAddress of parameter group destination
IDIdentifier for CAN message
Name (J1939)J1939 parameter group name
PDUFormatTypeJ1939 parameter group PDU format
PGNJ1939 parameter group number
PriorityPriority of parameter group
SignalsPhysical signals defined in CAN message or J1939 parameter group
SourceAddressAddress of parameter group source
Timestamp (J1939)Display parameter received timestamp
UserDataEnter custom data
BusSpeedBit rate of bus
BusStatusDetermine status of bus
InitializationAccessDetermine control of device channel
InitialTimestampIndicate when channel started
NumOfSamplesDisplay number of samples available to channel
RunningDetermine status of channel
SilentModeSpecify if channel is active or silent
SJWSynchronization jump width (SJW) of bit time segment
TransceiverNameName of device transceiver
TransceiverStateDisplay state or mode of transceiver
TSEG1Display amount that channel can lengthen sample time
TSEG2Display amount that channel can shorten sample time
UserDataEnter custom data
DeviceDisplay channel device type
DeviceChannelIndexDisplay device channel index
DeviceSerialNumberDisplay device serial number
DeviceVendorDisplay device vendor name
ParameterGroupsAvailableNumber of parameter groups available
ParameterGroupsReceivedNumber of parameter groups received
ParameterGroupsTransmittedNumber of parameter groups transmitted
FilterBlockListList of parameter groups to block
FilterPassListList of parameter groups to pass


expand all

J1939 Network ConfigurationDefine J1939 network configuration name and database file
J1939 Node ConfigurationConfigure J1939 node with address and network management attributes
J1939 CAN Transport LayerTransport J1939 messages via CAN
J1939 TransmitTransmit J1939 message
J1939 ReceiveReceive J1939 parameter group messages


J1939 Interface

J1939 is a high-level protocol built on the CAN bus that provides serial data communication between electronic control units (ECUs) in heavy-duty vehicles.

J1939 Parameter Group Format

The application layer deals with parameter groups (PGs) sent and received over the network.

J1939 Network Management

Each device on a J1939 network has a unique address.

J1939 Transport Protocols

J1939 transport protocol breaks up PGs larger than 8 data bytes and up to 1785 bytes, into multiple packets.

J1939 Channel Workflow

Diagram to transmit and receive J1939 parameter groups.

Featured Examples