OBD "Problem Cars"

Discussion related to external OBD and other sensors
User avatar
Harry
Site Admin
Site Admin
Posts: 10518
Joined: Sun Sep 12, 2010 10:32 am
Location: Siegum, Germany
Contact:

OBD "Problem Cars"

Post by Harry »

Dear OBD users,

Starting with version 17, LapTimer strictly checks OBD replies for parameters requested. This strict checking generates some problems for cars with an inconsistent OBD implementation. This articles discusses background and workarounds. In addition, I'd like to use this thread to collect specific solutions we have found out.

Background information: when talking to the car's sensors thru OBD, a client like LapTimer initially asks the dongle which PIDs are supported by the individual car connected to. "PID" is an abbreviation for On-board diagnostics Parameter ID - e.g. current wheel speed. Once this initial request has been answered, only PIDs available, and required by LapTimer, are requested. As an example, LapTimer is interested in the engine's oil temperature (EOT). Oddly, many cars do not deliver this PID to OBD. In a valid OBD implementation, the OBD would have answered availability of EOT initially with "not available".

The problem with inconsistent implementation is they initially mark certain PIDs as available, but actually cannot deliver them when requested. In situations like this, LapTimer considers this to be an error condition and will reset requests and start over - which will loop forever.

The current LapTimer version offers an Expert Setting that allows to exclude such PIDs from requests. It can be found in LapTimer ‣ Settings ‣ Expert Settings ‣ OBD Tweaks ‣ Exclude PIDs Once excluded (e.g. EOT from above), these PIDs are not requested any more and will not generate error conditions any more. In addition, this expert setting can be used to exclude PIDs one is not interested in. Keep in mind, every PID not requested, will not add time to the overall request cycle. Every PID you exclude, will increase the OBD update rate! The exclusion list is made up from a list of hexadecimal Mode/PID pairs (see below for samples).

Here is a list of all PIDs currently requested by LapTimer (if available):

Code: Select all

0100 "PID01-20"
0120 "PID21-40"
0140 "PID41-60"
0900 "PID01-20"
0920 "PID21-40"
0940 "PID41-60"

0101 "DTCCNT"
0902 "VIN"
011C "OBDSUP"
012F "FUELLVL"
0105 "ECT"
015C "EOT"
0106 "STFT1"
 
//  It is not worth excluding any of the above PIDs as they are requested at a very low frequency
//  Please do not exclude to tune update rates
   
0110 "MAF"   //  Exclusion will turn off current fuel consumption, current power, current torque
010C "RPM"   //  Exclusion will turn off rpm AND gear calculation
0111 "TPS"   //  Exclusion will turn off throttle position
010B "MAP"   //  Exclusion will turn off turbo boost gauge in video overlay
010D "VSS"   //  Must not be excluded
Please check http://en.wikipedia.org/wiki/OBD-II_PIDs for details on these values.

As stated initially, I want to use this thread to collect known solutions for specific cars. Here is the current list:

Code: Select all

2004 Lotus Elise 111R -> 0140015C010B
2007 BMW E92 (335i) -> 09020160010B
BMW E90 (325i) BMW7250AA -> 09020160010B0105010601100111 (nearly everything except VSS and RPM excluded
Hope that helps, please add your solutions.

- Harry
Image Image Image Image
KrisS
20 or more Posts ★★★
20 or more Posts ★★★
Posts: 34
Joined: Sat Oct 01, 2011 9:13 pm

Re: [FAQ] OBD "Problem Cars"

Post by KrisS »

I am not sure if my car is a "problem car" but it displays only Revs, Gear but not other OBD info. Is it correct behaviour ? What else I should see on the obd screen / info (boost ? Fuel Consumption ? Power ? Torque?)

The car is Focus RS MK2 and OBD interface id Wi=fi based OBDlink

When I check after connection with OBD interface i get follwoing info:

Image

Image
User avatar
Harry
Site Admin
Site Admin
Posts: 10518
Joined: Sun Sep 12, 2010 10:32 am
Location: Siegum, Germany
Contact:

Re: [FAQ] OBD "Problem Cars"

Post by Harry »

Looking into the first snapshot, your car does not suffer from the issues (missing replies) addressed in this thread. Your car delivers ECT, RPM, VSS, MAF, TPS, VIN as usable "content", which is coolant temperature, engine rpm, wheel speed, mass airflow, throttle position, and vehicle identification number. Besides wheel speed (replacing GPS speed on the left gauge), gear, and RPM, there are two items that need to be discussed:

Turbo gauge: your engine is recognized as a turbo charged (DTCCNT includes an indicator on the type of aspiration), but the actual pressure is not delivered (MAP). This is the reason the turbo gauge (small hand within the rpm gauge) will stay at 0 pressure. The only thing you can do about this is removing the turbo gauge altogether by a) switching your cars vehicle information to "Naturally Aspirated" and b) turning off aspiration type detection. To achieve the later, exclude the DTCCNT pid has described above (set "0101" as the PID to exclude).

