Further Troubleshooting of E46 No Start

In which I get BMW dealer-specific tools on my side

Many years ago, I ordered a USB to OBD2 interface. It is recognized by my machine as a Future Devices FTR232R USB UART (chip FT232RL).

I wasn’t able to get this working properly at the time, so I turned around and ordered a different interface, marked BMW Scanner 1.4.0. This shipped with PA Soft’s BMW Scanner 1.4.0.6, and served me well for reading off error codes and resetting them. I was able to use it to reset the airbag indicator, which I tripped during a window regulator service back in December 2012.

Most recently, I found myself troubleshooting a no start condition following the replacement of my 2003 BMW 330i’s CCV system.

I knew that it would do me well to play with some BMW dealer-specific tools. There were limitations to the depth that I could go as a shadetree mechanic by relying solely on BMW Scanner 1.4.0, and I was starting to question my decisions.

I started with an installer that I already had on my NAS: EasyDIS + GT1 v44. I gave up after installation failed. For reasons unknown, I wasn’t able to get GT1 v44 to install.

At this point, I learned of newer diagnostic tools, so I decided to pursue those instead.

I browsed the BMW Coding and Programming section of the Bimmerfest forums and found Mike’s Easy BMW Tools Package (direct download through Mega), which contains the following (note that I do not provide support for this tool, but merely post information on it for reference):

  • INPA 5.0.6 (with English script files and support for F-series
  • EDIABAS 7.3.0
  • NCS Expert (with English menus and buttons, and NCS Dummy Profile pre-installed)
  • NCS Dummy 4.0.1
  • Tool32 4.0.3
  • WinKFP 5.3.1
  • Integrated SP-DATEN v53.3
  • BMW Coding Tool v2.5.0 (for use as an alternative to NCS Dummy, or to update DATEN files as new ones become available)
  • USB Drivers for cable

I ran the installer on the same Windows XP Pro SP3 virtual machine that housed my working copy of BMW Scanner. I skipped the bundled USB drivers for my interface, opting to use the latest revision from FTDI. Initially, I encountered no success with INPA, but I was finally able to get INPA to read some of my vehicle’s data after revising settings inside of the Device Manager.

I read on Bimmerforums.co.uk (bimmerforums.co.uk/forum/f99/idiots-guide-bmw-inpa-installation-modded-usb-vagcom-interface-winxp-vista-t102843/) that changing USB transfer sizes would help: inside of the Device Manager, expand Ports (COM & LPT), right-click on USB Serial Port and select Properties, select the Port Settings tab, click the Advanced… button, and adjust the Receive and Transmit data rates to 2048 Bytes using the dropdown menus.

Given that I was able to get my FTR232R USB to OBD2 interface working for INPA, I reasoned that I wasn’t far off from ISTA/D. I set up ISTA/D under a new Windows 7 64-bit virtual machine. After checking EDIABAS.ini and OBD.ini against my known good configuration, I wasn’t getting anywhere.

I contemplated purchasing yet another interface, but stopped myself. I had yet to perform modifications to the cable. Time and time again, I’ve seen advice stating to solder pins 7 and 8 on the interface. With this modification performed, ISTA/D was successful at last in reading my vehicle’s information.

A couple of things stood out to me from the laundry list of error codes that I was dealing with. First were the codes relating to the DMTL pump:
8C/72 – Output stage fault, DMTL pump, short circuit to negative or open circuit
7E/72 – Output stage fault, DMTL module, tank leak diagnosis valve, short circuit to negative or open circuit

Next was the ominous sounding code relating to the main relay:
24/61 – Main relay, fault

I performed a search for information about the BMW E46 DMTL pump, and noted that it was an emissions control component located at the rear of the vehicle. I disregarded the error code for the time being – after all, my work had taken place in the engine bay.

Moving forward, I tackled the main relay fault first. Within the ECU box is a black box containing five fuses. I found this blog post on Bavauto helpful.

I wasn’t able to get the fuse pack lid off without destroying the locking tabs. I dumped all of the fuses out, and discovered one of the 30 amp fuses was blown. I replaced this with a spare that I had lying around.

Using ISTA/D, I was able to generate a test plan to diagnose each individual error code. The troubleshooting procedure for the DMTL pump included a test whereby the ECU would signal the operation of the DMTL valve (the parts diagram refers to this as the fuel tank breather valve – part #1 in the diagram below, BMW
13901433603) for 15 seconds. During this time, ISTA/D stated that a ‘tocking’ sound would come from the unit.

BMW E46 Fuel Tank Breather Valve diagram
BMW E46 Fuel Tank Breather Valve diagram

I heard no ‘tocking’ sound, so I indicated within ISTA/D that no sound was heard, and moved on. ISTA/D stated to check the connector, and further stated that the connector in question had two wires. Well, I checked my connector, and I had plugged one with only one wire to the valve. This begged the question, where was the right connector for the DMTL valve?

I pulled and checked various connectors, eventually coming across the connector for the oil pressure switch (part #12 in the diagram below, BMW 12618611273). This connector is the same shape as the connector for the fuel tank breather valve – the only difference being the number of wires. I ran my finger against the single pin of the oil pressure switch, and knew where I’d erred.

BMW E46 Lubrication System - Oil Filter diagram
BMW E46 Lubrication System – Oil Filter diagram

In closing, the connector mixup resulted in one of the 30 amp fuses within the ECU box fuse pack blowing on each attempt to start the car. Prior to starting the car, I got a long list of error codes. After attempting to start the car, I’d get an error code for a main relay fault, indicating that a fuse within the ECU box fuse pack had blown.

Further on modifications to the USB to OBD2 cable – geargrinder’s post on Bimmerforums:
Is car DCAN or do you ever want to do DCAN cars?
Yes – Buy new BMW K+DCAN Cable, toss VAG cable in back of closet
No – Continue on…

Do you really need ignition sense?
Yes gotta gotta must have – OK do you want do it the easy way or hard way or the quick hack way?
Easy – Buy new BMW K+DCAN Cable, toss VAG cable in back of closet
Hard – Fork around with modding your VAG cable, check to be sure 7&8 bridged at the same time
Quick Hack – Use FTDI drivers to fake ignition sense per other threads & check 7&8 bridged
Meh don’t need – just check 7&8 bridged on VAG cable, continue on with life

Spoofing ignition sensing can be done using MProg per the following instructions:
Install MProg & modify the programming of the EEPROM FT232RL
We need to invert RI # and DSR # signals to fool the detection of battery and ignition. After programming check your I/O Control settings, they must be:
#C0 = RXLED
#C1 = TXLED
#C2 = POWERON
#C3 = PWRON
#C4 = SLEEP
Invert RI ticked
Invert DSR ticked
Save settings

Troubleshooting E46 No Start

I recently performed a CCV replacement and, while I had everything apart, decided to redress the engine harness wire loom.

I got everything back together again, save for a couple of non-essentials. All that remained was to fire her up. I turned the key, ready to get back out on the road. Unfortunately, I didn’t luck out.

I began by checking all engine harness connections and cleaning them with electric contact cleaner. I should have done this before reassembly. However, I reasoned that everything was working prior to disassembly, and that I couldn’t have made that much of a mess putting things back together again. Still, better safe than sorry.

Following this, I noted the symptoms that my 2003 BMW 330i was displaying:

With key in position two, EML light flashes on and off, coinciding with a clicking sound from front right of dashboard (cabin left being driver side, NA vehicle). As long as EML is lit, there is a buzzing sound from the front of the car. When it flashes off, there is a click. This cycles several times, and then stops.

An intermittent ticking (almost like a dripping) sound can be heard from rear left of the vehicle – this continues whilst key is in position two. I put my hand on the fuel tank with the key in position two, and can verify that the sound is coming from the fuel tank, and the likely culprit is the fuel pump.

When ignition is turned back to home position, a sound (de-energizing of component?) is heard from rear of vehicle.

Fuel rail has pressure, as verified by depressing the fuel rail valve. Vehicle shows zero RPM when attempting to start.

With the key in the home position, I heard a sound from the back of the car, like a system was being de-energized.

I brought out my MacBook Air, fired up a virtual machine, and ran BMW Scanner 1.4.0.6.

DME was showing 23 errors. After clearing them, one remained in red.

24 [ 036 ] Main relay, fault

Later:
DME   ->  24/61 – Main relay, fault
          3E/72 – Solenoid valve, secondary air, short circuit to negative or open circuit
          8C/72 – Output stage fault, DMTL pump, short circuit to negative or open circuit
          7E/72 – Output stage fault, DMTL module, tank leak diagnosis valve, short circuit to negative or open circuit
          7C/72 – Signal, changeover valve, intake manifold (DISA), short circuit to negative or open circuit
          35/B2 – Idle speed control valve, opening coil, short circuit to negative
          1B/B2 – Idle speed control valve, closing coil, short circuit to negative
          64/78 – Control unit self-test, signal implausible
          25/61 – Main relay, reaction delay, not switched or switched with delay
          7D/62 – Electric fan

          Shadow-memory:
          24/61 – Main relay, fault
          3E/72 – Solenoid valve, secondary air, short circuit to negative or open circuit
          8C/72 – Output stage fault, DMTL pump, short circuit to negative or open circuit
          7E/72 – Output stage fault, DMTL module, tank leak diagnosis valve, short circuit to negative or open circuit
          7C/72 – Signal, changeover valve, intake manifold (DISA), short circuit to negative or open circuit
          5A/12 – Exhaust temperature before catalyst, bank 1, signal line, short circuit to negative
          5B/12 – Exhaust temperature before catalyst, bank 2, signal line, short circuit to negative
          5D/12 – Exhaust temperature after catalyst, bank 2, signal line, short circuit to negative
          3F/14 – Control unit self-test 3
          7D/62 – Electric fan
          35/B2 – Idle speed control valve, opening coil, short circuit to negative
          1B/B2 – Idle speed control valve, closing coil, short circuit to negative
          64/78 – Control unit self-test, signal implausible
          25/61 – Main relay, reaction delay, not switched or switched with delay
          34/02 – Solenoid valve, exhaust flap, short circuit to negative or open circuit

I made a post on E46Fanatics and on Bimmerforums. While waiting for a response, I started looking into my electronic tool chest. One thing for certain: if I am to increase my proficiency in working with the E46 platform, I need to gain better familiarity with the tools available to me.

Order Placed: TechFlex F6N0.25BK Flexo F6 1/4-inch Braided Cable Sleeve

I bought 20 feet of TechFlex F6 1/4″ braided cable sleeve (Amazon.com) to dress up the engine wire harness in my 2003 BMW 330i. The factory wire loom had failed in several areas due to hostile conditions in the engine bay.

It’s a split cable sleeve, which makes it easier to work with on terminated cables.

BMW E46 CCV Replacement, Intake Manifold Removal, Vacuum Hoses, and Revisiting the DISA

In which I solve the case of the missing engine oil, and dig deeper into the belly of the beast than ever before.

The following error codes were all encountered prior to resolving the issues detailed within.
E3/B1 – Oxygen sensor controller, bank 1, deviation too great, deviation rich
E3/B9 – Oxygen sensor controller, bank 1, deviation too great, deviation rich, low fuel level signal, active during fault entry
E3/F1 – Oxygen sensor controller, bank 1, deviation too great, deviation rich
E4/B1 – Oxygen sensor controller, bank 2, deviation too great, deviation rich
E4/F1 – Oxygen sensor controller, bank 2, deviation too great, deviation rich
5A/12 – Exhaust temperature before catalyst, bank 1, signal line, short circuit to negative
5B/12 – Exhaust temperature before catalyst, bank 2, signal line, short circuit to negative
5D/12 – Exhaust temperature after catalyst, bank 2, signal line, short circuit to negative
EE/B6 – Misfire, cylinder 1, misfiring during warm up, worsening emissions (Misfire CARB_B1), misfiring at operating temperature, worsening emissions (Misfire CARB_B4)
EF/B2 – Misfire, cylinder 2, misfiring during warm up, worsening emissions (Misfire CARB_B1)
EF/B6 – Misfire, cylinder 2, misfiring during warm up, worsening emissions (Misfire CARB_B1), misfiring at operating temperature, worsening emissions (Misfire CARB_B4)
F0/B6 – Misfire, cylinder 3, misfiring during warm up, worsening emissions (Misfire CARB_B1), misfiring at operating temperature, worsening emissions (Misfire CARB_B4)
F1/B1 – Misfire, cylinder 4, misfiring with cylinder cutout (Misfire CARB_A)
F1/B2 – Misfire, cylinder 4, misfiring during warm up, worsening emissions (Misfire CARB_B1)
F1/B6 – Misfire, cylinder 4, misfiring during warm up, worsening emissions (Misfire CARB_B1), misfiring at operating temperature, worsening emissions (Misfire CARB_B4)
F2/B2 – Misfire, cylinder 5, misfiring during warm up, worsening emissions (Misfire CARB_B1)
F3/B1 – Misfire, cylinder 6, misfiring with cylinder cutout (Misfire CARB_A)
F3/B2 – Misfire, cylinder 6, misfiring during warm up, worsening emissions (Misfire CARB_B1)
F3/B6 – Misfire, cylinder 6, misfiring during warm up, worsening emissions (Misfire CARB_B1), misfiring at operating temperature, worsening emissions (Misfire CARB_B4)
FA/B8 – Function check, tank ventilation is faulty

My 2003 BMW 330i (E46) had been ‘consuming’ oil for some time. Years back, when I visited Joe Machens BMW in Columbia, MO, a BMW technician had told me that one of the CCV lines was about to go, but I kept on driving. These engines, I reasoned, were bulletproof.

Meanwhile, the check engine light had become a constant in my life. I don’t even know when it started haunting me. All I can say for sure is that I was rather surprised when I passed Texas’s annual vehicle inspection in the spring of 2015. I recall that the check engine light had been intermittent back then, and it held off just long enough for me to pass inspection.

So prior to this year’s inspection, I pulled out my laptop, and fired up BMW Scanner v1.4.0.6 to clear the error codes from the DME. I did this while waiting to have my vehicle inspected. It came back with “Not Ready” on a host of sensors, and my vehicle failed inspection brilliantly. I drove the car following the inspection, only to find myself faced with the check engine light once again.

The last time that I worked on my car was in January 2016, when I replaced the suspension on all four corners with Koni FSD + Eibach Pro Kit. It was time to get my hands dirty once more…

I pulled the spark plugs, starting from the front of the car. Observed that the top, where coil sits, was covered in fine carbon buildup, kind of like soot. The plugs definitely didn’t look new. Exhibited corona wear. Threads were fouled up as well.

Inspected the inside of CCV tube leading to valve cover and found brown, cakey looking deposits.

Pulled the DISA valve and found the flap loose. Fortunately, the vacuum pot was still functioning. On October 21, 2010, I’d used epoxy to bind the flap to the connecting rod. On this inspection, I observed that the end of the rod had shorn off, leaving the flap inoperable. I placed an order for the German Auto Solutions DISA valve repair kit (MSRP $79.95, Amazon.com, German Auto Solutions) – I’d previously ordered one of these kits on February 29, 2012, but didn’t install it at the time because my epoxy fix was still holding up. At that time I did, however, install a new DISA valve o-ring after scraping out the original gasket.

The CCV vent hose (connects to the bottom of the CCV, returns oil down the dipstick guide tube) had failed completely. In line with what others have observed, it appears to have been worn through by continued abrasion against the positive cable connecting to the back of the alternator.

I’ve read threads where people have installed oil catch cans in lieu of the CCV. I also saw a pretty cool project that involved replacing the M54 valve cover with an M56 valve cover.

Parts Order (Prices from BMW of West Houston unless indicated otherwise)
11617544805 DISA ($304.34) vs. old part 11617502275
11617533331 ($0.69) screw for air distribution piece

Oil Separator – CCV Kit

BMW-crankcase-ventilation-oil-separator
CCV Kit (Cold Climate Version)
#1 11617533400 (Pressure Regulating Valve, part of kit)
#2 11617533398 (Vent Pipe, part of kit)
#3 11617504399 (Connecting Line, part of kit)
#4 11157532629 (Vent Hose) ECS $23.18 / FCP $23.99
11617534237 (Repair kit – cold climate version) MSRP $116.83 ($59.31 / ECS $53.18 / FCP $58.99)

CCV Kit (regular climate version)
#1 11617501566 (Pressure Regulating Valve) – $55.10
#2 11611432559 (Vent Pipe) – $23.54
#3 11617504535 (Connecting Line) – $32.32
#4 11157532649 (Vent Hose) – $20.44
#7 11617504536 (Return Pipe – same applies to cold climate version) – $25.17 / FCP $28.99

Updated (?) Dipstick Guide Tube + Lower O-Ring
BMW-E46-oil-pan-oil-level-indicator
Dipstick guide tube (11437531258, part #9 in the diagram above) – I ordered and received this part, only to discover that it was the same dipstick guide tube as was originally shipped with my vehicle
Dipstick guide tube lower o-ring (11431740045, part #12 in the diagram above)

Placed orders for parts on 5/9/2016. I also purchased new headlight lenses, which I’ll touch on later. I chose the Automotive Lighting (OE) product instead of going with the BMW pieces.

Picked up parts from BMW of Houston West on 5/14/2016 to round out parts list. They won’t give me good pricing unless I can get a dealership to call it in, which I’m not pleased about.

My original plan was to pull the old CCV and replace it along with the various hoses. I ultimately pulled the intake manifold. I was contemplating doing this earlier, because I’d dropped one of the screws used to secure the air distribution piece to the intake manifold, and wasn’t able to recover it following removal of the splash tray, but the decision was made for me following discovery of severely degraded vacuum hoses going to the back (near firewall) of the intake manifold.

The vacuum hoses in question appear on the parts diagrams for these two systems:

  1. Air Pump for Vacuum Control (RealOEM), Part Number
    11657803732: 3,5×2,0
  2. Vacuum Control for Exhaust Flap (RealOEM), Part Number 11727545323: 3,5×1,8

For reference, the measurements above indicate the inner diameter of the hose, followed by the wall thickness in millimeters. (IDxtwall)

I decided to redo the vacuum hoses with silicone. While searching, I turned up a Contitech part that fit the bill perfectly. There weren’t any reviews on the vacuum hose I bought on Amazon, so I took a gamble, and was pleased to find that I received one meter of it.

The 7mm vacuum cap (1161727176) on my intake manifold was also in need of replacement. The original piece had a break near the lip, and two hairline cracks running partway down the length of the cap. Someone had suggested that using a zip tie on a failed vacuum cap (around its base) would help, so I installed the new vacuum cap with a zip tie for reinforcement.

Observed that my vehicle (production date 10/2002) already had the updated dipstick guide tube. I should have checked this before placing the order.

Prior to removing the intake manifold, I trashed the insulation (Armaflex?) on the cold climate CCV while trying to install it, and felt kind of silly. I ultimately stripped the cold climate CCV of its insulation entirely. It probably works out okay, given the low cost of the cold climate version kit when compared to buying individual parts, but the whole mess could have been avoided with more care.

I tried to be careful while pulling the intake manifold fasteners (07129905541 ~$0.64), but still managed to drop a couple of them into the engine bay. My magnetic pickup tool came in handy on more than one occasion.

Observed significant gunk inside of the fuel injector ports (is this the right word? I’m referring to the point that the fuel injector plugs into along the intake manifold). Also buildup of gunk on the fuel injector bodies. I’m unsure whether this is indicative of air making its way past the fuel injector seals (12 altogether), or if the air came from further upstream.

Fuel injectors original to the car were Siemens (Siemens Part #1439800). They have been superseded by Siemens VDO (BMW Part #13537546245). I didn’t perform any fancy fuel injector cleaning, though it probably would have helped recover some of my vehicle’s missing ponies.

Carb cleaner may be helpful in cleaning up.

Fastening torque on the intake manifold nuts is 11 ft-lbs.

The engine wiring harness had been falling apart for some time. I looked around to see how other people had been handling deteriorating engine harness wire looms. People suggested hockey stick grip tape, but I don’t like tape. On 5/24, I ordered some 1/4″ diameter TechFlex split wire loom. I’m pleased to report that it’s solid stuff, and it looks sharp inside of the engine bay.

Engine wiring harness has connections to the following locations – at least:
DISA
Idle Control Valve
Mass Airflow Sensor
Purge Control Valve
Oil Pressure Sensor (single wire, more on this when I go over troubleshooting…)
Oil Temperature Sensor
Alternator
Intake Camshaft Position Sensor

I finally got around to putting everything back together again on 6/2/2016. Progress was halted a couple of times because of dropped fasteners. Nearing completion, I observed that the intake boot that connects to the throttle body (13541438759) had cracks along the accordion section connecting to the idle control valve. I am considering replacing this with a silicone intake boot in the next installment (update 6/9/2016 – I have placed an order for Mishimoto’s silicone air intake boot kit, in black).

If I had to do this again, I’d definitely get the front end of the car up. I felt myself tilting after a few hours in the garage. The job is made difficult enough by the lack of working room – protect your back!

Additionally, fooling around with anything near the firewall is a dozen times easier after the firewall is removed. Removing the firewall is trivial once the cabin air filter tray is out of the way.

So long as everything is put back in its place, the car should start up again. In my case, I made a small mistake, the discovery and resolution of which will be detailed shortly.

In performing this work, I referenced the following:
Injectors replacement and/or servicing DIY (E39) – Bimmerfest
Intake Manifold and Vacuum Caps – E46Fanatics
M54 vacuum tubing … what diameter … what brand … what material … what length? – Bimmerfest
My CVV [sic] (Oil Separator) DIY Journey in Pictures – Bimmerfest
Oil Separator and Intake Manifold DIY – E46Fanatics
Oil Separator – Never Before Seen Pics!! – E46Fanatics
Tips and Tricks for CCV – E46Fanatics
Where does this vacuum hose go? – E46Fanatics

Bavarian Autosport’s blog also has a video series on replacing the CCV, which may be helpful to review: DIY Video – Replacing the BMW M54 Crankcase Ventilation Sytem, PCV, Oil Separator, Cyclonic Valve – BavAuto