New Eagle J1939 Library

From NewEagleWiki
Revision as of 15:39, 7 June 2012 by Anonymous (talk | contribs) (Introduce text from j1939 lib doc)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

The New Eagle J1939 Protocol Library for MotoHawk offers an easy to use approach to add J1939 protocol support to any existing or new MotoHawk project. It abstracts all the complex network management and transmission requirements of the J1939 protocol allowing fast development of a J1939 compatible application. The J1939 Library seamlessly interfaces with the Woodward OBD Fault Manager blocks to provide a large number of j1939 Diagnostic Messages. All the functions required to create an OBD-HD compliant application are included in the New Eagle J1939 Library.

Current list of supported J1939 messaging

Technical Overview

The New Eagle J1939 Library implements the Network Management, Data Link and Application layers as described in the J1939 protocol specification. Custom built Simulink blocks and code generation provide simple support for the complex features of J1939. The New Eagle J1939 Library includes support for BAMs, RQSTs, ACK/NACK, RTS/CTS, optimized multi-frame PGN transport, and Address Claiming, among other considerations.

The blocks that make up the New Eagle J1939 library use a combination of custom S-functions as well as existing MotoHawk blocks to allow the user to efficiently add the J1939 protocol to any project. This ensures continued compatibility with future MotoHawk releases and controller families.

The New Eagle J1939 Library mirrors the J1939 network structure of PGN’s and SPN’s. This makes it simple to integrate into an existing model by allowing the user to define SPN’s throughout the model. The library will automatically collect and manage the SPN data required for each PGN message, optimizing speed and memory usage. The separation of SPN’s and PGN’s greatly simplifies the process of adding support for additional PGN’s and allows the communication functions (PGN’s) of the module to be collected in a common location in the Simulink model to simplify network management functions.

The J1939 Diagnostic Messages integrate seamlessly with the Woodward OBD Fault Manager blocks to provide access to available fault status and freeze frame data. The OBD Custom Fields feature of the fault manager is used to define SPN and FMI numbers for each fault and manage the additional information required for J1939 compliance.

J1939 Supported Functions

  • Data Link Layer – SAE J1939-21
  • Application Layer (see Supported PGNs below) – SAE J1939-71 & SAE J1939-73
  • Network Management – SAE J1939-81

Supported PGNs

  • Diagnostic Messages
    • DM1
    • DM2
    • DM3
    • DM4
    • DM5
    • DM6
    • DM7
    • DM8
    • DM11
    • DM12
    • DM19
    • DM20
    • DM21
    • DM23
    • DM24
    • DM25
    • DM26
    • DM27
    • DM29
    • DM30
    • DM33
    • DM34
  • Managed PGNs
    • CBI
    • CCVS
    • CI
    • DD
    • DLCC1
    • EC1
    • EEC1
    • EEC2
    • EEC3
    • EFL_P1
    • EGF1
    • ET1
    • ET3
    • HOURS
    • IC1
    • IO
    • IT6
    • LFC
    • LFE
    • LFI
    • LTFI
    • VD
    • VDHR
    • VEP1
    • VH
    • VI

Additional PGN Support

New Eagle is actively expanding supported PGN’s in the library all the time. Please contact New Eagle for information on additional PGN message support.  

Verification and Debugging

Verifying and debugging a J1939 implementation is an important consideration. New Eagle can provide a PC-based J1939 tool to monitor J1939 traffic. This tool connects to the J1939 CAN bus and allows the user to send requests, view data, and log live J1939 traffic for further analysis, thus ensuring the J1939 implementation is performing acceptably. The J1939 tool supports all the messages included in the J1939 library. Support for additional messages and SPN’s can be added with a simple XML file. Contact New Eagle for more information on this tool.

Future Development

  • J1939 Client-side Transport Handler
    • Presently, the J1939 Library is focused on transmit aspects. These include: parsing requests, transmitting PGNs, and managing the network.
    • Further development on the library will establish a framework for requesting, receiving, and parsing PGNs from other J1939 nodes.
  • Proprietary PGNs
    • A framework for easily defining Proprietary PGN messages and linking them to the library’s network management is under consideration