Jump to content
javadude

Lambda/O2 sensor/probe stuck at 870mv

Recommended Posts

javadude

Until a couple of days ago I’d only ever used the mobile version of the GS-911 software to check for error codes and other readings I understood.

 

Then I connected my laptop to the GS-911 and clicked around the software to see what it more could do. One of the things I did was to look at the Lambda voltage, which was high at c. 870mv and well above the green band – i.e. fuelling running rich.

 

I went away and did some research to learn that the Lambda graph should really be jumping around, whereas mine was almost flat at a fairly constant 870mv. I also learnt that the engine should be up to temperature before taking any meaningful readings.

 

So yesterday I reconnected my laptop and started the GS-911 data logging (spreadsheet enclosed). I pulled the fast idle trigger into its first position – the BMW Repair Manual refers to this as ‘starting-speed increase’ - started the engine from cold and allowed the engine to warm up. When it reached operating temperature, around 80C, I turned the fast idle off whereupon the idle speed dropped from about 2,2000 RPM to around 1,100 RPM.

 

I expected the Lambda voltage to start jumping around but it remained stuck at about 870mv.

 

Even as the engine temperature continued to increase it remained stuck at about 870mv. I switched the engine off and went back inside to take a look at the data log.

 

The first thing I noticed, is that all the way through ‘Lambda closed-loop control’ remains at 0 (zero) – i.e. open-loop. My understanding is that it should switch to closed-loop when the engine gets to operating temperature.

 

The second thing I noticed, is that ‘Idle switch’ remains at 1 (one). So I went back to the start of the log and can see that it starts at 0 (zero), and changes to 1 (one) before the engine starts up. This tells me that it is switching on but not switching off again. At this point in time my theory is that this is forcing the ECU to remain in open-loop.

 

I’ve checked the BMW Repair Manual and wiring diagrams for my bike, but I can’t see a physical ‘idle switch’ anywhere.

 

I could have missed something of course, but my question is this: How does the ECU know when the ‘idle switch’ is on or off?

 

In terms of possible solutions, I don't think that the TPS adjustment is the problem, as it's nicely in the green zone according to GS-911 readings. The enclosed graphs from the GS-911 log bears this out, IMO. In the top graph, about 2/3 along, the 'Ignition angle' drops as does the 'Throttle position (TPS)' when the 'fast idle' is switched off.

 

Thanks in advance for any assistance you can give!

 

Motronic MA2.4
Motorcycle Variant:   R1100 S ECE-Kat - 1999, 50,000 miles
Part No.:   1342982
Bosch Part Number:   0261204709
ECU Software Number:   1037359252
ECU coding variant:   0
ECU program version:   43010300
Manufacturer:   Bosch
HWOE No.:   42375823
Idle Actuator:   No
Emissions control type:   Lambda

 

 

gs-911 log 2019-06-08 xl graphs.png

gs-911 log 2019-06-08.csv

Share this post


Link to post
Share on other sites
dirtrider
2 hours ago, javadude said:

Until a couple of days ago I’d only ever used the mobile version of the GS-911 software to check for error codes and other readings I understood.

 

Then I connected my laptop to the GS-911 and clicked around the software to see what it more could do. One of the things I did was to look at the Lambda voltage, which was high at c. 870mv and well above the green band – i.e. fuelling running rich.

 

I went away and did some research to learn that the Lambda graph should really be jumping around, whereas mine was almost flat at a fairly constant 870mv. I also learnt that the engine should be up to temperature before taking any meaningful readings.

 

So yesterday I reconnected my laptop and started the GS-911 data logging (spreadsheet enclosed). I pulled the fast idle trigger into its first position – the BMW Repair Manual refers to this as ‘starting-speed increase’ - started the engine from cold and allowed the engine to warm up. When it reached operating temperature, around 80C, I turned the fast idle off whereupon the idle speed dropped from about 2,2000 RPM to around 1,100 RPM.

 

I expected the Lambda voltage to start jumping around but it remained stuck at about 870mv.

 

Even as the engine temperature continued to increase it remained stuck at about 870mv. I switched the engine off and went back inside to take a look at the data log.

 

The first thing I noticed, is that all the way through ‘Lambda closed-loop control’ remains at 0 (zero) – i.e. open-loop. My understanding is that it should switch to closed-loop when the engine gets to operating temperature.

 

The second thing I noticed, is that ‘Idle switch’ remains at 1 (one). So I went back to the start of the log and can see that it starts at 0 (zero), and changes to 1 (one) before the engine starts up. This tells me that it is switching on but not switching off again. At this point in time my theory is that this is forcing the ECU to remain in open-loop.

 

I’ve checked the BMW Repair Manual and wiring diagrams for my bike, but I can’t see a physical ‘idle switch’ anywhere.

 

I could have missed something of course, but my question is this: How does the ECU know when the ‘idle switch’ is on or off?

 

