P0341 on 2004-2010 BMW 5-Series N52: Causes and Fixes for Camshaft Sensor Fault
For a BMW 5-Series with the N52 engine, code P0341 most often means the intake camshaft position sensor has failed. A new sensor is about $40-$80 and is a simple DIY replacement. A dirty or faulty VANOS solenoid is the second most likely cause and should also be inspected, cleaned, or replaced. Neglected oil changes are a primary contributor to VANOS issues.
- P0341 on an N52 engine points to the intake camshaft position sensor.
- Before buying a new sensor, perform the 'swap test': swap the intake and exhaust sensors (they are identical) to see if the fault code moves to the exhaust (P0366). If it does, the sensor is bad.
- If the fault code does not move, the next most likely cause is a dirty or faulty VANOS solenoid. Try cleaning or swapping the solenoids before further diagnosis.
- This is a very DIY-friendly repair. Both the sensor and the solenoid are easily accessible on the front of the engine and require only basic tools.
What's Unique About the 2004-2010 BMW 5-Series
On the BMW N52 engine, the P0341 code is a classic issue with two extremely common culprits: the sensor itself, or a dirty/failing VANOS solenoid. The VANOS system, which adjusts camshaft timing, is oil-pressure operated and its solenoids can become clogged with oil sludge, especially if oil changes are neglected. This causes incorrect cam timing that the sensor reports as a P0341 fault, leading to many owners replacing the sensor when the root cause is actually the solenoid. A less common but notable issue is a broken or missing center cage from the oil filter cap, which reduces oil pressure to the VANOS system and can trigger the same codes. Diagnosing between these three possibilities is key to fixing it right the first time.
Generation note: The 2004-2010 year range covers the E60 (sedan) and E61 (wagon) generation of the 5-Series. The N52 engine was introduced in this chassis around 2005/2006, replacing the earlier M54 engine. This guide is specific to models equipped with the N52 engine, known for its lightweight magnesium-aluminum block and Double-VANOS with Valvetronic.
Symptoms You May Notice
- Check Engine Light is on
- Engine is hard to start or requires long cranking.
- Engine cranks but does not start.
- Rough or fluctuating idle.
- Engine hesitates or stalls, especially at low speeds or when coming to a stop.
- Noticeable loss of power and sluggish acceleration, particularly at low RPM.
- Reduced fuel economy.
- Engine may enter 'limp mode' with significantly reduced power.
- Cold-start rattle that may disappear as the engine warms up.
- Replacing the crankshaft position sensor instead of the camshaft position sensor.
- Replacing spark plugs and ignition coils to fix a rough idle without first addressing the P0341 code.
- Immediately replacing the camshaft position sensor without first checking or swapping the VANOS solenoids, which are a common cause of the same code.
- Assuming a timing chain issue without first diagnosing the much more common and cheaper sensor/solenoid failures.
Most Likely Causes
- Faulty Intake Camshaft Position Sensor 🔴 High Probability → Shop Engine Camshaft Position Sensor These Hall effect sensors operate in a high-heat environment and can fail with age, leading to erratic or no signal output. The plastic casing can also become brittle and crack.
How to confirm: Swap the intake camshaft position sensor with the exhaust sensor (they are identical, part number 13627525014). Clear codes and drive. If the code changes to P0366 (Exhaust Camshaft Position Sensor 'B' Circuit), the sensor is confirmed bad.
Typical fix: Replace the intake camshaft position sensor. It is held by a single E8 external Torx bolt and is easily accessible on the top front of the engine.
Est. part cost: $40-$80 - Dirty or Failing VANOS Solenoid 🟡 Medium Probability The N52's VANOS solenoids are highly sensitive to oil quality. Infrequent oil changes lead to sludge and varnish buildup, which clogs the tiny passages and screens on the solenoids, causing them to stick and preventing correct cam timing adjustment.
How to confirm: Swap the intake and exhaust VANOS solenoids (they are identical and located on the front of the engine). Clear codes and drive. If the fault code changes to an exhaust-related VANOS code (like 2A87/P0015), the solenoid is the problem.
Typical fix: Remove the faulty VANOS solenoid. Some owners report success cleaning it thoroughly with brake or MAF cleaner and compressed air. However, many find cleaning is a temporary fix or ineffective, as internal components can be seized. Replacement is the most reliable solution. Always replace the O-rings.
Est. part cost: $100-$150 - Low, Old, or Incorrect Engine Oil 🟡 Medium Probability The VANOS system relies on specific oil pressure to function. Low, dirty, or overly thick oil can starve the system, causing timing deviations that trigger sensor codes.
How to confirm: Check the oil level via the iDrive/dashboard menu (the N52 has no physical dipstick). Check the oil service history. If the oil is low or overdue for a change, this is a likely contributing factor.
Typical fix: Perform an oil and filter change using a BMW-approved oil (e.g., LL-01 5W-30 or 5W-40). Ensure the oil level is correct.
Est. part cost: $70-$120 - Damaged Wiring or Connector ⚪ Low Probability The wiring harness connector for the sensor can become brittle from heat cycles and break, or the wires can get damaged during other engine service, like a valve cover gasket replacement.
How to confirm: Visually inspect the connector for the intake camshaft position sensor for cracks, corrosion, or oil contamination. Gently tug on the wires to ensure they are secure in the connector. Check for continuity with a multimeter.
Typical fix: Repair the damaged wire or replace the connector pigtail.
Est. part cost: $15-$30 - Broken Oil Filter Housing Cage ⚪ Low Probability The plastic cage/spindle inside the oil filter cap can become brittle and break off, often during an oil change. Without this piece, the oil filter does not seal correctly, causing an internal oil pressure drop specifically to the VANOS system.
How to confirm: When changing the oil, inspect the oil filter cap to ensure the inner plastic cage is present and intact. If it's missing and you have VANOS-related codes, this is the likely cause. This issue is documented in BMW TSB SI B11 02 08.
Typical fix: Replace the entire oil filter housing cap (BMW Part No. 11427525334).
Est. part cost: $25-$40
Rare But Worth Checking
- Stretched Timing Chain or Failed Guide: → Shop Engine Timing Chain While the N52 is not as notorious for timing chain issues as other BMW engines, a stretched chain or broken guide can cause cam/crank correlation faults. This is usually accompanied by a persistent rattling noise from the front of the engine.
- Worn Camshaft Bearing Ledge: → Shop Engine Camshaft The seals on the camshafts can wear grooves into the aluminum bearing ledge over time, causing an internal oil pressure leak that starves the VANOS units. This is a major repair that can require cylinder head replacement on the N52 intake side.
- Sheared VANOS Gear Bolts: Extremely rare, but the bolts holding the VANOS phaser (gear) together can shear off, causing excessive camshaft play and a loud rattle. This will trigger VANOS and camshaft position codes.
- Failed Engine Control Module (DME): This is extremely rare. Before condemning the DME, all other possibilities (sensors, wiring, solenoids, mechanical timing) must be exhaustively ruled out.
Diagnosis Steps
- Read the codes with an OBD-II scanner. Note P0341 and any other codes present, especially VANOS-related codes like 2A82 or 2A87.
- Check the engine oil level and condition. If low or dirty, correct this first as it can cause VANOS-related timing issues. At the next oil change, inspect the oil filter cap for a broken or missing center cage.
- Locate the intake and exhaust camshaft position sensors on the top front of the engine. The intake sensor is on the left side (when facing the engine).
- Inspect the wiring and connector for the intake sensor. Look for any visible damage, corrosion, or oil saturation, especially after recent work like a valve cover replacement.
- Swap the intake sensor with the identical exhaust sensor. They are held by a single E8 external Torx bolt. Clear the codes and run the engine.
- Re-scan for codes. If P0341 is gone and P0366 (exhaust sensor) now appears, the sensor you moved is faulty and needs to be replaced.
- If P0341 returns after the sensor swap, the sensor is likely not the issue. The next step is to inspect the VANOS solenoids.
- Swap the intake and exhaust VANOS solenoids. They are located on the front of the engine, each held by a 10mm bolt. Clear codes and run the engine. If the fault moves to the exhaust side (e.g., code 2A87 appears), the solenoid is the culprit. 🎬 Watch: A professional walkthrough of the N52 VANOS fault diagnosis process.
- Decide whether to clean or replace the faulty solenoid. Replacement is the more reliable fix, but cleaning with brake/MAF cleaner and compressed air is a possible first step.
- If the code still persists, a more in-depth diagnosis of the wiring circuit with a multimeter or an issue with the base engine timing (chain, guides, bearing ledges) is required.
Parts You'll Likely Need
- Camshaft Position Sensor
(OEM #13627525014)— This is the most frequent cause of a P0341 code. The sensor fails internally and sends an erratic signal to the DME.
Trusted brands: VDO (OEM), Hella, Genuine BMW
OEM price range: $60-$80
Aftermarket price range: $35-$60 - VANOS Solenoid
(OEM #11367585425)— A common secondary cause. Oil sludge clogs the solenoid, causing it to stick. This prevents correct camshaft timing adjustment, which the cam sensor then reports as a fault.
Trusted brands: BMW (OEM), Pierburg (OEM supplier)
OEM price range: $130-$160
Aftermarket price range: $50-$90 - Oil Filter Housing Cap
(OEM #11427525334)— Needed if the inner plastic cage is found to be broken or missing, which can cause VANOS-related codes by reducing oil pressure to the system.
Trusted brands: BMW (OEM), Mahle, Vaico
OEM price range: $25-$40
Aftermarket price range: $15-$25
Related Codes That Often Appear With This One
- P0366 — This is the code for the exhaust camshaft position sensor. It may appear if you swap a faulty intake sensor to the exhaust position for diagnosis.
- 2A82 / P0016 — This BMW-specific code points directly to an intake VANOS solenoid malfunction or cam/crank correlation issue. It frequently appears with P0341 because the solenoid or timing issue is causing the error that the camshaft sensor detects.
- 2A87 / P0015 / P0017 — This is the equivalent VANOS code for the exhaust side. It can appear alongside P0341 if there are widespread oil sludge issues affecting both solenoids, or if a faulty solenoid was swapped to the exhaust side for diagnosis.
Technical Service Bulletins (TSBs) & Recalls
- BMW Technical Service Bulletin addressing VANOS faults (like 2A82, which often accompanies P0341) caused by a broken or missing oil filter basket/insert inside the oil filter housing cap. A missing basket leads to incorrect oil pressure for the VANOS system.
Platform-Specific Known Issues
- The N52 engine's VANOS system is notoriously sensitive to oil change intervals and oil quality. Many timing-related codes on this engine can be traced back to oil sludge or low oil levels.
- The plastic oil filter housing cap has an internal cage that is critical for proper oil pressure to the VANOS system. This cage can break during oil changes, leading to persistent VANOS codes until the cap is replaced.
- While cleaning VANOS solenoids is a popular DIY, many owners find the fix is temporary or doesn't work at all, suggesting internal wear or stubborn debris is the real issue, making replacement a better long-term solution.
Mechanic-Grade Diagnostic Values
- Camshaft Position Sensor (Hall Effect) Signal Voltage — expected: Switches between ~0V and ~5V as a metal object passes by the sensor tip.. Failure: Voltage does not switch, is stuck high or low, or shows an intermediate value.
- Camshaft Position Sensor Power Supply Voltage — expected: Approximately 12V (battery voltage) on one pin and 5V (reference voltage) on another, with the third being ground.. Failure: Missing 12V or 5V supply suggests a wiring or DME issue, not a sensor failure.
- VANOS Solenoid Coil Resistance — expected: Approximately 10.5 to 11.5 Ohms.. Failure: A reading significantly outside this range, or an open circuit (infinite resistance), indicates a failed solenoid coil.
- Camshaft vs. Crankshaft Signal Correlation (Oscilloscope) — expected: A specific, repeating pattern between the crank sensor signal and the cam sensor signals at idle. For the N52, the intake cam's first rising edge should appear a specific number of crankshaft teeth after the crank signal's gap.. Failure: If the cam signal is shifted relative to the crank signal (retarded or advanced), it points to a mechanical timing issue (stretched chain, VANOS phaser problem, or bearing ledge wear) rather than a sensor electrical fault.
Hidden / Shadow Codes Worth Checking
- 2A98: Crankshaft - Inlet camshaft, correlation. This code indicates an inconsistency between the crankshaft and intake camshaft signals, pointing more directly to a timing or mechanical issue rather than just a sensor circuit fault. (see via BMW-specific diagnostic software like ISTA, INPA, or high-end professional scan tools.)
- 2A99: Crankshaft - Exhaust camshaft, correlation. Often appears with 2A98 when there is a general timing problem, like a stretched chain, affecting both cams. (see via BMW-specific diagnostic software like ISTA, INPA, or high-end professional scan tools.)
- 2A82: VANOS intake, jammed/mechanically stiff. This is a very common companion code to P0341 and strongly suggests the root cause is the VANOS solenoid, low oil pressure, or a mechanical restriction, which the cam sensor is correctly reporting. (see via BMW-specific diagnostic software like ISTA, INPA, or high-end professional scan tools.)
Scan Tool Commands That Help
- ISTA or equivalent (Autel, etc.): Delete engine adaptation values / Reset VANOS adaptations — After replacing VANOS solenoids, camshaft sensors, or performing any work on the timing system. This forces the DME to relearn the components' baseline positions and operating range. Failure to do this can cause persistent codes or rough running even with new parts.
- ISTA or equivalent: Variable camshaft timing (VANOS) test plan — To command the VANOS solenoids to activate and check the system's response. The software will command a specific camshaft angle and measure if the camshaft achieves it, helping to differentiate between a solenoid, oil pressure, or mechanical phaser issue.
Wiring & Ground Locations
- Main Engine Ground Strap — Connects the driver's side engine mount bracket to the chassis frame rail.. A corroded or broken main engine ground can cause a slow crank condition and introduce electrical noise and voltage drops throughout the system. This can affect the accuracy of sensitive sensors like the camshaft and crankshaft position sensors, potentially triggering range/performance codes.
- Ignition Coil Ground Strap (Interference Suppression Band) — A smaller braided strap, often found on N52s with magnesium valve covers, that grounds the ignition coil harness rail to a stud on the cylinder head, near the valve cover.. This strap is critical for suppressing radio frequency interference (RFI) from the ignition coils. If it's loose or missing, the resulting electrical noise can interfere with the low-voltage signal from the nearby camshaft position sensors, causing erratic readings and codes like P0341.
- Camshaft Sensor Connector Pins — On the 3-pin connector for the sensor.. For testing, you need to identify the power, ground, and signal wires. On the N52, you typically find: Pin 1: 12V (Power), Pin 2: Ground, Pin 3: 5V Signal. Probing these with a multimeter is essential to confirm the sensor is receiving power and that the wiring to the DME is intact before condemning the sensor itself.
Real Owner Repair Stories
- Bimmerpost user (2006 325i (E90) with N52 engine) — Engine cranks but will not start, P0341 code is present.
❌ Tried (didn't work) Swapping camshaft sensors., Checking wiring harness for visible damage.
✅ What actually fixed it The owner had previously removed the main crankshaft bolt to fix a serpentine belt issue. Loosening this bolt de-couples the crank hub from the timing chain sprocket. Even though the chain wasn't removed, this allowed the cam timing to shift relative to the crank. The fix required re-timing the engine using the proper BMW timing tools. The P0341 code was a symptom of the mechanical timing being off, not a sensor failure. - BmwTech subreddit user (2006 325i (E90) with N52 engine, 123,000 miles) — Code 2A82 (VANOS intake) appears only after the engine is fully warmed up and idling at a stop light. Runs perfectly at speed.
❌ Tried (didn't work) Replacing both VANOS solenoids., Swapping the new solenoids between intake and exhaust., Performing a full engine oil flush (which made the problem worse).
✅ What actually fixed it The issue was diagnosed as the worn camshaft bearing ledge. The grooves worn into the aluminum ledge caused an internal oil pressure leak to the VANOS unit, but only at hot idle when oil pressure is naturally at its lowest. This starved the VANOS adjuster, causing the timing deviation and code. The fix is a cylinder head replacement, a ~$5,000 job.
OEM Part Supersession History
13627558518, 13627546660→13627525014— Standard part revision and consolidation by BMW.
Heads up: The parts are interchangeable. The latest part number, 13627525014, is the correct replacement for the earlier versions.11367516293→11367585425— Updated design for the VANOS solenoid.
Heads up: The parts are interchangeable. The current replacement part is 11367585425.
Model Year Variations Within This Range
- 2004-2006 (N52) vs 2007-2010 (N52K/N52N): The N52 engine was updated around June 2006 to the N52K (also called N52N). The early N52 (2004-2006) had a magnesium valve cover and an external PCV system. The later N52K (2007+) switched to a black plastic composite valve cover with an integrated PCV system, which is easier to service but the cover itself can be more prone to cracking. While the P0341 fault applies to both, the valve cover and PCV system differences are notable during related service.
Diagnostic Flowchart
Real Owner Stories
Aggregated from forums and TSBs cited above. Mileages and costs reflect what owners reported in those sources.
2007 BMW 525i N52
Symptoms: The engine would crank but refused to start, accompanied by code P0341.
What fixed it: The issue required extensive diagnostics beyond a simple sensor swap, including testing the sensors, solenoids, engine compression, and fuel pressure to isolate the root cause.
Source hint: Bimmerpost (5Post): Bmw 525i 2007 n52 msv70 p0341... cranks doesn’t start
BMW N52 Engine
Symptoms: Triggered camshaft faults and VANOS code 2A82.
What fixed it: Cleaning and replacing the camshaft VANOS solenoids resolved the codes.
Source hint: Bimmerpost (E90Post): DIY - Replacing Camshaft VANOS Solenoid
BMW N52 Engine
Symptoms: Failed VANOS solenoid causing persistent camshaft timing issues.
What fixed it: Replaced the VANOS solenoid. The owner disassembled the failed unit and found internal contamination in seized plunger components that could not be effectively cleaned with solvents, proving replacement was the only reliable fix.
Source hint: Bimmerpost (Bimmerfest): Why you can't clean BMW vanos solenoids
BMW N52 Engine
Symptoms: VANOS solenoid failure causing timing codes.
What fixed it: Replaced the faulty solenoids with OEM units. The owner noted a negative experience with cheap aftermarket solenoids and highly recommended sticking to OEM or reputable brands.
Source hint: Reddit (r/BmwTech): VANOS solenoid
Related OBD-II Codes
Frequently Asked Questions
Does TSB SI B11 02 08 apply to my 2004-2010 BMW 5-Series N52?
Can I just clean the VANOS solenoids on my N52 engine instead of replacing them?
How do I check the oil level on my N52 to see if it's causing the P0341 code?
What is the correct part number for the intake camshaft position sensor on this engine?
How can I confirm if the intake camshaft position sensor is actually the part that failed?
I just had an oil change on my 5-Series and now I have P0341 and VANOS codes. What happened?
Helpful Videos
We Have This Part in Stock
The information in this article is provided for general reference and educational purposes only. Vehicle specifications, procedures, and part compatibility can vary by production date, trim level, and region. Always consult your vehicle's factory service manual and verify part numbers before purchasing or performing repairs. Safety-critical components such as airbags, seat belts, and braking systems should be installed by a qualified professional.
- BMW 5-Series:
- 🧭 Diagnostic Flowchart
- 🎬 Helpful Videos
- 🛍️ Shop This Part
- What's Unique About the 2004-2010 BMW 5-Series
- Symptoms You May Notice
- Most Likely Causes
- Rare But Worth Checking
- Diagnosis Steps
- Parts You'll Likely Need
- Related Codes That Often Appear With This One
- Technical Service Bulletins (TSBs) & Recalls
- Platform-Specific Known Issues
- Mechanic-Grade Diagnostic Values
- Hidden / Shadow Codes Worth Checking
- Scan Tool Commands That Help
- Wiring & Ground Locations
- Real Owner Repair Stories
- OEM Part Supersession History
- Model Year Variations Within This Range
- Real Owner Stories
- 2007 BMW 525i N52
- BMW N52 Engine
- BMW N52 Engine
- BMW N52 Engine
- Related OBD-II Codes
- Frequently Asked Questions
- 🎟️ Get 5% Off