Homemade OBD1 reader with Arduino?
#1
Senior Member
Thread Starter
Join Date: Feb 2010
Location: Oregon
Posts: 683
Likes: 0
Received 9 Likes
on
6 Posts
Car: 1991 Z28
Engine: L31-R 350 w/ EBL P4
Transmission: 700R4
Axle/Gears: 2.73
Homemade OBD1 reader with Arduino?
Hey guys,
I'm having some car problems right now and I need to read the values from the various sensors to see if everything is working correctly. The scan tool I usually use is owned by my Grandpa, who just had shoulder surgery last week, so I won't be able to use that for a few weeks.
I was, however, able to find a post where a guy used an Arduino variant board that allowed him to do usb-to-serial. The link to that is here:http://www.dieselplace.com/forum/63-...than-10-a.html
I have an Arduino Uno laying around from an engineering class I took a few years ago. The board has the ability to do usb-to-ttl serial and it has all of the ports (GND, TX, and RX) that the board in the above link has. I'm tempted to try it out, but I can't any solid info anywhere on the baud 8192 port that GM uses. Some sites mention using max232s to convert rs232 to ttl, and other sites talk about just using ttl.
So what does GM usually use? If I hook up my Arduino with ttl and GM uses rs232, I'll probably fry my board. So I want to know if this will work or if I'll have to buy some extra parts because I don't have the money to afford a scan tool.
I'm having some car problems right now and I need to read the values from the various sensors to see if everything is working correctly. The scan tool I usually use is owned by my Grandpa, who just had shoulder surgery last week, so I won't be able to use that for a few weeks.
I was, however, able to find a post where a guy used an Arduino variant board that allowed him to do usb-to-serial. The link to that is here:http://www.dieselplace.com/forum/63-...than-10-a.html
I have an Arduino Uno laying around from an engineering class I took a few years ago. The board has the ability to do usb-to-ttl serial and it has all of the ports (GND, TX, and RX) that the board in the above link has. I'm tempted to try it out, but I can't any solid info anywhere on the baud 8192 port that GM uses. Some sites mention using max232s to convert rs232 to ttl, and other sites talk about just using ttl.
So what does GM usually use? If I hook up my Arduino with ttl and GM uses rs232, I'll probably fry my board. So I want to know if this will work or if I'll have to buy some extra parts because I don't have the money to afford a scan tool.
#2
Moderator
iTrader: (1)
Join Date: Mar 2002
Location: Chasing Electrons
Posts: 18,399
Likes: 0
Received 215 Likes
on
201 Posts
Car: check
Engine: check
Transmission: check
Re: Homemade OBD1 reader with Arduino?
The GM ECMs of this era use a 0 - 5 V signal. It is inverted from RS-232 so that a MAX232 device used to convert provides the proper RS-232 signal to a PC/Laptop serial port (+-5 to 12 volts, or so).
Most u-controllers that have TTL serial also have their signal inverted from RS-232, so you can connect directly to it's port from the ECM. The only issues is, the ALDL signal is bi-directional on one line.
IIRC, (been a while) a resistor and diode is enough to convert back and forth between the u-controller TX & RX, to the ECM's bidirectional TX/RX on one line.
RBob.
Most u-controllers that have TTL serial also have their signal inverted from RS-232, so you can connect directly to it's port from the ECM. The only issues is, the ALDL signal is bi-directional on one line.
IIRC, (been a while) a resistor and diode is enough to convert back and forth between the u-controller TX & RX, to the ECM's bidirectional TX/RX on one line.
RBob.
#3
Moderator
iTrader: (2)
Re: Homemade OBD1 reader with Arduino?
There are many schematics online for single and double transistor cables for the OBD1 GM ECM.
It's also been found that many of the USB to FT232 break-out boards on the market will work to read data from an OBD1 GM ECM as well, by shorting the the TX and RX pins, connected to the data wire at the ALDL port and then connect the ground as well, for the reference.
IIRC the UNO has a similar functionality, but does take a sketch to enable it properly.
It's also been found that many of the USB to FT232 break-out boards on the market will work to read data from an OBD1 GM ECM as well, by shorting the the TX and RX pins, connected to the data wire at the ALDL port and then connect the ground as well, for the reference.
IIRC the UNO has a similar functionality, but does take a sketch to enable it properly.
#4
Senior Member
Thread Starter
Join Date: Feb 2010
Location: Oregon
Posts: 683
Likes: 0
Received 9 Likes
on
6 Posts
Car: 1991 Z28
Engine: L31-R 350 w/ EBL P4
Transmission: 700R4
Axle/Gears: 2.73
Re: Homemade OBD1 reader with Arduino?
Thanks guys. This is just what I needed. If I ground the reset pin, the Uno automatically goes into ttl serial mode. I'll try to hook it up later today.
#5
Senior Member
Thread Starter
Join Date: Feb 2010
Location: Oregon
Posts: 683
Likes: 0
Received 9 Likes
on
6 Posts
Car: 1991 Z28
Engine: L31-R 350 w/ EBL P4
Transmission: 700R4
Axle/Gears: 2.73
Re: Homemade OBD1 reader with Arduino?
It worked! I was able to get two logs in tunerpro RT from the car. In both logs I started from my garage and ended in my garage. The first log has a little bit more throttle variety. The second log is just me going up to a flat street and flooring it a few times because I think I didn't in the first one.
My issue can be seen in this thread here: https://www.thirdgen.org/forums/tech...esitation.html
I was told to get data from all of the sensors to try and diagnose my issue. One thing I did notice is that the TPS never hit 100% even though I definitely had the throttle to the floor multiple times in log 2. I don't really know what I'm looking for, though, and I was wondering if one of you guys could take a look at my logs and see if everything is running ok?
My issue can be seen in this thread here: https://www.thirdgen.org/forums/tech...esitation.html
I was told to get data from all of the sensors to try and diagnose my issue. One thing I did notice is that the TPS never hit 100% even though I definitely had the throttle to the floor multiple times in log 2. I don't really know what I'm looking for, though, and I was wondering if one of you guys could take a look at my logs and see if everything is running ok?
Last edited by Dartht33bagger; 09-26-2014 at 08:50 PM.
#6
Junior Member
iTrader: (1)
Join Date: Oct 2004
Location: Morristown, NJ
Posts: 14
Likes: 0
Received 0 Likes
on
0 Posts
Car: 73 Camaro LT/RS
Engine: 327
Transmission: Supert T-10
Re: Homemade OBD1 reader with Arduino?
Ignore message. I found what I was looking for.
Last edited by amargari; 10-29-2013 at 06:12 PM.
Trending Topics
#8
Senior Member
Thread Starter
Join Date: Feb 2010
Location: Oregon
Posts: 683
Likes: 0
Received 9 Likes
on
6 Posts
Car: 1991 Z28
Engine: L31-R 350 w/ EBL P4
Transmission: 700R4
Axle/Gears: 2.73
Re: Homemade OBD1 reader with Arduino?
It ended up working with the Arduino. All I had to do was put the device in TTL-Serial mode and I was able to log the data.
I'm still trying to figure out how to read the data that came out though
I'm still trying to figure out how to read the data that came out though
#10
Junior Member
Join Date: Jan 2008
Location: Florida
Posts: 21
Likes: 0
Received 0 Likes
on
0 Posts
Car: 98 Trans Am
Engine: LS1
Transmission: A4
Re: Homemade OBD1 reader with Arduino?
You may be interested in this project also. Looks very promising so far.
http://www.gearhead-efi.com/Fuel-Inj...2318-ALDLdroid
http://www.gearhead-efi.com/Fuel-Inj...2318-ALDLdroid
#11
TGO Supporter
iTrader: (2)
Re: Homemade OBD1 reader with Arduino?
It worked! I was able to get two logs in tunerpro RT from the car. In both logs I started from my garage and ended in my garage. The first log has a little bit more throttle variety. The second log is just me going up to a flat street and flooring it a few times because I think I didn't in the first one.
My issue can be seen in this thread here: https://www.thirdgen.org/forums/tech...esitation.html
I was told to get data from all of the sensors to try and diagnose my issue. One thing I did notice is that the TPS never hit 100% even though I definitely had the throttle to the floor multiple times in log 2. I don't really know what I'm looking for, though, and I was wondering if one of you guys could take a look at my logs and see if everything is running ok?
Here is the dropbox link to the xdl files: https://www.dropbox.com/sh/6tpt0pqlkhealvc/TqTNcz_-sQ
My issue can be seen in this thread here: https://www.thirdgen.org/forums/tech...esitation.html
I was told to get data from all of the sensors to try and diagnose my issue. One thing I did notice is that the TPS never hit 100% even though I definitely had the throttle to the floor multiple times in log 2. I don't really know what I'm looking for, though, and I was wondering if one of you guys could take a look at my logs and see if everything is running ok?
Here is the dropbox link to the xdl files: https://www.dropbox.com/sh/6tpt0pqlkhealvc/TqTNcz_-sQ
#12
Senior Member
Thread Starter
Join Date: Feb 2010
Location: Oregon
Posts: 683
Likes: 0
Received 9 Likes
on
6 Posts
Car: 1991 Z28
Engine: L31-R 350 w/ EBL P4
Transmission: 700R4
Axle/Gears: 2.73
Re: Homemade OBD1 reader with Arduino?
Sorry for missing your post Jim85IROC. I just got around to look into this issue yesterday and came back to report in on this post. I did not have to do anything special to get the Arduino working. All I had to do was put it into TTL serial mode and connect it to the ODB1 port. Using a program called Tunerpro RT, I was able to use the Arduino as a serial port to read the data off the ECM.
As for my original issue, the MAP seems okay. At 101.5 kpa it was reading 4.8V. At about 24.3 kpa it was reading 0.7V. While I was testing the MAP sensor, I noticed that the vacuum line running from the planum to the MAP sensor was loose and lost vacuum if I moved it at all. I replaced the vacuum line and the car seems to run a lot better now. I'm thinking (and hoping) that the new hose fixed the issue.
As for my original issue, the MAP seems okay. At 101.5 kpa it was reading 4.8V. At about 24.3 kpa it was reading 0.7V. While I was testing the MAP sensor, I noticed that the vacuum line running from the planum to the MAP sensor was loose and lost vacuum if I moved it at all. I replaced the vacuum line and the car seems to run a lot better now. I'm thinking (and hoping) that the new hose fixed the issue.
Thread
Thread Starter
Forum
Replies
Last Post
aldl, aldlinterfaceusb, ardiuno, arduino, camaro, codes, communicating, computer, diagnostic, homemade, hook, obd, obd1, read, started