spoonieau / OBD2-ECU-Simulator

Arduino Uno powered OBD2 ECU Simulator 'Stand alone or qt5 GUI control'
GNU General Public License v3.0
49 stars 17 forks source link

OBD2-ECU-Simulator

Arduino Uno powered OBD2 ECU Simulator 'Stand alone or qt5 GUI control'

Hardware required

-Ardunio Uno
-MCP2515 or MCP25625 shield or controller
-OBD2 to DB9 cable, buy or make your own

Build Depends

-MCP_CAN Library https://github.com/coryjfowler/MCP_CAN_lib
-QT5 https://www.qt.io/

Status

-Custom VIN
-Custom Calibration ID
-Custom ECU Name
-Set OBD2 Standard
-Set Fuel type coding
-Supported PID's 0x05, 0x0C, 0x0D, 0x0E, 0x0F, 0x10
-Random PID's
-Retrive DTC *one only
-Clear DTC

Currently the Ardunio source is in random value standalone mode. Can view the raw frames << >> via serial monitor in the Ardunio IDE.

Todo

-Complete GUI
-Wire up Firmware with GUI
-Add more PID'S
-Implement a more dynamic DTC

Tested With

-ELM327 USB with Torque ‘Android’
-Foxwell NT650

Instructions

The CAN shield or controller needs to have it’s CAN_H and CAN_L Terminated. On my shield I had to solder join ‘J3’.
Check the documentation of your CAN controller.