In terms of possible solutions, I don't think that the TPS adjustment is the problem, as it's nicely in the green zone according to GS-911 readings. The enclosed graphs from the GS-911 log bears this out, IMO. In the top graph, about 2/3 along, the 'Ignition angle' drops as does the 'Throttle position (TPS)' when the 'fast idle' is switched off.

 

Thanks in advance for any assistance you can give!

 

 

 

 

gs-911 log 2019-06-08.csv 64.8 kB · 0 downloads

 

 

Morning  javadude

 

First thing on the idle switch-  That isn't what you think it is, the idle switch is BMW talk for the  neutral switch.

 

As for the o2 (lambda) sensor, is your bike stock or does it have any type of aftermarket fuel controller on it (like a Techlusion or the like?)

 

Does your bike still have the stock CCP in the fuse box?

 

How does the engine run now???-- If the engine runs good, is smooth to take throttle, & idles OK then you might be looking at something wrong with o2 sensor itself, or some outside influence into the o2 sensor circuit. Any black smoke out of the exhaust or a real black muffler outlet area?

 

The  next thing that you need to do is figure out (IF) the o2 sensor output voltage is a real indication of the engine fueling (like dripping fuel injector, fouled lower spark plug,  plug in the air intake, excessively high fuel pressure, etc),  or if the o2 sensor output is due to other influences (like failed o2 sensor, ignition noise into the o2 circuit, o2 sensor pig tail hanging down on the exhaust system,  etc)

 

Start with a visual check of the o2 wiring to verify that it isn't contacting the exhaust system or that it isn't burnt through.

 

