When you click on links to various merchants on this site and make a purchase, this can result in this site earning a commission. Affiliate programs and affiliations include, but are not limited to, the eBay Partner Network.
Calibrating the WB O2 in TP using your right foot!
Yes, using your foot, and without the engine running. With this, you can have key on, engine off, in your garage. It allows for the calibration process to take place in a very controlled and convenient environment.
Important disclaimer: USE THIS AT YOUR OWN RISK. I AM NOT RESPONSIBLE FOR ANYONE DOING THIS INCORRECTLY AND/OR ANY DAMAGE RESULTING FROM THIS PROCEDURE.
This is also strictly for 8D and the 7730, for people running S_AUJP and already have their WB O2 gauge's 0-5V output wired into pin F14.
Basically what this is all about is dialing in the equation in TP that converts the WB gauge's 0-5V output into a displayed AFR, and making sure that the TP display matches the WB display, which is important if you're recording data for later review... you want know for sure that what TP is reporting matches the WB gauge since you can't necessarily look at them while you're driving.
What this method does is spoof the WB sensor into the MAP sensor signal input to the ECM, using the output signal of the TPS. Since all of these sensors use a 0-5V signal, you can trick the ECM into thinking one is the other.
The reason I'm using the MAP sensor is because it's active with key on engine off. For whatever reason (at least on mine), the F14 input for the WB is only active with the engine running.
Here's the procedure:
1.) Unplug the MAP sensor electrical connector at the sensor
2.) Get a bare metal paperclip and bend into a tight U-shape (some paperclips come with plastic covering, so those won't work here). But any metal wire will work.
3.) At the ECM, remove the grey clip from the light colored connector. Then insert the paper clip to jumper from F13 (the TPS signal) to F15 (the MAP sensor signal). These are on the left and right side of the WB input into F14, which you should already have installed at this point, so these will be very easy to find.
4,) Load the attached ADX file.
5.) Turn the key on and connect TP to the ECM
6.) The dashboard only has two values on it. WB O2 gauge output volts (which is really just the TPS voltage re-named), and WB O2 AFR (which is just the MAP sensor renamed).
7.) Grab the WB O2 instruction sheet that came with your WB gauge and look up the table for voltage vs gasoline AFR. A sample table below...
8.) In this example, I'd try to lower the TPS voltage to .50V to get the fist point correct (by adjusting the sensor at the throttle body). In the TP display, right click on WB O2 AFR, then expand out the values and click on WB O2 AFR
9.) Click on Conversion, then Set
10.) The equation dialogue box pops up...
11.) So in this example at .50V, the voltage is 8.50 in the table above. So I'd change that 10 in the equation to 8.5.
12.) Click Ok, then Save. TP will update itself, but disconnect from the ECM. You'll have to reconnect TP to the ECM.
13.) You should now see the WB O2 AFR showing 8.50.
14.) This is where your foot comes in... Press the throttle and get the WB Gauge Output Volts to show say, 3.00V. Then compare the WB O2 AFR against the AFR value in the table at 3.00V. In this example, the AFR should be 14.44. If the AFR is lower, reopen the equation dialogue box in step 10 and increase the .040 number. This is the "slope" value of the equation. If the voltage is higher, lower the .040 number. Make small changes at first, like in the 2nd decimal place at first to get a sense of the sensitivity to changes. For example, go from .040 to say, .045 or .035 (depending on which way you need to go) and then see what happens. You may need to iterate on this a bit until the WB O2 AFR value matches the table for the various voltages as you press the throttle. The slope is a straight line, so if you can get the WB O2 AFR to match at 3.00V, then it should match all voltages as you press the throttle and take note of the Volts vs AFR.
15.) Once you get the equation dialed in, you can copy it. Then go back to the regular ADX file, and paste the equation into your WB AFR gauge on your TP dashboard.
Don't forget to re-adjust your TPS back to .54V and plug the MAP sensor back in. AND REMOVE THE PAPER CLIP JUMPER!
The attached file needs to have the file extension changed from .txt to .adx.
Re: Calibrating the WB O2 in TP using your right foot!
To elaborate, The method for the 16197427 is just jumper the TPS to B16(EGR pintle position). I had to set the 10 value to 7.25. When I tried 8.5 the needle would jump up above 8.50 on the dial. I kept working it down until it would read 8.50 and any little movement of the TPS would make it start to rise. Then I just had to work with the ramping rate till the TPS voltage matched the WB voltage and scale. Took about an hour but now I know what I see on the data dash is what the AEM is telling it. The Lambda gauge was straight forward.
There are three things that have to be calibrated. Those are the first two, the third is the history table which is what you're gonna use to crunch the numbers through the VE spreadsheet dave w at Old School EFI developed. I haven't figured out yet how to calibrate that one yet. Anybody got any ideas?
Re: Calibrating the WB O2 in TP using your right foot!
Originally Posted by Vanilla Ice
What am I missing here? Why not do simple math?
Maximum afr - minimum afr / 256
that value should be your scalar and the offset is the minimum afr value.
so that table above should be x*.0371+8.5
is the problem because it doesn’t output up to 5v so 256 values aren’t actually used?
so scale off that is x*.04634+7.31
is that close to what you ended up with?
AEM voltages are .5V-4.5V and the AFR range is 8.5:1- 18:1 but yeah the end result was X*0.0468625 +7.5 I never was any good at algebra. Teacher said pie are square and I thought she was out of her mind. Everybody knows pie are round, cornbread are square!
I found a link to one of Craig Moates pages where he explains the whole thing but I couldn't find the EGR pintle conversion, found the raw counts so if I do find the conversion I can use that to verify the AEM voltages. The ADX is $0D-16197427-V5.6.adx
Re: Calibrating the WB O2 in TP using your right foot!
For whatever reason the WB gauge and the TP display didn't track eachother using AEMs datasheet. Which is why I came up with this manual calibration method
Re: Calibrating the WB O2 in TP using your right foot!
Originally Posted by ULTM8Z
For whatever reason the WB gauge and the TP display didn't track eachother using AEMs datasheet. Which is why I came up with this manual calibration method
It worked for me too except now the Lambda history table needs to be calibrated also. I use that for my VE table calculations.
Re: Calibrating the WB O2 in TP using your right foot!
Originally Posted by Vanilla Ice
If you are reading raw counts (x) for a 0-5v input then the scaling is 5v/255 = .01961. (I did /256 before but 0 doesn’t count so it’s 255 not 256.)
so to get the value of 4.5V in raw counts your scalar is x*1961=4.5. Solve for x. =229 raw counts. Also called an integer value = INT.
230*.01961 =4.51V.
Yeah, your right. looks like simple math. You're basing your calculation off a 0-5V range but what happens when the starting point is .5V? Does that mean the calculation is 4/255? 4 being the hi/low spread. It was that .5V that was causing the needle on the gauge to jump up off the 8.50 AFR mark when I inputted it into the conversion and that's why I had to keep trimming it down. Also how did you determine the INT.?
Don't worry I'll be writing all this down.
In studying these definition files I've noticed that /255 equation used a lot. Is that the maximum binary count for one byte?
Re: Calibrating the WB O2 in TP using your right foot!
Originally Posted by scooterwrench
Yeah, your right. looks like simple math. You're basing your calculation off a 0-5V range but what happens when the starting point is .5V? Does that mean the calculation is 4/255? 4 being the hi/low spread. It was that .5V that was causing the needle on the gauge to jump up off the 8.50 AFR mark when I inputted it into the conversion and that's why I had to keep trimming it down. Also how did you determine the INT.?
Don't worry I'll be writing all this down.
In studying these definition files I've noticed that /255 equation used a lot. Is that the maximum binary count for one byte?
1 Byte = 256 values. So when you're using a byte, that's the number of individual values possible.
INT is that number. INT = Integer. As opposed to Hex which for 255 INT is in FF HEX.
In a 0-5v 1 byte value, .5v is calculated: .5/.01961= 25.49
So that wideband while warming up will show any value below 26 INT or "x"
When the wideband is warmed up its controller will output the actual AFR voltage, so it will jump from whatever value it is to an actual reading. Probably somewhere in the 13s AFR or from <26 immediately to >110.
Is that the jump you're talking about?
If so, then you do NOT want to change values to stop it.
Re: Calibrating the WB O2 in TP using your right foot!
Originally Posted by Vanilla Ice
1 Byte = 256 values. So when you're using a byte, that's the number of individual values possible.
INT is that number. INT = Integer. As opposed to Hex which for 255 INT is in FF HEX.
In a 0-5v 1 byte value, .5v is calculated: .5/.01961= 25.49
So that wideband while warming up will show any value below 26 INT or "x"
When the wideband is warmed up its controller will output the actual AFR voltage, so it will jump from whatever value it is to an actual reading. Probably somewhere in the 13s AFR or from <26 immediately to >110.
Is that the jump you're talking about?
If so, then you do NOT want to change values to stop it.
I wasn't using the WB controller, I was using the TPS adjusted down to .5V and jumpered to the EGR pintle position input to simulate the controller output so my starting voltage was .5V I'm running an early 454 TB that has the TPS sensor with the arm on it so I was moving the arm with my finger to raise and lower the voltage while watching the data dash gauges. The jump occurs when I initiate the data transfer to the laptop. As soon as it sees that .5V the needle jumps up above 8.5 AFR. These gauges are window dressing, if they're ever so slightly off it's no big deal, they bounce around anyway. The one that does need to be dead nuts is the history table. A datalog is useless if the data isn't correct. Last thing I want to do is burn holes in the pistons or wash out the rings.
Re: Calibrating the WB O2 in TP using your right foot!
If Data Dash and Data history tables when reading .5v are above 8.5 afr by more than a small amount, your scale and offset are definitely wrong.
To be completely clear You're taking TPS and manually setting it's actual voltage output to .5v. And also jumping that voltage to EGR, and telling Tunerpro that EGR is scaled exactly like a wideband to make sure that that .5v looks like 8.5afr?
Tell me what is the RAW data value of the EGR you're reading? No Scaling.
What is the RAW TPS data value at the same exact time? No Scaling.
What are the exact names of the datalog variables and what is the exact name of the data history tables output?
These raw values SHOULD be close to 25. If they are not close to each other, say TPS is showing 25 and EGR is showing 90, then your method is not viable.
What I'm wondering is if you're reading EGR off the OEM datastream?
In my Bin, raw EGR is fed into a scaling table that changes it based off RPM and Manifold vacuum. Then it stores it, then it outputs that stored value to ALDL.
So you need to change your ALDL output table to output RAW EGR.
Last edited by Vanilla Ice; May 19, 2025 at 11:59 AM.
Re: Calibrating the WB O2 in TP using your right foot!
I reckon correcting the data dash gauges also corrected the history tables. I reinstalled my jumper this morning and opened the Lambda history table and watched the reading as I raised the TPS in .25V increments. I'm off by +/- .002 at the top and bottom of the range and dead nuts in the middle. I can live with that.