1987 BMW 325e goes into "limp home mode" in snow and rain

(this was written some time ago but placing it here for posterity)

I had acquired a 1987 325e in the summer of 1999 with 73k miles, fairly low mileage for a car of that vintage. It had been fairly well maintained with a few outstanding issues.

The first indication of this problem was the first snowstorm of the winter of 1999-2000.While driving home during a late night snowstorm, the car went into a strange mode where it would not stall, but it would only produce 1000 rpm even if the accelerator pedal was pressed to the floor. The car would make progress at 5 to 10 mph, even going up gentle hills.I parked the car just glad to have made it home.

The next morning it started up and drove fine. The problem was quite unusual and I planned to speak to my mechanic about it. When I did have the conversation,the mechanic was not able to shed any light on the problem.

Over the next 3 years the situation repeated itself, something like 10 or so times. Most dramatically, it would happen during snow storms when driving was already hazardous enough. It also happened during very heavy rain storms, at least once right after going through a deep puddle. In retrospect, a common denominator was snow and rain under the car. However, since I hadn't figured out the problem at that time, it seemed equally plausible that moisture was getting in under the hood and causing possibly some electrical problem there.

I found out much later that the term for this behavior was "limp-home" mode but I didn't know that at the time.

Eventually I acquired a newer BMW which allowed my 325e to become my "project car". As I did more and more to the car (including a complete suspension upgrade - Bilstein sports shocks and Eibach springs) my confidence, interest and knowledge regarding things BMW increased and I decided that I would see this problem through to the end.

The first step in my investigation was to spray water on the car from the top and also to gather some snow/ice from a local ice rink and place it near all the obvious locations under the hood. However, I was unable to recreate the problem with these maneuvers.

Along these lines, I considered theories that are in a sense more conventional than what I ended up with but had the disadvantage of being wrong. It's commonly known that cracks in the distributor cap can cause spark to short to ground and likewise with bad spark plug wires. These scenarios are known to occur in the wet and resolve when drying occurs. This theory was what I tried to confirm with the snow and ice but it did not hold up. Nevertheless, I replaced the distributor cap, rotor and spark plug wires – overall drivability improved, but it did not stop the problem from recurring.

This past winter, the problem recurred several times and the last time it occurred something struck me. On this particular occasion, the snow had pretty much stopped but there was significant accumulation on the roadway, particularly where the tires weren't – i.e. in the middle of the lane.

Soon afterwards I began to reflect on this particular set of circumstances and I thought that this might be the key to the problem that so far had stumped me. When it had warmed up a little I got under the car with the motor running and sprayed water from a garden hose around the area of the catalytic converter, the heat shield around the cat, and the 02 sensor which inserts into the pre-cat exhaust. For a while, nothing really happened, but after a sufficient period of time, I was able to reproduce the problem, I was able to get the car into limp home mode. The car would remain in this mode for some amount of time but could be induced to come out of it by constant application of the accelerator which was a maneuver that had worked sometimes in the past.

Now I began to think about the 02 sensor. The next obvious question to ask would be if it is the 02 sensor, what happens when you disconnect the 02 sensor while in limp home mode? I didn't get to try this during the garden hose experiment, but I did get a chance during a subsequent snow storm when there was a lot of slushy, wet snow on the ground. I came out immediately after parking the car (when it was running fine) and started it up and was immediately in limp home mode. Disconnecting the 02 sensor (under the car, I didn't yet know about the connector near the right front shock mount) immediately solved the problem.

So now the problem was isolated to the 02 sensor but there remained another piece of the puzzle to solve. I replaced the 02 sensor and rewrapped the under the car connection with generous amounts of electrical tape to keep any moisture out. Unfortunately the problem recurred (although it would often be months between episodes of the problem.) I had now isolated the problem to a particular ECU (or DME in BMWspeak) input, but still did not have the exact mechanism and more importantly, how to fix it.

