2.3 KiB
digital-dashboard
Source code for ESP32 based CAN-bus powered dashboard.
Reprogrammable to interpret & display any CAN-bus containing vehicle's CAN data.
Originally developed for Wildcat Formula Racing (University of Arizona) Formula SAE race car.
Get Started
- Install VS Code
- Install PlatformIO extension for VS Code
- Plug ESP32 and restart VS Code
- Within PlatformIO extension "Clone Git Project"
- Upload to ESP32 using PlatformIO sidebar
Re-Configurability
Configured as-is for example project below.
-
Pinouts for CAN transceiver and pushbutton. Open
pinout.h
source files to do so. -
Vehicle-specific CAN-bus interpretation, open CAN source files (
limits.h
,TranslateCAN.h
) for config instructions. For help decoding your vehicle, see related tool can-analyzer. -
Compatible with wide range of TFT displays. Read TFT_eSPI library documentation and edit library files accordingly (
User_Setup.h
orUser_Setup_Select.h
).
Example Project
Project for University of Arizona FSAE racecar. Interprets custom MoTeC M150 CAN bus protocol.
IMPORTANT
ESP32 module requires 5V power (VIN or Micro USB) but GPIO pins operate at 3.3V
Parts List
...And any pushbutton will work
Pinout
Note: PB = Pushbutton
Note: TFT_DC may be labeled "RS" depending on the TFT
NAME | ESP32 GPIO |
---|---|
PB | 5 |
--- | --- |
CAN_RX | 18 |
CAN_TX | 19 |
--- | --- |
TFT_CS | 33 |
TFT_DC | 15 |
TFT_RST | 32 |
--- | --- |
TFT_WR | 4 |
TFT_RD | 2 |
--- | --- |
TFT_D0 | 12 |
TFT_D1 | 13 |
TFT_D2 | 26 |
TFT_D3 | 25 |
TFT_D4 | 17 |
TFT_D5 | 16 |
TFT_D6 | 27 |
TFT_D7 | 14 |
Common Issue: ESP32 not detected as COM port
You may try installing VCP drivers