The intention of this tutorial is to provide a quick method for getting OBDII vehicle communications working with your Arduino DUE CAN shield kit.
Step #1: Build and test the shield
Before we get started, lets make sure everything works. Follow our building and testing tutorial here for the DUE CAN shield.
Step #2: Wire up the OBDII port
To connect the DUE to your car, you’ll need to wire the unit to the OBDII port on your vehicle (must be 2008 or older to support CAN). You will need a vehicle interface cable (shown below) properly wired to CAN H and CAN L signals on the Arduino DUE CAN shield port 0.
Step #3: Program it
Open the IDE and go to File->Examples->CAN and select “OBD_11bit_ID.ino” or “OBD_29bit_ID.ino”. Which one you need will depend upon the type of vehicle you have, the 29bit is used by Honda, and probably less common than 11bit. Our examples were tested on Honda and Toyota vehicles. Remember you’ll need to have all of the DUE drivers installed and there is a tutorial on the arduino due website here. Make sure you have selected the proper board and port selected from Tools->Board->Arduino DUE Programming Port and Port->COMxx. Now click upload button, it will verify and upload the code to the DUE. Once completed go to Tools->Serial Monitor and make sure the baud rate is 115K. Turn the vehicle on.
Step #4: Check Serial Monitor Messages
The board should be communicating to the car at this point. The easiest way to see that you are getting data is to watch the engine RPM message.
A successful engine startup should look something like this:
System Reset Engine Speed 0.00 RPM Throttle 0.00 % Coolant -40.00 C Speed 0.00 KPH Load 0.00 % MAF 0.00 grams/s IAT -40.00 C Engine Speed 862.50 RPM Throttle 16.08 % Coolant 59.00 C Speed 0.00 KPH Load 32.55 % MAF 4.17 grams/s IAT 25.00 C Engine Speed 865.50 RPM Throttle 16.08 % Coolant 59.00 C Speed 0.00 KPH Load 32.55 % MAF 4.10 grams/s IAT 25.00 C
Thank you for your purchase, we wish you success!