I attended BMW CCA's tech fest East in May of 2004 and was able to engage a wide range of BWM experts while at the meeting. Charlie Burke of Bentley Publishers took a personal interest in my attempts to find an answer to this problem and had all sorts of helpful suggestions. Grant Randall of Alexandria Bavarian recalled a TSB pertaining to late 80's 5 series cars in which the car would go into limp home mode due to lack of waterproofing on the 02 sensor connectors. This was the first I had heard of the term "limp home mode" and while my solution turned out to be somewhat different, it turned out to be the next important clue.

I decided the thing to do upon returning from TechFest was to get an oversize piece of heat shrink tubing and replace the copious amounts of electrical tape with a single, waterproof piece of heat shield tubing and then wrap that in yet even more electrical tape. This was easy to do, and I next washed the car using a regular hose. Then I took the car out and drove it hard for a fairly long period of time. No problems.

I then parked the car for about an hour, started it back up and it was in limp home mode. And so it remained for the better part of 5 days. The only way to drive the car was to disconnect the 02 sensor and this I did on a couple of occasions (at the right front shock mount). During this period if I reconnected the sensor and it would find its way back into limp home mode (although not always immediately – sometimes over the course of a mile or two of driving).

This was discouraging but also presented a unique opportunity. Now was a chance to actually make some voltage measurements with the car acting strangely. Before, this had not been possible as the car was in and out of limp home mode so quickly or I didn't have the tools or the knowledge to pursue it.

I made several measurements and it was during this period that it came out of limp home mode but it stayed in the mode long enough to determine that the sensor voltage was very low and at times possibly even slightly negative (when I say negative maybe -0.01 volts).

Another new piece of data was the hunch, if not the certainty that the car was running rich during this time (I previously had suspected it to have been running lean while in this mode.) I suspected rich as on a couple of occasions I smelt the sulfurous "rotten egg" smell and the car would backfire often while in this mode, both of which go with a rich condition.

So now we have almost enough information to deduce what is going on. Low voltages from the sensor indicate a sensed lean condition while high voltages imply a sensed rich condition. So while the car is running abnormally rich, the sensor is reporting a lean condition. I should also mention that while I measured some voltages under the car, most of the voltages were measured at the connector near the shock mount. I did do a test to see if the sensor wire was in continuity with ground and that test was negative – no continuity.

The final piece of information came from a mixture of frustration and experimentation.

After discussion with friends at work who are both electrical engineers and automotive enthusiasts, the conclusion was that something was pulling the 02 sensor low – pulling it to ground. This explanation actually made sense for all sorts of reasons.
  1. It would explain the false lean signal
  2. This circuit is known to be a low current so it wouldn't take much to pull the voltage low
  3. Intermittent short to ground fits with the history of trouble only in the snow or rain

So now I figured I had to follow the sensor wire all the way on its course from where it leaves the under car connector all the way up to the connector where I measured the bad voltage, near the right shock mount. Unfortunately, the wire disappeared under a piece of sheet metal before passing the fire wall and then turning up towards the right shock mount. (When you're under the car it appears to be "under" the sheet metal but in reality it's "over" – the point is that the 3-wire sheath is sandwiched between this sheet metal and the bottom of the car).

My plan at first was to sort of peel the edges of the sheet metal (really a sort of heat shield, as it has insulation, metallic coating and metal) and try to inspect the cable for breaks in the insulation. To some degree this was possible but in the end I just removed the heat shield – it was basically secured with two fasteners to the underside of the car. Now the wire dropped away from the car for a few inches and a way would have to be found to keep it away from the road but that problem was later solved. I inspected the wire very carefully and found no visible defects in the insulation.

I then drove the car and subjectively it had more "pep".

I figured out how to secure the 02 sensor wire that was hanging down, by using marine epoxy to secure some postage-stamp sized plastic squares that accept cable ties. After epoxying the squares to the underside of the car, it was simple to construct cable tie loops that would hold the sensor wire in place.

Since removing the heat shield, I have washed the car and driven through a torrential downpours with large puddles several times and have had no problems.

To be complete I guess I should repeat the garden hose test but I have not done that to date.

I put it all together as follows. Even though there were no breaks in the insulation visible under simple inspection, there had to have been tiny, invisible insulation defects. When moisture got between the heat shield and the car it provided a path to ground, through the moisture, through the heat shield and then to ground. When the moisture dried, the circuit integrity was restored.

