Understanding and Using the SAE J2534-1 API to Access Vehicle Networks

With the increase in vehicle electronics, the need to gather data from the vehicle has never been greater. From vehicle development, through vehicle test to vehicle validation, engineers are required to collect data from the vehicle's network. The SAE J2534-1 API (Recommended Practice for Pass-Thru Vehicle Programming) gives engineers the tool to collect vehicle data from multiple network types including CAN, ISO15765, J1850, ISO9141 and Chrysler SCI, using standard J2534 interface devices. In addition, the aftermarket can access the vehicle's OBDII information from the diagnostic connector. Using the SAE J2534-1 API, an engineer can write a single program that communicates on multiple protocols, uses an off-the-shelf interface device and is scaleable.

This course is designed to give you an understanding of the J2534-1 API, enabling you to create your own programs that accomplish your vehicle communication needs. In addition to learning how to use each of the J2534-1 functions, you will have the opportunity to write a program that collects messages off of the CAN vehicle bus and another program that reads trouble codes off of a J1850 vehicle.

Note that because of the proprietary nature of the information, this class does not provide details on reprogramming algorithms or proprietary data collection.

Attendees will receive a copy of the SAE J2534-1 Recommended Practice for Pass-Thru Vehicle Programming.

What Will You Learn

By attending this seminar, you will be able to:
  • Write programs that use the SAE J2534-1 compliant hardware to communicate with vehicles
  • Reduce your dependency on proprietary vehicle communication hardware
  • Increase your productivity by collecting the specific vehicle information you need when you need it
  • Solve vehicle integration problems by capturing events from the vehicle network
  • Protect your software investments by writing your application using a standard API

Is This Course For You

This seminar is designed for engineers involved with automotive design and development who need to write programs that interact with vehicles through the in-vehicle network. This includes engineers who validate OBDII, engineers developing and validating new electronic control modules, engineers writing reprogramming application, test engineers who log vehicle data, system integrators who need to validate system operation, and after-market engineers who add new functionality to vehicles. The seminar would also be helpful for people who develop end-of-line tests, service diagnostics or inspection and maintenance cells for vehicles.

Materials Provided

This data is not available at this time

Course Requirements

This data is not available at this time


  • What is the SAE J2534-1 PassThru API
    • Why use the SAE J2534-1 PassThru API
    • Overview of the SAE J2534-1 PassThru API
    • Overview of vehicle communication
    • History of the SAE J2534-1 PassThru API
    • Future of SAE J2534-1, J2534-2, J2534-3
  • PassThru PC Setup
    • Using the registry to find devices
    • Loading the SAE J2534-1 DLL
  • PassThru Open and Close
  • PassThru Connect and Disconnect
    • PassThruConnect: protocols, connect flags, baudrates
    • PassThruDisconnect
  • Lab 1: PassThru on the PC: Simple SAE J2534-1 Program
  • PassThru Read Messages and Write Messages
    • The PassThru message structure
    • PassThruReadMsgs: read, loopback and indication messages
    • PassThruWriteMsgs
  • PassThru Start Message Filter and Stop Message Filter
    • PassThruStartMsgFilter: pass, block and flow control filters
    • PassThruStopMsgFilter
  • PassThru Other Functions
    • PassThruSetProgrammingVoltage
    • PassThruReadVersion
    • PassThruGetLastError
  • Lab 2: A Complete SAE J2534-1 Program
  • PassThru Start Periodic Message and Stop Periodic Message
  • PassThru I/O Control
    • Other parameters
  • ISO15765 in J2534-1
    • Flow control filters
    • Indication messages
  • Lab 3: Enhancing your PassThru Program
    • Changing device configuration
    • ISO15765 message reader