Inexpensive PIC Based OBD-2 Interface


OBD-II became the mandatory I/O diagnostic port on cars starting around 1996 in the US. Considering that the interface consists of a couple of I/O lines, serial/usb adapters have been ridiculously expensive for quite a while – especially newer USB versions. [Renan] sent in this PIC18F2450 OBD-II interface. The designer says he can provide boards for just over $6 and programmed PICs if there’s interest. The chip is a few dollars, and everything else is pretty cheap too. Need to work on your car? This thing will cost $15 or so. I think I just might have to burn out a board on my mill later.

48 thoughts on “Inexpensive PIC Based OBD-2 Interface

  1. wowzers!!! if only this worked for cars in 94/95 when they had “hybrid” data ports. Id be down to buy one if there was a link, not because I need one, but to help this guy out and say thank you for the effort.

  2. maybe I missed it but is there source code for the PIC firmware? I’ve been debating making something like this for a while… specifically something to work with my 1995 Nissan 240sx… I know lots of people in my local car club that would love to have one of these I’d love to whip up a batch to sell to the other members at cost since these things are usually so expensive.

    Another benefit to having the source is you could wire up a character LCD and a few buttons to make yourself a built in diagnostics tool.

    I’ve got no use for OBDII stuff. Only my truck is new enough to have it but I couldn’t care less about running diagnostics on that.

  3. The 9pin to OBDII cables are readily available cheaply on Ebay, that’s where I got mine, or can be built yourself.

    For $15 I’ll scrap making my own, and get one of these for my car computer. My effort can be better spent making new software, not duplicating the wheel.

  4. @ Brendan Shanks
    He tells you on the site (now at least) which pins on the OBD2 connector go into the serial port. You could hak together your own cable or direct wire the system if you want to.

    Hardest thing will be the OBD2 connectors as i dont know where to get those.

  5. OMG, I was looking for something like this two weeks ago. I guess I did not look hard enough. Oh well, the $200 OBD2 scanner I got was still cheaper then a $400 repair bill at the service station.

  6. I just can’t image the costing of the product. He
    is willing to charge so little :O I take my hats off
    for his willingness :) I haven’t try it yet but looks
    promising. BTW he is a WxWidget user :D

  7. The text and the schem say he uses a MC33290 IC for com with the OCD bus. yet the board dosent show any 8 pin DIP on it. unless its SMD on the reverse side. im confused. ill look at the gerber later.

  8. I think some of you are misunderstanding.

    All that this device does is converts from one transport protocol to another (basically, rs232 to usb).

    You still need the software on the PC to be able to access the diagnostic system of the car.

    It would be a much, much, larger project if you tried to make it a standalone reader. Don’t get me wrong, it can be done, and would be a fun project, but this particular one isn’t it, but is a good start if thats what you’re looking for. And I’m not trying to bash the project either, it is very cool, but some people have a misconception.

  9. Awesome project. I built an oldschool RS232-OBDII interface from schematics for the open-OBDII project on sourceforge but this is way snazzier.
    Digikey carries a version of the Freescale chip and the PIC: MCZ33290EFR2CT-ND $1.65
    PIC18F2455-I/SO-ND $8 (DIP)

    What a superb project.

  10. This is great. Most solutions have been serial and like the post states, USB options have been pricey.

    I’ve been using the cable from http://obddiagnostics.com/ for a number of years now.

    The gentleman that makes this cable also sells the parts and documentation to build your own based on his design.

    What’s more is this cable is the basis for most open source projects involving OBD. Head on over to source forge and search for obdII.

    Thank you for the great find. Also thanks to the hacker for helping people gain control over their cars.

  11. @emperor_dane:
    using the pic 18f4550 or 18f2550 (40 or 28 pin) to implement a virtual com port is extremely easy. Microchip has sample code on their website that does just that.

    @jake:
    i only see one fet on the schematic, and like chupa don’t see any mc33290 ic. i’m not looking at the gerbers though…

    what i want to know though, is where he can get $6 pcbs with blue soldermask and silkscreening at what i’m assuming is prototype quantities. i can get pcbs for $6 bucks but its without soldermask or silkscreen…

  12. This hardware interface only works with a subset of the available OBD-2 protocols. It does not work with J1850 PWW, J1850 VPW and CAN (controller area networks). The CAN interface is now standard on all 2007 vehicles. So before you invest time and effort in this device, make sure that your vehicle has an ISO-9141-2 or KWP2000 interface, otherwise, you’re out of luck.

  13. If this device works like ELM323 (the author says that it is compatible) would it be then possible to use it with another PIC or Atmel that would request&read data and display it on a LCD display? Is it possible to connect two microcontrollers via it’s USB?!

  14. Cliff, The ducati uses a Cann network. ODB II is not supported on it. You can get a rig from dashpro that will not only allow you to read the data from the unit but err write new data say like odometer etc..

  15. I just payed someone $100 to tell me which wheel sensor is bad on my buick rendezvous. They told me which on it was and said that for another $100 they would install it, (the part costs $89 so I had to at that point) I recently bought a USB cable to hook up to the obd2 sensor but I have no idea where to start. I make engine monitoring systems for aircraft so I know electronics but I’m not to savvy with programming. Can someone point me in the right direction to be able to read my obd2? THANKS A TON

  16. I’ve got a obd2 scanner but I dont have the right cables for audi A6 there in the mail until they come I thought I could hard wire the obd2 if I new the what color of wire went to the coresponding pin It’s a 15 pin scanner and the audi uses 4 pins blk and red/yel and bluei believe.if you could help,Thanks Mark

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.