A short to ground is the worst possible case – much worse than a defective 02 sensor. A defective sensor will simply produce no voltage at all – but the ECU will see the 0.45 bias voltage which tells the ECU to go open loop. But if there is a short to ground that can pull even the bias voltage down to close to 0 volts and keep it there. The ECU interprets this as an error condition and goes into limp home mode – or alternatively keeps seeing a "too lean" condition and goes maximally rich. Both explanations probably reduce to more or less the same thing – an engine that is already running getting even more gasoline. The rich getting richer, in other words.

Some web research shows at least anecdotally that it's possible to leak current and voltage without having any visible breaks in the surrounding insulation. A google search of some of these terms produced this example from laparascopic surgery - http://www.encision.com/ and I have a colleague at work who had a similar experience on his farm with some electrical circuitry. A common feature of all of these episodes was very close contact between the insulated wire and the ground source. In my case the heat shield was pressed very tightly against the underside of the car and the sensor wire was imprinted into the metallic covering that was over the insulation. My guess is that there was one or more microscopic defects in the sensor wire insulation providing a path to ground that was only active in the presence of moisture.

Has this situation ever been reported either in BMW circles or in other automotive circles? Well, possibly, but I have found no mention of something like this on the internet in over a year of looking and I have talked to no BMW mechanic who's ever seen this exact set of circumstances. I feel this is a fairly unique situation and worth sharing in the form of a blog.


e30bimmer11 said…
Thank you so much John! You are literally the only person that has given me any insight to this issue. I felt I was to be left in the dark, wandering aimlessly for a solution. However, I do have one question that pertains to the actual location of the O2 sensor and wiring. I myself have a 1986 325e, I figure the material couldn't be too different from an 87 to an 86. Please feel free to contact me at droidfboy11@gmail.com with info and pictures. Thanks!
John Glotzer said…
Welcome, e30 - good luck with your 02 sensor.
e30bimmer11 said…
Could you please shed light on where the location of the O2 sensor and wiring for the sensor are? I really need to resolve this issue, how did you fix your issue?
e30bimmer11 said…
It happened today...bad
John Glotzer said…
I don't have my E30 anymore but from memory the O2 sensor is under the car where it plugs into the exhaust manifold or anyway part of the exhaust system on the driver's side of the car.

The wire from the O2 sensor makes it way up the firewall and makes an electric connection near the Left Front strut tower where from there it goes to the car's CPU (BMW has a term for the CPU - the DME or some such).

If you can identify the connection near the L strut tower - when you get into this case the key is to disconnect the O2 sensor from the CPU. This is because (as I was able to show) the O2 sensor is showing an artificially lean condition which puts the engine into "Limp Home Mode".

If you get into the situation you can verify the problem by disconnecting the O2 sensor.

Once you verify that it exists there is probably a micro break in the insulation somewhere and you have to find that. In my case I ended up ripping off all the thermal insulation that bound the O2 sensor wire to the bottom of the car (I had to then tack the wire back up using a homemade system) but in my case it was the heat insulation that was playing a key role. I explain all this.
Unknown said…
Great write to get this solved for good, I have never come across "Limp Home" mode in my searches of the web for the answer to this problem thanks for preserving this as a blog John. My 1986 325es has an erratic & low idle around 600 and stalls in heavy traffic at times and occasionally bucks has no power at WOT gas floored going up hill. The water temperature sensor Realoem.com #13 link below, adjusts the fuel mixture the ECU puts out at operating temperature so that could also be your problem if you have been tearing your hair out looking for Vacuum Leaks, Anyone else solve this!? ~Mac

John Glotzer said…
Hi Makan - I know longer have the car unfortunately - once I took the steps I described in the blog the problem never returned for as long as I had it - including going through some pretty heavy downpours - so I think for my particular case that was indeed the issue. Thanks for you comments and good luck with your 1986 325es.

Popular posts from this blog

Hit failing alternator with a hammer to confirm diagnosis of failing alternator due to bad brushes

alternatives --install gets stuck: failed to read link: No such file or directory

Thunderbird Stuck in Table Editing Mode