Blog
Recent Posts
Electronic Logging Device (ELD) - GPS And Real-Time Clock (RTC) Breakout Board For The Arduino Due
Lately, I had looked into the topic of Electronic Logging Devices (ELD). An ELD is electronic hardware that is attached to a commercial motor vehicle engine to record driving hours. The driving hours of commercial drivers (truck and bus drivers) are regulated by a set of rules known as the hours of service (HOS). An ELD monitors a vehicle’s [...]
Arduino J1939 Shield For Data Traffic Simulation And Vehicle Application Development
First of all, my apologies for a "misleading" title that included the term "J1939 Shield." I picked the topic after noticing increased search traffic for the term. In all consequence, there is no real J1939 Shield but an Arduino CAN Bus Shield with supporting J1939 protocol stack software.As a matter of fact, there a several [...]
CAN Bus Bridge (CAN-to-CAN) Application With Arduino Due
Basically, there are two scenarios where a CAN Bridge application is of use:1. Connecting two separate CAN Bus networks.2. Network length extension.While the first scenario is more or less self-explanatory, let's look a little closer into the network length extension: The physical CAN network length depends primarily on the CAN baud rate, i.e. the higher [...]
RS232 to USB Converter With Arduino Due Or Mega 2560
Just about everyone who is involved with serial communication will have his/her RS232 to USB converter. Today's PCs don't even bother to support RS232. Consequently, a USB converter is mandatory to monitor RS232 data traffic. All this appears to render the following project obsolete. However, when it comes to a protocol converter, i.e. the conversion [...]
CAN Bus Data Traffic Simulation With Arduino Due
When working on a CAN bus or SAE J1939 project, it can be extremely helpful when the expected CAN Bus data traffic can be simulated rather than connecting your system to a running vehicle or automation control. The following project does exactly that with little effort for designing CAN data frames and their frequency. As [...]
Interrupt-Controlled Timer Function For The Arduino Due
The Arduino Due is a microcontroller board based on the Atmel SAM3X8E ARM Cortex-M3 CPU. It is the first Arduino board based on a 32-bit ARM core microcontroller. It has 54 digital input/output pins (of which 12 can be used as PWM outputs), 12 analog inputs, 4 UARTs (hardware serial ports), a 84 MHz clock, [...]
Monitoring SAE J1708/J1587 Data Traffic Using The Arduino Mega2560 Or Arduino Due
First of all, let me point out that this post is merely about monitoring SAE J1708/J1587 data traffic, i.e. the mere reading of data frames. SAE J1708, the hardware layer, is based on RS485, however, with a small hardware modification that allows message collision detection and prevention. In the following, I am using an RS485 [...]
How To Use The Native USB Of The Arduino Due For High-Speed Communication
It seems to be an obvious statement, but there are many applications for the Arduino Due that require high-speed communication in a range that goes beyond regular UART baud rates, i.e. several Mbits/sec. Naturally, USB comes to mind, but surprisingly there are some obstacles when it comes to accessing the Arduino Due's USB ports. The [...]
Arduino Or Raspberry Pi - Which System Is Better Suited For CAN Bus Projects?
To say it upfront, the choice between the Arduino platform and the Raspberry Pi is primarily a personal matter, depending on factors like knowledge of programming and programming languages, preferences for operating systems, and, after all, hardware knowledge. Both system architectures, while being very different from each other, provide vast software and hardware support for [...]
Dual CAN Bus Interface For Arduino Due: Controlling the LEDs
The following explains how to control the LEDs on our jCOM.CAN.DUE and jCOM.CAN.DUE-X boards. The experienced Arduino programmer may frown since all necessary information is available (LED1 = GPIO 14; LED2 = GPIO 15). Consequently, this post is for the novice Arduino programmer or those who are primarily interested in embedded Controller Area Network programming. Just as a reminder, [...]