AutotronicCommunity / ArduinoHondaOBD Public
forked from kerpz/ArduinoHondaOBD
Code Pull requests Actions Projects Security Insights
master Go to file Code About
Collections of Arduino codes that
This branch is 2 commits behind kerpz:master. reads and translates Honda OBD
codes to ELM / OBD 2 PID codes. It
also process and displays the
kerpz Bugfix PID 2 mapping … on Sep 20, 2022 90 output to a LCD or transmit the
output to a bluetooth channel.
fritzing Local Updates 3 years ago
Readme
hobd_elm re assigned bluetooth pin 8 years ago
Activity
hobd_lcd Bugfix dlc function, added hobd_uni 8 years ago 1 star
hobd_uni Tagging point, version 1.1 on testing 4 years ago 0 watching
56 forks
hobd_uni2 Bugfix PID 2 mapping last year
Report repository
images Update wiring image 7 years ago
test_elm updates last year
Releases
torque added torque files last year
No releases published
[Link] Update [Link] 7 years ago
Packages
[Link]
No packages published
ArduinoHondaOBD
Languages
An arduino code that reads Honda OBD Protocol and translates it to ELM327 protocol. I use
C++ 100.0%
Torque app to read and display the data on my android phone (via bluetooth), and a LCD (2x6)
to display it on my car's dashboard.
Please refer to the screenshots below.
Applications
Datalogging
Diagnostics
Trip Computer
Etc
Supports
Honda ECU's before 2002
Files
hobd_uni - unified code for ELM bluetooth and LCD display with other improvements.
hobd_elm - implements Honda OBD to ELM OBD2 protocol (bluetooth) - not updated
hobd_lcd - implements Honda OBD to LCD display - not updated
UNI_wiring.png - Unified wiring diagram for arduino UNO (compatible)
Wiring for hobd_uni (Joined ELM and LCD codes)
Honda 3 Pin DLC Arduino Uno
Gnd --------------------- Gnd
+12 --------------------- Vin
K-line ------------------ Pin12
HC-05 Bluetooth Arduino Uno
Rx ---------------------- Pin11
Tx ---------------------- Pin10
LCD 16x2 Arduino Uno
RS ---------------------- Pin9
Enable ------------------ Pin8
D4 ---------------------- Pin7
D5 ---------------------- Pin6
D6 ---------------------- Pin5
D7 ---------------------- Pin4
VO ---------------------- 10k Potentiometer (+5V to Gnd)
Piezo Buzzer Arduino Uno
(+) --------------------- Pin13
(-) --------------------- Gnd
Tact Switch Arduino Uno
(+) --------------------- Pin17 (A3)
(-) --------------------- Gnd
Voltage Divider Arduino Uno
+12V divider circuit ---- Pin14 (A0)
(680k ohms and 220k ohms)
Wiring for hobd_elm (Deprecated use hobd_uni)
Honda 3 Pin DLC Arduino Uno
Gnd --------------------- Gnd
+12 --------------------- Vin
K-line ------------------ Pin12
HC-05 Bluetooth Arduino Uno
Rx ---------------------- Pin11
Tx ---------------------- Pin10
Wiring for hobd_lcd (Deprecated use hobd_uni)
Honda 3 Pin DLC Arduino Uno
Gnd --------------------- Gnd
+12 --------------------- Vin
K-line ------------------ Pin12
LCD 16x2 Arduino Uno
RS ---------------------- Pin9
Enable ------------------ Pin8
D4 ---------------------- Pin7
D5 ---------------------- Pin6
D6 ---------------------- Pin5
D7 ---------------------- Pin4
VO ---------------------- 10k Potentiometer (+5V to Gnd)
Screenshots (LCD 16x2)
Screenshots (Andorid App TORQUE)
NOTES
Added button for changing page (5ms) and changing ecu mode (3s).
Added Fault codes reader @ lcd page 3
Added LCD @ I2C support
#define LCD_i2c TRUE // Using LCD 16x2 I2C mode
Added direct HOBD access API (ELM mode) used for undefined PIDs on OBD2
// direct honda PID access
// 1 byte access (21AA) // 21 = 1 byte, AA = address
// 2 bytes access (22AA) // 22 = 2 bytes, AA = address
// 4 byte access (24AA) // 24 = 4 bytes, AA = address
Added direct Arduino Pin access API (ELM mode) used for keyless entry and other stuff
// set arduino pin (ATSAPNNX) // NN = pin, X = value (value is 1 or 0)
// get arduino pin (ATDAPNN) // NN = pin
Tested on P2T ODB2 stock and P30 ODB1 chipped
TODO
Add 128x64 LCD @ SPI support
Add 20x4 LCD @ I2C support