ESP32 CAN Bus Shield

$38.99

Introducing the ESP32 CAN Shield, now in its latest iteration (version 1.2)  equipped with a built-in OBD2 pins breakout! This development kit boasts a CAN transceiver, OBD2 plug, a 3.3V buck converter and a selectable CAN bus Read-Only mode. Compatible with the 30 pin ESP32 DevKit V1 version ONLY.

What’s in the package: the shield, two 15-pin male headers, and an OBD2 plug (assembly needed). If you prefer the XH2.54 connector instead of the OBD2, please indicate so on the checkout page.

You might also need:

Availability: In stock

SKU: MDY01237 Category:

This is a custom, machine assembled, CAN shield designed to fit the 30 pin ESP32 DevKit1 board version. It is equipped with a CAN transceiver. This shield can operate with power ranging from 7 volts to 15.5 volts, which means you can connect it directly to a car battery thanks an efficient buck converter.

CAN

The shield complements the ESP32 CAN controller by adding a CAN transceiver offering:

  • Data Rates: up to 1 Mbps
  • Compatible With ISO 11898-2
  • Cross-wire protection
  • Over temperature (thermal shutdown) protection
  • EMI and ESD bus protection using NUP2105

Power

The shield can be efficiently powered by 12V automotive source through its onboard buck converter, offering:

  • Max Input Voltage:
    • without enabling the voltage divider: 24 Volt
    • with the voltage divider enabled: 15.5 Volt
  • Max Input Current: 2 Amp
  • Frequency: 570 kHz
  • Outputs 3.3V to the ESP32 board
  • Overvoltage transient protection
  • Thermal shutdown protection

120Ω & ADC Features

By default, the shield comes with a voltage divider on GPIO32 and a 120Ω CAN termination resistor disabled. These features can be activated by soldering solder-jumpers on the shield, labeled ‘ADC D32’ and ‘CAN 120’ respectively.

LEDs

The shield includes three LEDs. The first is a Red LED, which is always on when the shield is powered. The second and third LEDs are Blue and Green and are connected to GPIO26 and GPIO27 for general usage.

Modes

The shield offers two operational modes: RW and R. Toggle between these modes using a physical switch connected to the CAN transceiver:

    • RW mode: the transceiver is active, allowing the shield to Read and Write to the CAN bus. The Rs pin is connected to ground through a 10kΩ, and the driver boasts a slew rate of ~15 V/μs.
    • R mode : The transceiver enters a low-current standby mode, switching off the driver while keeping the receiver active. In this mode, the shield can only Read from the CAN bus and cannot write to it. Rs is connected to 3.3V.

Wiring

esp32 can bus wiring
  • Car’s CAN High to CAN-High
  • Car’s CAN Low to CAN-Low
  • Car’s Power Source to Power-12V
  • Car Ground to Power-Gnd

OBDII

  • PIN 6 is connected to CAN-High
  • PIN 14 is connected to CAN-Low
  • PIN 16 is connected to Power
  • PIN 4 is connected to Ground

 Schematic

ESP32 Dev Kit 1 CAN Shield

 

Programming

You have the option to code the ESP32 directly with:

  • Espressif IoT Development Framework – TWAI (Two Wire Automotive Interface) [Advanced]
  • Arduino using one of the following:
  • [EXPERIMENTAL] You can also use SavvyCAN directly with the shield by flashing the ESP32RET firmware onto the ESP32 using my online flasher. Watch this video for more details.

Reminder: The shield uses GPIO05 for CAN_RX and GPIO04 for CAN_TX.


Arduino [ESP32-CAN sample code]

 

Changes since v1.0

  • Version 1.0: the original shield
  • Version 1.1: added a voltage divider on GPIO32, a 120Ω CAN termination resistor, and a physical toggle switch enabling the CAN transceiver to toggle between “Listen-only” and “Do-Not-Transmit” modes.
  • Version 1.2 (current): added an OBD2 connector pinout, an extra LED on GPIO27, layout improvement, larger text, relocation of solder-jumpers to the top side, and the creation of a custom 3D printable case.

Video Overview of the Original v1.0

(*) are affiliate links.

Weight 25 g
Dimensions 10 × 8 × 3 cm
Shopping Cart
CAN Shield v1.2 with OBD2 plugESP32 CAN Bus Shield
$38.99

Availability: In stock