Site Information

 Loading... Please wait...

Blog

SAE J1939 Programming with Arduino - Arduino Code (Sketch) Advanced Program Version

This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino. While the previous programming sample proves the simplicity of developing an SAE J1939 data traffic simulator, I deemed it necessary to improve the code in way that makes simulation extensions and modifications easier. The two elements that needed improvement were the message [...]

Read More »


SAE J1939 Programming with Arduino - Arduino Code (Sketch) Proof of Concept

This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino. The result was tested with an ADFweb CAN-to-USB Gateway in combination with its Windows-based CAN Bus analyzer tool. As the screen shot below shows, the PGN 65267 (Vehicle Position: 0x18FEF320) is received every 5 seconds, while PGN 65269 (Ambient Conditions: 0x18FEF530) appears every [...]

Read More »


SAE J1939 Programming with Arduino - Arduino Code (Sketch)

This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino. The Arduino code is quite simple and virtually self-explanatory. However, let me lose a few words on the program’s structure.First of all, depending on the CAN Bus shield used for this programming sample, please make sure you set the proper CS [...]

Read More »


SAE J1939 Programming with Arduino - SAE J1939 Monitoring And Simulation

This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino. As I wrote before, both versions of the Arduino used in this book, the Uno and the Mega 2560, are well suitable for SAE J1939 monitoring and simulation projects. Until now, the simulation of SAE J1939 data traffic involved the purchase of expensive [...]

Read More »


SAE J1939 Applications with the Arduino

This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino. In general, there are three different intentions for connecting to a J1939 vehicle network: Mere monitoring, processing, and display of network data traffic. All functions as described under 1. but extended by [...]

Read More »


SAE J1939 Programming with Arduino - Message Design

This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino. For this programming sample I have randomly chosen two PGNs from the vast selection of available parameter group numbers. They are: PGN 65267 – Vehicle Position, provides the vehicle’s latitude and longitude. Transmission Repetition [...]

Read More »


SAE J1939 Programming with Arduino - SAE J1939 Simulation Example

This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino.The following programming sample demonstrates effectively how easy simulating SAE J1939 data traffic can be (while the level of complexity can be easily adjusted to the application requirements). However, before we dive into the actual coding, we need to design the simulated messages, [...]

Read More »


SAE J1939 Programming with Arduino - SAE J1939 Compliance Criteria

This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino. One question that has been raised repeatedly is the one about SAE J1939 compliance. Officially, the SAE J1939-82 Standard describes the compliance tests and procedures to verify an SAE J1939 ECU will operate correctly on an SAE J1939 network. Unfortunately, the SAE J1939 [...]

Read More »


SAE J1939 Programming with Arduino - Address Claiming Procedure

This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino. In the following, we will focus merely on two basic messages, Request Message and Address Claimed (Yet again, for further, more detailed information see the literature recommendation in the appendix).The Request Message is used by a CA to request information, such as NAME [...]

Read More »


SAE J1939 Programming with Arduino - Address Claim And Preferred Address

This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino. For the purpose of a quick address claiming process, each control application should maintain a preferred address. SAE J1939/81 recommends that the preferred address (i.e. the address the ECU/CA attempts to claim on power-up) should be re-programmable to permit the proper configuration of [...]

Read More »