Let Arduino talk with car through OBD-II

I am new here and just started to play with Arduino about 3 weeks ago. Since I have lots of expertise in software programming and some knowledge about micro-controllers, it's really quick for me to start developing useful things on the Arduino platform. I think Arduino is so wonderful invention for us software guys. I spent 2 weeks to make an Arduino board connect with my car through OBD-II port, reading out the data and displaying them on a 84x48 LCD shield. It's great fun!
I wrote an article on how I made it work and share with people who share the same interest with me.

How to let Arduino talk with your car through OBD-II

I like your project! Good story and good pictures.
such project is still on my todo list since I discovered my new 2nd hand car has an OBD interface :slight_smile:

Have you checked - http://www.obd-codes.com/ - for errorcodes yet ?

Excellent project !!!

I would love to make something like that, and to be able to get rid of the engine light of my car - Ford Focus 2000 SE.

  1. It cost $80 ca for the Ford Dealer can remove it.
  2. It cost about $200 ca to $300 ca for CAN 2 device from Canadian Tire.
  3. I would like to read the data of the CAN 2 of my car to see what wrong with my car and turn off the engine light.

Great work !

Techone:
I would love to make something like that, and to be able to get rid of the engine light of my car - Ford Focus 2000 SE.

You and me both. I have a 2003 Focus. Check engine light comes on for a 'very small' leak in the evap system. Nice. Being impatient, I bought a $50 OBDII scanner at the auto parts store. So I can turn it off myself. I despise the check engine light.

You and me both. I have a 2003 Focus. Check engine light comes on for a 'very small' leak in the evap system.

Mine come on two year ago. It was raining in November and the light come on again. It was fix by the dealer a few week ago. The cause was : 1 cylinder mis-fired. But not all the time. I guess I need to check all 4 spack plug.

I like my car. It is good on gas. About the OBDII scanner, I maybe look into it if I have the money ( depending of my budget )

Nicely done! I seen variations of the same thing but, your project is inspiring!

It's always happy to see feedbacks coming out soon. I will keep posting updates of the project.

I have a question though. Does any one know how to improve software serial's stability with high baudrate (e.g. 38400)? I often gets invalid characters when doing serial communication on D8/D9.

Thanks. I’m glad you like it.
Dealing with errorcodes is not my main target though, as there are plenty of free PC software and mobile apps can do that with a cheap ELM327 adapter.

robtillaart:
I like your project! Good story and good pictures.
such project is still on my todo list since I discovered my new 2nd hand car has an OBD interface :slight_smile:

Have you checked - http://www.obd-codes.com/ - for errorcodes yet ?

Now I've made a kit for this. Check out this post.

That looks great! I also just finished a similar project using the OBD2 device from Sparkfun and a Protoduino. I have added an RTC and a microSD reader and am using a 2x16 serial LCD but have written code to use a 4x20 serial LCD. I want to permanently mount the LCD somewhere in the dash to make it look factory.

My device shows speed, rpm, battery voltage, coolant temp, intake temp, engine load, and current MPG. I am only struggling on how to calculate trip MPG using the current MPG readings. I got the MPG calculation based on the MAF from here: http://www.mp3car.com/engine-management-obd-ii-engine-diagnostics-etc/75138-calculating-mpg-from-vss-and-maf-from-obd2.html

Keep up the great work!

I wonder if it's possible to read obd data from a BT dongle instead of a wired one, using this board instead. :~

I have this bluetooth OBD module and looking inside the transparent case it has a bluetooth module which appears to be identical to this one. Aside from pointing out how cheap the OBD module is (and it works well too, btw) I guess I'm suggesting that the Bluetooth interface is a fairly commodity item -- nothing fancy. I'd assume it would work.

Hi, the article seems to be gone from the link.
Can you explain the code you used to retrieve the information from the obd.
I'm trying to attempt to retrieve info from a jobd not obd2, japanese import car.
They use a different protocol but i'm sure if i found the tx and rx pins i could get some information.
Thanks

Is the OBD adapter based on an ELM327?

Can you use the ELM327 to control systems on board the vehicle? I looked through the datasheet for my bluetooth one, and I don't believe that you can.