Applications Arduino Due Hardware SAE J1939 Prototyping

CAN Bus And SAE J1939 Rapid Prototyping With Arduino Due’s ARM Cortex M3 Processor

Arduino DueWhenever it comes to creating rapid prototypes for new CAN Bus or SAE J1939 applications, my first choice is usually the Arduino Due, a microcontroller board based on the Atmel SAM3X8E ARM Cortex-M3 CPU.

The Arduino Due combines an easy-to-use programming environment with a vast number of hardware extensions (shields). Don’t get me wrong, I do love programming on a more “professional” level using our embedded systems with sophisticated IDEs and debug probe, but often enough the required hardware is not available. The Arduino concept may have its flaws (such as limited debugging capabilities), but when it comes to rapid prototyping it is almost unbeatable.

Let’s have a look at the Arduino Due board’s features:

  • Microcontroller board (Arduino Due) based on the Atmel SAM3X8E ARM Cortex-M3 CPU
  • 512 KB Flash Memory
  • 96 KB SRAM
  • 84 MHz Clock Speed
  • 2 CAN ports w/o transceiver
  • 54 Digital I/O Pins (of which 12 provide PWM output)
  • 12 Analog Input Pins
  • 2 Analog Output Pins

When it comes to CAN Bus or SAE J1939 applications, though, the Due misses a mandatory item, namely the CAN Bus transceivers (it shares that short-coming with the majority of off-the-shelf embedded CAN systems). Consequently, we at Copperhill Technologies have developed a Dual CAN Bus interface for the Arduino Due, which comes with the following features:

  • 2 CAN ports with three-pin terminal connectors
  • Extended input power range of 7 VDC to 36 VDC
  • 3 LEDS (Power, CAN Activity Port 1, CAN Activity Port 2)
  • CAN Bus Termination resistors switchable per jumper

The available options are:

Arduino Due - CAN to Ethernet gateway configurationThe concept of Arduino Due main board plus Dual CAN Bus interface was designed to allows adding any Arduino-compatible hardware (shield).  As an example, the image to the left shows the board with Dual CAN Bus interface plus an Ethernet shield, which obviously can be used to program a CAN-to-Ethernet gateway.

As a matter of fact, I am currently preparing a number of CAN Bus gateway applications, which includes Ethernet, Bluetooth, and WiFi.

Also, check out the available resources, may it be hardware, cables, data sheets, or sample programs:

CAN Shield Resources:

Arduino Due Resources:


For further information, or in case you have questions, please fee free to contact us through this website.