This manual describes how to use an ESP32 as an extension to the existing OBDIIC&C device, available for the Honda Insight ZE1. This device will not add any new features, but will allow you to visualize the OBDII data on your smartphone.
If you are looking for a tutorial on how to read data from an OBDII connector, this ist the wrong place.
First, you’ll need an ESP32. Connect the ESP32 via a Micro USB cable to your PC. Install the drivers, if necessary. The ESP32 should be recognized as a COM port:
Download the ESP32 Flash Download Tool from the website:
Select “Tools” -> Flash Download Tools (ESP8266 & ESP32) .
After downloading, start the flash download tool.
Select “ESP32 DownloadTool”.
The main window will pop up. Configure as follows:
SPI flashing, 32Mbit flash, 40 MHz SPI speed.
Add the binary to the list of files to flash, and set a start address of 0x0. Also make sure to choose the correct COM port. After setting up everything correctly, press „START“.
If everything works OK, the download should take about ~ five minutes.
After reset the target, you should see some debug output in the serial interface, looking like this:
How to Connect the ESP32 to the OBDIIC&C
To make sure the ESP32 can talk with the OBDIIC&C, we need to connect three wires:
- UART Rx
- UART Tx
However, the logic levels of the two MCUs are different. The PIC uses 5V TTL logic for the UART, the ESP32 3.3V. Additionally, the logic levels are inverted.
Hence, you need two transistors to adapt the signal levels, and invert the logic levels at the same time. Have a look at the example schematics below to understand how to wire things up:
Note that the pins of the ESP32 used for UART communication are D22 and D23, not the pins labeled “RXD” and “TXD” next to it (this is a different UART channel). The ESP32 supports connecting the second UART to any pin of the device. The first UART peripheral is available via USB or the RXD and TXD pins, and is used for flashing an debugging. The second UART, on pin 22 and 23, is used to communicate with the OBDIIC&C.
Please double-check the pinout on the “headphone” plug on the OBDIIC&C, make sure to measure which pin is GND first.
3V3 are directly available on the ESP32, 5V you’ll need to get from the OBDIIC&C.
Below, you will find the download link to the ESP32 software: