Blog
Recent Posts
SAE J1939 Programming with Arduino - J1939 Data Traffic Monitoring
This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino. In the following Arduino sketch, “data traffic monitoring” means nothing else but receiving and displaying SAE J1939 data messages (Refer also to chapter Receiving J1939 Message Frames). Rather than creating a new project, we will only need to add a few code lines [...]
SAE J1939 Programming with Arduino - J1939 Network Scanner
This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino. Just like the previous project (See chapter Receiving and Responding to J1939 Request Frames) we will be using the SAE J1939 Request Message, in this case to inquire node addresses from the vehicle network. The Request Message (a.k.a. the Request for Address Claimed [...]
SAE J1939 Programming with Arduino - A Simple SAE J1939 to USB Gateway
This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino. I deem it necessary to provide a definition of “SAE J1939 to USB Gateway,” because there are several variants of gateway applications.If you browse through the Internet in search for J1939 gateways, you will primarily find CAN gateways that support the [...]
SAE J1939 Programming with Arduino - Receiving and Responding to J1939 Request Frames
This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino. In this following project, we will discover yet another SAE J1939 protocol feature, namely the Request Message (as defined in the SAE J1939/21 standard). As with the previous project, we will need two J1939 nodes, and therefore will need two projects, one to [...]
SAE J1939 Programming with Arduino - Receiving J1939 Message Frames
This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino. This Arduino project provided a bit of a challenge after I had forgotten my own advice.Note: In order to test a CAN/J1939 application, you need at least two CAN/J1939 nodes to establish a network communication. The second node can be another Arduino [...]
SAE J1939 Programming with Arduino - SAE J1939 Monitoring Examples
This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino. The following chapter is primarily about SAE J1939 data monitoring, i.e. the Arduino projects as described work mainly in “Listen-Only” mode. Any bidirectional communication with the vehicle bus requires an SAE J1939 protocol stack implementation, specifically the address claim process. Without a node (source) [...]
SAE J1939 Programming with Arduino - SAE J1939 Stress Simulator
This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino. The increased flexibility in combination with the finer timer resolution we reached in the previous project allows us the easy implementation of another task, namely a stress simulator.Stress simulator, in this case, means increasing the vehicle bus load and thus “stress testing” [...]
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 [...]
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 [...]
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 [...]