Throttle: that one should actually work as the PID is available and is delivered. As this value requires some calibration, please check if the bar stays at zero while driving (full calibration is completed once you have floored the throttle completely, so please take care not to do that on public roads). In case it does, you may switch to one of the throttle pedal PIDs. This is done in LapTimer's expert settings: LapTimer ‣ Settings ‣ Expert Settings ‣ OBD Tweaks ‣ Throttle PID. Please check Position B, D, or E - all of them are reported as available for your Focus.

Hope that helps!

- Harry
Image Image Image Image
KrisS
20 or more Posts ★★★
20 or more Posts ★★★
Posts: 34
Joined: Sat Oct 01, 2011 9:13 pm

Re: [FAQ] OBD "Problem Cars"

Post by KrisS »

Harry. Thx for the answer. The throttle bar works fine (this snapshot was made while stationary).

As for boost: It seems that full implementation of OBD in Ford/Volvo engine is not supported - the MAP info is missing, although in other SW (like Palmerperformance) I use on PC the boost is calculated based on MAF and engine displacement. The question is if you could do similar "emulation" / MAP calculation of this parameter if MAP info is not available ?

The info I've got from Palmer is following:

If you go to the Settings tab > Vehicle Settings, and enter the engine displacement, our software will calculate MAP from SAE.MAF. Then it uses the calculated MAP value to try and calculate boost.
User avatar
Harry
Site Admin
Site Admin
Posts: 10518
Joined: Sun Sep 12, 2010 10:32 am
Location: Siegum, Germany
Contact:

Re: [FAQ] OBD "Problem Cars"

Post by Harry »

Yes, it seems MAP can be calculated from RPM, IAT (available for your vehicle, although not supported currently), MAF, and Engine Displacement. In case you have the actual formula available, I can try adding it in the next minor release version. Otherwise it needs to queue up in the feature requests as I'm fully loaded with work till Autumn ;-)

- Harry
Image Image Image Image
KrisS
20 or more Posts ★★★
20 or more Posts ★★★
Posts: 34
Joined: Sat Oct 01, 2011 9:13 pm

Re: [FAQ] OBD "Problem Cars"

Post by KrisS »

I think it is the formula (but not sure). Will try to verify it

boost pressure in bar = ((maf (g/s)*53.47)/rpm)-1)
User avatar
Harry
Site Admin
Site Admin
Posts: 10518
Joined: Sun Sep 12, 2010 10:32 am
Location: Siegum, Germany
Contact:

Re: [FAQ] OBD "Problem Cars"

Post by Harry »

Yes, please. At least engine displacements is missing? IAT is most probably a sophisticated adjustment depending on air temperature.

- Harry
Image Image Image Image
KrisS
20 or more Posts ★★★
20 or more Posts ★★★
Posts: 34
Joined: Sat Oct 01, 2011 9:13 pm

Re: [FAQ] OBD "Problem Cars"

Post by KrisS »

This is what Palmer has on its page (with explanation how is it calculated)
http://www.palmerperformance.com/downlo ... erence.pdf

Hope it is sufficent, otherwise I will wait in the queue

The Boost is calculated based on MAP
=======================

Boost pressure (pboost) = MAP – pbaro, where MAP is the manifold absolute pressure. Negative values represent vacuum while positive values are boosted pressures usually generated by a turbocharger or supercharger.

And MAP can be calculated based on MAF
=========================
This method for calculating MAP (manifold absolute pressure) is based on the Ideal Gas Law.MAP [kPa] = (MAF * IAT) / ( (M/R) * (RPM/60) * (ED/2) * VE ), whereMAF [g/s] is the mass air flowIAT [K] is the intake air temperatureM [g/mol] is the molecular mass of airR [J/(K*mol)] is gas constant for airRPM [r/min] is the engine speedED [l] is the engine displacementVE is the volumetric efficiencyWhen the „Volumetric efficiency‟ vehicle setting is not provided a value of 75% is used by default.
User avatar
Harry
Site Admin
Site Admin
Posts: 10518
Joined: Sun Sep 12, 2010 10:32 am
Location: Siegum, Germany
Contact:

Re: [FAQ] OBD "Problem Cars"

Post by Harry »

That should be good enough ;-)

- Harry
Image Image Image Image
dcampbell
20 or more Posts ★★★
20 or more Posts ★★★
Posts: 36
Joined: Wed May 22, 2013 2:08 am

Re: [FAQ] OBD "Problem Cars"

Post by dcampbell »

Here is my 2006 BMW 330xi with BT1. I installed the BT1 app and checked for update and looks like I am up to date. I only get nine replies, those with ms response. Should I eliminate all the codes not used by HLT?

http://dyno-tech.com/laptimer/photo.PNG

Fixed image it is too big for forum so made it a link.

Thanks,
Denis
Last edited by dcampbell on Wed May 22, 2013 8:59 pm, edited 2 times in total.
2006 BMW 330xi
LT GP 19.0.16
Go point BT1
Gopro Black Hero3
Ipad gen3
XGPS150A
Post Reply