Next, make sure that the R/H lower spark plug wire in not running along or near the o2 sensor pig tail (if it is then re-route it away form spark plug wire (there is a BMW service bulletin on this).

 

Next, make sure that the fuel return hose quick disconnect is FULLY snapped together (if that is not fully connected it will drive fuel pressure very high) then cause the fueling to go rich.

 

Next, make sure that a lower spark plug isn't fouled. Even an upper stick coil that isn't working correctly can drive the fueling rich.

 

Tell us how the bike is running now then maybe we will have a path to follow as to what to check or look at. How many miles on the bike now?  Any modifications to the engine controls?  Does your bike still have the stock CCP in the fuse box?

 

Maybe try running the engine at idle with the vacuum hoses pulled off of the bottom of the throttle bodies (or vacuum caps removed if the evap system has been removed). That will drive the idle fueling lean so see if the o2 sensor responds to that.

 

You might also PM (message)  (      roger 04 rt     )  on this site as he has done a LOT o2 sensor work on the BMW 1150RT. 

Share this post


Link to post
Share on other sites
javadude

Thanks dirtrider for you suggestions.

 

Here's an update on my testing.

 

In the first test I ran, I used the fast idle to get the engine up to temperature quickly but the graph showed the ‘Idle switch’ turning on and not turning off again.

 

I ran another test specifically to test whether the ‘Idle switch’ was working correctly and got a completely different graph!

 

From the very start, the GS-911 recorded the fast idle being turned on and off. I’d noticed this at the very start of my first test but when the engine was up to temperature the ‘Idle switch’ remained on.

 

In the second test the ‘Lambda closed loop control’ remained off until the engine temperature reached about 58 C, when it flickered briefly. When the engine temperature reached about 64 C it remained mostly on, which means, if I’ve understood things correctly, that the ECU is using the Lambda/O2 sensor in its calculations.

 

At about the same point, the ‘Lambda sensor voltage’ is seen to drop and then follow its expected pattern of jumping between high and low voltages. Whilst this is much, much closer to the expected pattern, I’m uncertain whether it’s actually responding quickly or slowly when compared to other published graphs out there.

 

Interestingly, as the engine temperature continues to rise, the ECU switches back to open-loop and the ‘Lambda sensor voltage’ goes back up to the 870mv range seen on the first run. I suspect that the ECU is running a rich mixture in an attempt to control the engine temperature.

 

It seems that my first test was invalidated by keeping the fast idle switched on for so long during warm-up, which may have caused the ECU to remain in open loop, especially as the engine temperature continued to rise. It’s all down to the programming, and since we don’t have access to the spec or the code, all we can do is monitor the behaviour and comment, possibly speculatively.

 

Given that I’ve been able to observe a more normal ‘Lambda sensor voltage’ graph I’m going to leave it at that for now.

 

For the benefit of others who may read this post:

My bike is a European spec R1100S manufactured in December 1998. Apart from a K&N air filter, it's a fully stock model. Interestingly, it does not have a Cat Code Plug (CCP) fitted. I checked this out with an independent BMW business here in the UK, motorworks.co.uk, who confirmed that EC models were not fitted with a CCP. The GS-911 ECU readout shows the ‘Motorcycle Variant’ as ‘R1100 S ECE-Kat’. That reads like ‘EC model with catalytic converter’ to me, and I believe that this also refers to the set of maps that the ECU is using (please refer to this post for R1100 & R1150 CCP variations).

gs-911 log 2019-06-10 xl graph.png

Share this post


Link to post
Share on other sites
roger 04 rt

I’ll get back to you with some detailed comments but the graph above is basically normal.

 

My Introduction/Wideband O2 thread has a lot of detail about how all these pieces interact.

Share this post


Link to post
Share on other sites
roger 04 rt

A couple points:

 

When cold, till about 60C, the motronic is open loop and enriches the mixture 5-15%. That is why you see 8xx mV. 

 

The “idle switch” is a binary bit that the motronic sets to a 1, when the TPS is moved off idle. Somewhere above 370 mV. It seems to affect ignition Advance, not mixture. The fact yours is bumping around suggests it is misadjusted. 

 

The motronic fuels Open Loop at light engine loads (e.g. in neutral) above about 2000 rpm. 

 

attachment.php?attachmentid=47241&d=1415

Share this post


Link to post
Share on other sites
roger 04 rt
On 6/9/2019 at 8:39 AM, javadude said:

Until a couple of days ago I’d only ever used the mobile version of the GS-911 software to check for error codes and other readings I understood.

 

Then I connected my laptop to the GS-911 and clicked around the software to see what it more could do. One of the things I did was to look at the Lambda voltage, which was high at c. 870mv and well above the green band – i.e. fuelling running rich.

 

I went away and did some research to learn that the Lambda graph should really be jumping around, whereas mine was almost flat at a fairly constant 870mv. I also learnt that the engine should be up to temperature before taking any meaningful readings.

 

So yesterday I reconnected my laptop and started the GS-911 data logging (spreadsheet enclosed). I pulled the fast idle trigger into its first position – the BMW Repair Manual refers to this as ‘starting-speed increase’ - started the engine from cold and allowed the engine to warm up. When it reached operating temperature, around 80C, I turned the fast idle off whereupon the idle speed dropped from about 2,2000 RPM to around 1,100 RPM.

 

I expected the Lambda voltage to start jumping around but it remained stuck at about 870mv.

 

Even as the engine temperature continued to increase it remained stuck at about 870mv. I switched the engine off and went back inside to take a look at the data log.

 

The first thing I noticed, is that all the way through ‘Lambda closed-loop control’ remains at 0 (zero) – i.e. open-loop. My understanding is that it should switch to closed-loop when the engine gets to operating temperature.

 

The second thing I noticed, is that ‘Idle switch’ remains at 1 (one). So I went back to the start of the log and can see that it starts at 0 (zero), and changes to 1 (one) before the engine starts up. This tells me that it is switching on but not switching off again. At this point in time my theory is that this is forcing the ECU to remain in open-loop.

 

I’ve checked the BMW Repair Manual and wiring diagrams for my bike, but I can’t see a physical ‘idle switch’ anywhere.

 

I could have missed something of course, but my question is this: How does the ECU know when the ‘idle switch’ is on or off?

 

In terms of possible solutions, I don't think that the TPS adjustment is the problem, as it's nicely in the green zone according to GS-911 readings. The enclosed graphs from the GS-911 log bears this out, IMO. In the top graph, about 2/3 along, the 'Ignition angle' drops as does the 'Throttle position (TPS)' when the 'fast idle' is switched off.

 

Thanks in advance for any assistance you can give!

 

Motronic MA2.4
Motorcycle Variant:   R1100 S ECE-Kat - 1999, 50,000 miles
Part No.:   1342982
Bosch Part Number:   0261204709
ECU Software Number:   1037359252
ECU coding variant:   0
ECU program version:   43010300
Manufacturer:   Bosch
HWOE No.:   42375823
Idle Actuator:   No
Emissions control type:   Lambda

 

 

gs-911 log 2019-06-08 xl graphs.png

gs-911 log 2019-06-08.csv 64.8 kB · 1 download

 

JD,

 

I scrolled through the CSV data. When your bike is hot (>80C) and idling at 1150 RPM, the TPS reads 0 degrees. The Motronic considers that an errant reading and as a result isn’t invoking Closed Loop.

 

What you need to do is adjust the TPS using either the GS-911 (adjust to center of range at idle) or a DVM (340 mV at idle). I’m mentioning that these reading should be at hot idle because intake vacuum will close the TPS further than an adjustment with the bike off, if the TB shafts have any wear.

 

A note to others following this thread: the TB Sync procedure is the process of aligning your bike’s TBs and cables to the Motronic. In this case, although hot idle is adjusted to 1150, but the TPS at idle is adjusted below 0.32 degrees or 310 mV, which is not what the Motronic wants.

 

Here is the full procedure: 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...