Site Information

 Loading... Please wait...

Blog

SAE J1939 Programming with Arduino – Recommended Literature

This post is part of a series about SAE J1939 ECU Programming & VInsert linkehicle Bus Simulation with Arduino. There is more than plenty and valuable literature available on the Arduino, but, being an experienced programmer, the one and only work I read was:Programming ArduinoGetting Started with SketchesBy Simon MonkISBN 978-0071784221Also recommended for providing more background information:Controller Area Network [...]

Read More »


SAE J1939 Programming with Arduino – Function Calls Description

This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino. j1939.Initvoid j1939.Init(int nSystemTime);Initializes the ARD1939’s memory, baud rate settings, etc.nSystemTime - This is the loop time of your application in milliseconds. This information will provide the ARD1939 protocol stack a time base to manage all timers required for various protocol tasks.Ideally, the system [...]

Read More »


SAE J1939 Programming with Arduino – Application Structure

This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino. As with every Arduino application, the initialization of data and the J1939 protocol takes place during the setup() function, while the actual application resides in loop(). setup() - The j1939.Init function is mandatory to operate ARD1939. [...]

Read More »


SAE J1939 Programming with Arduino – ARD1939 Protocol Stack Reference

This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino. The functions available to the SAE J1939 application layer (i.e your program) are:Initialization j1939.Init – Initializes the protocol stack settings j1939.SetPreferredAddress – Sets the preferred node (source) address j1939.SetAddressRange– Sets the negotiable [...]

Read More »


SAE J1939 Programming with Arduino – Debugging Macros

This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino. Please be aware that the following macros are one-liners. Due to the limited page space, some macros appear as wrapped into more than one line and the line breaks are indicated with “\”. SAE J1939 has become the accepted industry standard and [...]

Read More »


SAE J1939 Programming with Arduino – RTS/CTS Session Test Program

This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino. Just for kicks, I extended the previously used Arduino sketch to simulate a fully functional RTS/CTS session (yet again, the code is highly tailored to the previous RTS/CTS session). Based on that sketch, I could simulate all error scenarios on the receiver’s side.This [...]

Read More »


SAE J1939 Programming with Arduino – Conclusion

This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino. With all previous programming examples installed and explained, you should now have a pretty good grip on programming your own SAE J1939 application with the Arduino Uno and/or the Mega 2560.Yet, there are still numerous, possible scenarios for J1939 applications and all [...]

Read More »


SAE J1939 Programming with Arduino – ARD1939 Sample Application

This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino. The typical SAE J1939 ECU application not only involves the protocol stack but also a good amount of input and/or output processing. This could involve reading sensors and sending the result in form of a PGN or reading a PGN and setting [...]

Read More »


Designing Embedded Systems For The Internet of Things (IoT) Using ARM, Arduino, Raspberry Pi, BeagleBone

The IoT: Building Arduino-Based Projects course will take you on a journey to become an expert in the use of IoT by developing a set of projects and will guide you through securing your IoT environment.In the first module, Learning Internet of Things, you will learn how protocols and patterns can put limitations on network [...]

Read More »


SAE J1939 Programming with Arduino – End of Message Acknowledgment Timeout

This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino. In order to test all timeouts during an RTS/CTS session, I used a dedicated Arduino sketch to simulate all the “nasty” features that would trigger a communication breakdown. This method was easier to implement rather than using a full SAE J1939 stack. [...]

Read More »