How To: Monitor Trans Fluid Temp (and other things) On Your iPhone

Robb235

Senior Member
For quite a while now, Android phone users have had the option to use Torque Pro to monitor live engine data, including transmission fluid temperature (on '99 and new 4Runners). I started a thread here, but didn't find anyone who had done this before with the iPhone. After doing some internet reading, I came up with the following steps:

Step 1: The app I used is called Engine Link. I'm in no way affiliated with the developers of that app, but it's the only one that I'm aware of that monitors live engine data, and also allows for adding custom PIDs (which you will need to do to monitor transmission temp). Go to the Apple App Store and install the Engine Link App. It's about $5.

qetuvy4e.jpg


Step 2: Next you'll need a device that plugs into your vehicle's OBD2 port, and transmits the data wirelessly. You have two routes you can go with this. Either you can get a Bluetooth adapter, or a WiFi adapter.

WiFi Adapter: The WiFi adapter is the easier of the two. It doesn't require jailbreaking of your iPhone. The downside is, if you use the WiFi adapter, you will lose data connection to your phone. When connected to the WiFi adapter, your phone will be looking for an internet connection, which obviously that OBD2 adapter won't be providing. You can pick up these adapters off Amazon, just make sure that it has ELM327.

Bluetooth Adapter: This is the route I took. The Bluetooth method is a little more complex, however the advantage is that by using Bluetooth instead of WiFi, your phone will still have access to data, whether it's from 3G, 4G, EDGE, etc. For whatever reason, Apple products don't always play nice with Bluetooth, so for this reason, you will need a jailbroken device that has access to the Cydia store (store for jailbroken phones). Jailbreaking your iPhone is outside the scope of this write-up, so if you need instructions on how to jailbreak, I suggest using Google.

In Cydia, you will need to download and install an app called RoqyBT4. This is what will allow your iPhone to "talk" to the Bluetooth-OBD2 adapter. Once installed on your phone, open up RoqyBT4 and follow the instructions for purchasing a license. I paid $7 for mine through Paypal. Once that is complete, go back to Cydia, and download the add-on app called RoqyOBD4. There is no additional cost for downloading the RoqyOBD4 expansion.

Once you've completed the above, you will need a Bluetooth OBD2 adapter. I used one made by BAFX, and bought it off Amazon for $24.

Step 3: Next, we need to connect your iPhone to the OBD2 adapter. These instructions will be geared towards using the Bluetooth adapter, since that is what I used. Wifi adapter should be pretty easy to figure out.

Now that you have the Engine Link app, and your OBD2 adapter, plug in the adapter to your OBD2 port in your vehicle. Make sure your vehicle is running. If using the Bluetooth adapter, open up RoqyBT4, and turn Bluetooth on. For me, the OBD2 adapter was listed as "OBDII" on my list of devices to connect to. Connect to your OBD2 adapter. When the screen pops up telling you that you're connected, take note of the IP address and the port that it connects to. For me, the IP Address is 127.0.0.1 and the port is 35000.

asupa4yv.jpg


Now open up your Engine Link app. You can swipe left and right to get different screens, however the first screen you see should be the one that connects you to your OBD2 adapter. Enter in the Adapter IP Address and Port Number as noted above, and then hit Connect. It should connect in a few seconds. Swipe the screen to the right and you should see various live engine data.

sa2e8uve.jpg


zypyzydu.jpg


Step 4: This step will document how to view the transmission temperature fluid (TFT for short) on '99+ 4Runners. You'll notice that Engine Link doesn't immediately have a PID for the trans temp. If you keep swiping to the right, you should find a screen that says "Long press to create or move the custom PID". Hold down anywhere on the screen, and a window will pop up that says "Add New Display Cell". Usually I pick the one that says "Big Digital", but pick whichever one you like. Here you'll see a bunch of PIDs, such as Calculated Engine Load Value, and Engine Coolant Temperature. However, you'll notice that Transmission Fluid Temperature isn't listed here either. You are going to have to add it in.

To add in TFT, click on "Edit" and then plus "+" on the left side of the screen. Enter in the following information:

ECU address or Header: 0

ModeandPID: 01B4
Formula: A*(9/5)-38
Min Value: 0
Max Value: 300
Description: (I used TFT, but you can put in whatever you like)
Unit: F (if you want, you can put in the degree sign so it's °F).

Your new PID that you just created is now at the bottom of the list of PIDs.

I chose to use my iPhone instead of a Scangauge2 because I didn't want to mount a permanent gauge anywhere in the cabin. This method is also much cheaper than a SGII.

anatabys.jpg


Please post up any questions and I'll be happy to help out.




EDIT 12/24/14: How to Monitor Air/Fuel Ratios (California Emissions Vehicles Only)

Ok, so yesterday I was fooling around with how to read AFR on Engine Link. I've got a '99 4Runner that has California style emissions, which means that there is a an "Air Fuel Ratio Sensor" instead of the normal narrowband oxygen sensor. To see if you have an Air Fuel Ratio Sensor equipped on your rig, take a look at your exhaust pipes, and if you have 2 catalytic converters, you've got the wideband AFR sensor. If you only have 1 catalytic converter, then you've got the narrowband sensor, meaning this part of the write up will not work for you (sorry).

Some 4Runners have the ability to monitor the air fuel ratio directly from the ECU. All that's needed is a custom PID and formula. This only works on some rigs, while it doesn't work on others. Unfortunately this did not work on my '99. I suspect it only works on 2001 and newer, but I'm not positive. At any rate, try the following custom PID and see if it works for you:

ECU address or Header: 0
ModeandPID: 0124
Formula: A*(1465/80)
Min Value: 10
Max Value: 20
Description: Air Fuel (or whatever you want to call it)
Unit: Ratio

If the above works for you, then you're finished. However, if you're like me and the above does not work for you, there's another, more roundabout way to view your AFRs.

Using this method, we're going to create two new custom PIDs. One will be for lean AFRs, the other will be for rich AFRs. Create the following:

ECU address or Header: 0
ModeandPID: 0114
Formula: A*(15/200)+4.8
Min Value: 10 (or however low you want it to go)
Max Value: 14.7 (this MUST be 14.7)
Description: AFR (Rich)
Unit: Ratio


ECU address or Header: 0
ModeandPID: 0114
Formula: A*(30/200)-5.1
Min Value: 14.7 (this MUST be 14.7)
Max Value: 20 (or however high you want it to go)
Description: AFR (Lean)
Unit: Ratio

Now that you've created your two custom PIDs (one for "rich" and one for "lean") go back to your gauge screen. Hold down on the gauge screen until the menu pops up, and select "Big Bar" (selecting "Small Bar" will work too). Place the AFR Rich gauge on the left side of the screen. Do the same thing again, and place the AFR Lean on the right side of the screen, as pictured below:

cd152d88d6ec504076f1a86f0139d8c0.jpg


Now you can monitor what your actual AFRs are. When you're rich, only pay attention to the value on the "Rich" gauge. And when you're lean, only pay attention to the value on the "Lean" gauge.


Here I'm running right at 14.7
4e7a0b02e2f584be27371654d49ebc04.jpg


Here I'm running at 13.12 (ignore the 11.55 value)
946a4de254d269b449ded8c28d1168ef.jpg


Here I'm running at 15.6 (ignore the 15.15 value)
aeb47651aed8b28561a829f4d332e19a.jpg


Hope that helps! Let me know if you have any questions.
 
Last edited:
Register to hide this ad
Thanks for putting this in writing. I just got a wifi only ipad dialed in using the jailbreak/bluetooth option. Works great.

As an added bonus bonus, the roqy BT license allows install on up to 3 devices. so my iphone is JB, tethered to ipad for data, and now I can use a $20 10 yr old tomtom bluetooth gps on either iphone or ipad allowing full nav on the ipad, or a big power savings on the phone by not using its internal gps.

My only potential drawback is this. I am also running a scan gauge so I'm using an obd splitter, I think I might be experiencing intermittent data drops to th SGII when the BT obd is running concurrently. At my last fillip the SG reported 5 miles differently then the car trip meter which has always been an exact match. Also the SG seemed to have a little intermittent latency which it's never had before.

I'll have to keep an eye on that. I don't ever ask a lot, don't know why I can't have my cake and eat it too lol.

Anyways nice write up!
 
Pretty cool! wish I'd have known about this before ordering my interceptor gauge. Much cheaper way to go!
 
Thanks for putting this in writing. I just got a wifi only ipad dialed in using the jailbreak/bluetooth option. Works great.

As an added bonus bonus, the roqy BT license allows install on up to 3 devices. so my iphone is JB, tethered to ipad for data, and now I can use a $20 10 yr old tomtom bluetooth gps on either iphone or ipad allowing full nav on the ipad, or a big power savings on the phone by not using its internal gps.

My only potential drawback is this. I am also running a scan gauge so I'm using an obd splitter, I think I might be experiencing intermittent data drops to th SGII when the BT obd is running concurrently. At my last fillip the SG reported 5 miles differently then the car trip meter which has always been an exact match. Also the SG seemed to have a little intermittent latency which it's never had before.

I'll have to keep an eye on that. I don't ever ask a lot, don't know why I can't have my cake and eat it too lol.

Anyways nice write up!

I'll have to play around with connecting my iPhone to an old Garmin unit I have.

As far as your data drops go, I think it has something to do with our rigs using the ISO OBD2 protocol. If I'm not mistaken, because of ISO, the more PIDs you monitor, the slower the refresh will be. That would certainly explain your mileage variance.

Is their an option for the 96-98 models?

Unfortunately no. Tranmission temperature isn't reported to the ECM on '98 and older models. From what I've read, this seems to hold true across the board for most (all?) Toyota trucks, including T100, Tacoma, and Landcruiser.
 
ECU address or Header: 0
ModeandPID: 01B4
Formula: A*(9/5)-38
Min Value: 0
Max Value: 300
Description: (I used TFT, but you can put in whatever you like)
Unit: F (if you want, you can put in the degree sign so it's °F).
I was searching for the tranny temp for a neighbor's '01 Land Cruiser and came up on this thread.

Your formula has a small error, it should be A*(9/5)- 40 instead of A*(9/5)-38. Your formula will give you a constant 3.6 deg F positive offset error.
 
I was searching for the tranny temp for a neighbor's '01 Land Cruiser and came up on this thread.

Your formula has a small error, it should be A*(9/5)- 40 instead of A*(9/5)-38. Your formula will give you a constant 3.6 deg F positive offset error.

Just curious, how did you come up with -40 instead of -38?
 
-40 is the 'standard' minimum temperature for any OBD sensor. OBD-II PIDs - Wikipedia, the free encyclopedia
Coolant, Air Intake, Engine Oil, Ambient Temp all use A-40 as their equation.

It's possible you're right.

How I came up with the formula was that I took the Scangauge 2 "codes" and found a guide on the internet describing how to convert them to the decimal formula that Engine Link and Torque Pro use. The formula I came up with hinges on how accurate the Scangauge one is.
 
Last edited:
For some reason in Engine Link, Mass Air Flow (MAF) is only listed in grams per second. For me, I prefer pounds per minute. To add MAF in units of lbs/min, add the following custom PID:

ECU address or Header: 0
ModeandPID: 0110
Formula: (((A*256)+B)/100)*(1/7.55983)
Min Value: 0
Max Value: 30
Description: MAF
Unit: lbs/min
 
It's possible you're right.

How I came up with the formula was that I took the Scangauge 2 "codes" and found a guide on the internet describing how to convert them to the decimal formula that Engine Link and Torque Pro use. The formula I came up with hinges on how accurate the Scangauge one is.
A-40 is definitely right. :D

Nearly all of the XGauge codes come from the user community. All their Prius codes (which is a small slice of all the actual codes available) come from Priuschat and the like using telnet to read the raw data.

Somebody must have screwed up the transcription of the code at some point. -40 is the default minimum temp for sensors. -38 makes no sense.
 
A-40 is definitely right. :D

Nearly all of the XGauge codes come from the user community. All their Prius codes (which is a small slice of all the actual codes available) come from Priuschat and the like using telnet to read the raw data.

Somebody must have screwed up the transcription of the code at some point. -40 is the default minimum temp for sensors. -38 makes no sense.

Makes sense.

At any rate, seems you know more about this stuff than your average Joe. Got any other good information, or other PIDs you'd like to share?
 
[MENTION=90026]JeremyB[/MENTION], do you happen to know whether or not your neighbor's Landcruiser has "Air Fuel Ratio sensors", which are pretty much wideband O2 sensors? I'm wondering what happens if you add the custom PID below:

ECU address or Header: 0
ModeandPID: 0124
Formula: A*(1465/80)
Min Value: 0
Max Value: 30
Description: AFR
Unit: Ratio
 
Makes sense.

At any rate, seems you know more about this stuff than your average Joe. Got any other good information, or other PIDs you'd like to share?

For the 3rd gen, not too much. :(

My wife has a 5th Gen, but I haven't been able to spend much time messing with it. Currently I've taken the Gen III Prius PIDs and figured out which work on the 4Runner. There are still several 5th Gen 4Runner specific PIDs that I need to figure out, which is the hard part. That and my TechStream refuses to talk to my Powertrain ECU, which is where all the PIDs I want are! Wife goes on travel soon, so I'll be able to spend some time on it in a few weeks.

[MENTION=90026]JeremyB[/MENTION], do you happen to know whether or not your neighbor's Landcruiser has "Air Fuel Ratio sensors", which are pretty much wideband O2 sensors? I'm wondering what happens if you add the custom PID below:

ECU address or Header: 0
ModeandPID: 0124
Formula: A*(1465/80)
Min Value: 0
Max Value: 30
Description: AFR
Unit: Ratio
If he wants me to see what his tranny temp is, I'll try out the O2 PID too.

Looks like it is a standard Mode 1 PID. Won't be hard to look at. I'll take a picture of the "Available Sensors" to show what all Mode 1 PIDs are available.
 
Last edited:
For the 3rd gen, not too much. :(

My wife has a 5th Gen, but I haven't been able to spend much time messing with it. Currently I've taken the Gen III Prius PIDs and figured out which work on the 4Runner. There are still several 5th Gen 4Runner specific PIDs that I need to figure out, which is the hard part. That and my TechStream refuses to talk to my Powertrain ECU, which is where all the PIDs I want are! Wife goes on travel soon, so I'll be able to spend some time on it in a few weeks.


If he wants me to see what his tranny temp is, I'll try out the O2 PID too.

Looks like it is a standard Mode 1 PID. Won't be hard to look at. I'll take a picture of the "Available Sensors" to show what all Mode 1 PIDs are available.

Can you post some sort of overview on how you identify PIDs, and then how you go about determining the formula, and what sensor it's monitoring? Or is it going to involve an in depth lesson in programming and hexadecimal?
 
Can you post some sort of overview on how you identify PIDs, and then how you go about determining the formula, and what sensor it's monitoring? Or is it going to involve an in depth lesson in programming and hexadecimal?
Currently, all I've done is cheated and verified which Gen III Prius PIDs work on the 5th Gen 4Runners. 4th Gen 4Runners match up with Gen II Prius. 3rd Gen 4Runners should match up to Gen I Prius, but I haven't looked into that. 30 second Google search brought me to this thread: Scangauge or Torque App? | Page 3 | PriusChat I just took their spreadsheet and imported it into Torque and noted which ones gave me numbers that made sense and which ones didn't. All PIDs from the battery ECU didn't work, obviously.

My current plan to identify PIDs specific to the 5th Gen is to run Torquescan to see which PIDs give a response. Torquescan is a Torque plugin that will query PIDs and inform you of responses and what the responses contains. When I first tried it I would get 3-4 responses for a single PID, which was confusing to say the least. I figured out I needed to specify which ECU to query (ex 70e0, 70e2, etc) because several computers had PIDs in the same memory location (ex 2182) and when you don't specify a single ECU, all ECUs reply to Torquescans inquiry.

The hard part is taking the raw data (which is in a series of bytes and in hex) and figuring out what it does to and what equation puts the data into the right unit. Haven't made much progress on that front. :dizzy: I've bought TechStream, which should give me every possible PID. That will narrow things down. It also allows me to know what the PID should be reading. I've done a fair bit of searching, but still haven't found somebody giving a step-by-step run-through of how they deciphered a PID. Most stuff I see gives generalities and says it's hard and difficult (No sh!t sherlock). The Prius community seems to be the only group that's really gone through and generated a lot of PIDs. Yet I still haven't found any threads digging into the nitty gritty there. If I don't find any soon I'll end up begging for help over there.

Edit: Another thread that may help you: http://priuschat.com/threads/gen1-custom-pid-for-engine-link.134153/

Edit Edit: I lied, this thread talks about coming up with PID equations. Quite a long read though! http://priuschat.com/threads/gen2-p...torque-android-app-with-formulas.95370/page-6
 
Last edited:
Just got my ELM327 and hooked it up. The trans temp works perfectly. Does anyone have these codes.

Engine oil temp (015C doesnt work)
Fuel level (012F doesnt work)
Fuel pressure (010A doesnt work)

Are these sensors available on older cars?

Thx
 
Just got my ELM327 and hooked it up. The trans temp works perfectly. Does anyone have these codes.

Engine oil temp (015C doesnt work)
Fuel level (012F doesnt work)
Fuel pressure (010A doesnt work)

Are these sensors available on older cars?

Thx

Those sensors either aren't present, or (in the case of fuel level) aren't reported to the ECU.
 
Not working PLEASE help!

I have an '07 4Runner SR5 V6, i have the Engine Link app and i tried using the code you gave but it isnt working for me! thanks
 
This is the trans temp code that worked for my 2008 Sienna. Give it a try.

Header: 0
PID: 21D9
formula: ((((E*256)+F) * (7/100) – 400)/10)
Min value: 0
Max value: 300
Name: TFT or antything you like
Unit factor: F
 
Last edited:

Members online

Forum statistics

Threads
278,315
Messages
3,554,130
Members
248,016
Latest member
Advally Service

Trending content

Back
Top