Successful '93 OBD Reading
#1
Registered User
Thread Starter
Successful '93 OBD Reading
So after snagging a 1993 4runner, I wanted to read the OBD (I, not II) data coming out of the system. Why? Because I'm a nerd and there was data to be had...
I put up a screenshot a little while ago of the car idling, but I was able to get the reader to work more reliably and got some data driving around town, check it out! Nothing is in actual units, but I think it's still pretty cool! It only spits data out about once a second, but still pretty rad.
INJ - Injector pulse width
IGN - Ignition timing angle
RPM - RPM...
MAP - Manifold Absolute Pressure (or air/mass flow rate.. not sure which on my truck)
TPS - Throttle position sensor
SPD - Speed.
I'll do more of a write up when I have some time, but it's an arduino sampling the data coming off VF1 from the ECT and being parsed by a python script.
Would people be interested in buying this sort of thing? If there's enough interest, I could look into producing a bunch of them. I'd like to add WiFi/bluetooth communication to it with corresponding iPhone/Android apps too.
Thoughts?
Thanks!
**EDIT: Added better image**
I put up a screenshot a little while ago of the car idling, but I was able to get the reader to work more reliably and got some data driving around town, check it out! Nothing is in actual units, but I think it's still pretty cool! It only spits data out about once a second, but still pretty rad.
INJ - Injector pulse width
IGN - Ignition timing angle
RPM - RPM...
MAP - Manifold Absolute Pressure (or air/mass flow rate.. not sure which on my truck)
TPS - Throttle position sensor
SPD - Speed.
I'll do more of a write up when I have some time, but it's an arduino sampling the data coming off VF1 from the ECT and being parsed by a python script.
Would people be interested in buying this sort of thing? If there's enough interest, I could look into producing a bunch of them. I'd like to add WiFi/bluetooth communication to it with corresponding iPhone/Android apps too.
Thoughts?
Thanks!
**EDIT: Added better image**
Last edited by adahlin; 02-11-2013 at 07:32 PM.
The following 3 users liked this post by adahlin:
#3
Registered User
Thread Starter
Thanks man! It's somewhere around 4 minutes of data. Turns out processors from 1993 are kinda slow, so the ECU only sends out a packet once every 1.3s!
#5
#6
Registered User
I'll do more of a write up when I have some time, but it's an arduino sampling the data coming off VF1 from the ECT and being parsed by a python script.
So I really have no idea what that says, it's all Greek to me, but I can learn. I might be interested, just for poops and giggles.
So I really have no idea what that says, it's all Greek to me, but I can learn. I might be interested, just for poops and giggles.
Trending Topics
#8
Registered User
iTrader: (-1)
Can't do real time without the inline/breakout reader.
It's not so much about the CPU being real slow its more like real busy, and using a very slow serial clock so it doesn't corrupt any of the incoming data.
I had some data saved on this output but I can't seem to find it.
Adahlin, What are the serial specifics, output voltage, datarate, encoding, stream length and data positions?
It's not so much about the CPU being real slow its more like real busy, and using a very slow serial clock so it doesn't corrupt any of the incoming data.
So I really have no idea what that says, it's all Greek to me, but I can learn. I might be interested, just for poops and giggles
Adahlin, What are the serial specifics, output voltage, datarate, encoding, stream length and data positions?
#9
Registered User
Great job!! definitely interested. Any chance you could get a air/fuel mix reading?? you know if the motor is running rich or lean from that too?? just curious
#10
Registered User
I'll do more of a write up when I have some time, but it's an arduino sampling the data coming off VF1 from the ECT and being parsed by a python script.
So I really have no idea what that says, it's all Greek to me, but I can learn. I might be interested, just for poops and giggles.
So I really have no idea what that says, it's all Greek to me, but I can learn. I might be interested, just for poops and giggles.
#11
Registered User
Join Date: Sep 2007
Location: San Francisco East Bay
Posts: 8,254
Likes: 0
Received 822 Likes
on
649 Posts
BUT there is something even better: fuel trim. adahlin is pulling the serial stream from VF1 when TE2 is grounded. The serial stream does contain a code for Learned A/F Value (fuel trim), but you can get that directly by reading VF1 with TE2 (and TE1) open. It is 5 voltage steps (2.5v nominal). With voltage less than 2.5v, the system is decreasing fuel from the base injector open time in order to get the mixture correct. You could use that reading to tell what the ECU thinks is about to happen.
#13
Registered User
Join Date: Sep 2007
Location: San Francisco East Bay
Posts: 8,254
Likes: 0
Received 822 Likes
on
649 Posts
It's "on my list" to implement, but the reports from others are very good. I believe he uses bit-banging to read the slightly-non-standard serial stream.
#14
Registered User
Join Date: Jun 2014
Location: Shelby co. Alabama
Posts: 71
Likes: 0
Received 0 Likes
on
0 Posts
I'll buy one. You prob already thought of this, but scantools that get their power from other than the diagnostic connector are much easier to use. Great work nerd-man.
#15
Registered User
Thread Starter
Wow, this thing totally fell off the radar for me. How has it already been over a year?!
I'll see if I can get this thing going again and post it somewhere on the internet so people can get at it. I just checked out the other thread with a VB implementation... cool stuff!
I'll see if I can get this thing going again and post it somewhere on the internet so people can get at it. I just checked out the other thread with a VB implementation... cool stuff!
#16
I am very interested to help get this up and running. I have lots of experience with arduino, and I'm about to buy a 128x64 graphic lcd screen to start messing around with a visual interface for exactly this.
I do lots of interface design, and with the base connection to the ECU already done it would be a snap for me to make a piggyback LCD screen and a custom display for all of the data
As of now I'm thinking I want it to display
Left Col
ECT (engine coolant temp)
IAT (intake air temp)
AFM (air flow meter flapper)
TPS (throttle position)
Right Col
RPM
SPD
VAC (vacuum - would require another sensor)
AFR (rough air/fuel based on ecu fuel trim)
Let me know if you're interested. I would love to collaborate! Maybe we could get a kit going. Do you have any experience with pcb design/printing?
I do lots of interface design, and with the base connection to the ECU already done it would be a snap for me to make a piggyback LCD screen and a custom display for all of the data
As of now I'm thinking I want it to display
Left Col
ECT (engine coolant temp)
IAT (intake air temp)
AFM (air flow meter flapper)
TPS (throttle position)
Right Col
RPM
SPD
VAC (vacuum - would require another sensor)
AFR (rough air/fuel based on ecu fuel trim)
Let me know if you're interested. I would love to collaborate! Maybe we could get a kit going. Do you have any experience with pcb design/printing?
#17
Registered User
Join Date: Jul 2012
Location: Northern Colorado
Posts: 1,776
Likes: 0
Received 109 Likes
on
81 Posts
Google "Express PCB" for a great schematic/board layout app and PC board fab service. The tools are free, and the boards themselves are not all that expensive, and good quality. Really simple to use, too.
Jenny, I hate to be the bearer of bad news, but I'm guessing your vehicle doesn't have that bit stream available on the diag connector. I think they didn't bring that out until around '92 or '93. I know Gevo tried to find it on his vehicle ('91, I think), but was unsuccessful. There may be other ways you can get at the data, but probably would require more reverse engineering.
Jenny, I hate to be the bearer of bad news, but I'm guessing your vehicle doesn't have that bit stream available on the diag connector. I think they didn't bring that out until around '92 or '93. I know Gevo tried to find it on his vehicle ('91, I think), but was unsuccessful. There may be other ways you can get at the data, but probably would require more reverse engineering.
#18
Registered User
Join Date: Sep 2007
Location: San Francisco East Bay
Posts: 8,254
Likes: 0
Received 822 Likes
on
649 Posts
Ron -
You know JennyGirl won't shy away from looking directly at the data (https://www.yotatech.com/forums/f116/mpguino-283777/) . As you yourself have lamented, that 1.25 second refresh time is sort of limiting.
Inspired by JennyGirl, I just installed my own MPGuino! The electronics were all done by someone else, the mechanical installation (fabbing a box, hooking up the wiring) took a bunch of time. Once I wring out the calibration, I'll report further.
You know JennyGirl won't shy away from looking directly at the data (https://www.yotatech.com/forums/f116/mpguino-283777/) . As you yourself have lamented, that 1.25 second refresh time is sort of limiting.
Inspired by JennyGirl, I just installed my own MPGuino! The electronics were all done by someone else, the mechanical installation (fabbing a box, hooking up the wiring) took a bunch of time. Once I wring out the calibration, I'll report further.
The following users liked this post:
4runner4days (04-20-2020)
#19
Registered User
Join Date: Jul 2012
Location: Northern Colorado
Posts: 1,776
Likes: 0
Received 109 Likes
on
81 Posts
Does the arduino have a built in ADC and multiplexer? If so, it wouldn't be all that difficult to splice into the harness and get the signals you need, and as suggested, you could have a much faster update rate than 1.25 times/second. Also one could pick up the O2 sensor and the fuel trim, which are not present in the factory data stream.
Electronic vacuum sensors are available from DigiKey for about $16, and are quite accurate and sensitive. I have one that will easily resolve .05" of vacuum.
Electronic vacuum sensors are available from DigiKey for about $16, and are quite accurate and sensitive. I have one that will easily resolve .05" of vacuum.
#20
scope- I was considering that as an option as well! So it's good to hear your input with it. The regular arduino has 6 ADC inputs, and the mega has way more. I was liking the 1 wire connection over splicing so many cables, but I also didn't know that would mean a max 1sec refresh rate.. that is pretty limiting. Ideally I want it to be able to display a graph that moves smoothly during driving... logging as you go
Congrats on the mpguino! You are going to love it. Just took a trip down to San Diego again and now with the top on and electric fan (shut off at speed on highway), I clocked a 27.5mpg trip
I just want to completely nerd this truck out
Anyway, I suppose I will just try tapping into the harness to get the voltages into the arduino. Ideally would like it to refresh 4-5x a second.
Thanks for the tip about the vac sensor!
Congrats on the mpguino! You are going to love it. Just took a trip down to San Diego again and now with the top on and electric fan (shut off at speed on highway), I clocked a 27.5mpg trip
I just want to completely nerd this truck out
Anyway, I suppose I will just try tapping into the harness to get the voltages into the arduino. Ideally would like it to refresh 4-5x a second.
Thanks for the tip about the vac sensor!
The following users liked this post:
4runner4days (04-20-2020)