Go-Parts
Cart 0
Your cart is empty
Add an item to see it appear here.
Wrenchy
Go-Parts Garage
Expert guides for diagnosing, troubleshooting, and replacing auto parts Expert guides for diagnosing and replacing auto parts
Browse All →
🎬 Helpful Videos 🛍️ Shop This Part

P0366 on 2007-2013 BMW M3: Exhaust Camshaft Sensor (Bank 1) Causes and Fixes

P0366 on an S65-powered BMW M3 most often points to a failed exhaust camshaft position sensor on the passenger-side of the engine. A simple DIY diagnostic is to swap it with another sensor to see if the fault follows. A new OEM sensor costs around $180-$220. Before replacing, ensure the sensor is clean and its retaining bolt is tight.

21 minutes to read 2007-2013 BMW M3
Most Likely Cause
Failed Exhaust Camshaft Position Sensor (Bank 1)
Difficulty
1/5
Est. Time
1 hrs
DIY Doable?
✅ Yes
Shop Labor
$120 – $400
Parts Price
$70 – $220
⚠️ Drivable, but... — You can drive the vehicle, but you will likely experience reduced engine power, rough idling, poor fuel economy, and potential stalling. In some cases, the engine may enter a 'limp-mode' to prevent damage. Continued driving is not recommended as the engine is not running efficiently.
Key Takeaways
  • P0366 specifically points to the exhaust camshaft position sensor on the passenger side of the engine.
  • The most likely cause is a failed sensor, which is a simple DIY replacement held by one bolt.
  • Before buying a new part, try cleaning the sensor and its connector. Also, swap it with the driver's side exhaust sensor to confirm the sensor itself is the problem.
  • All four camshaft sensors on the S65 V8 are identical (Part No. 13627837904), which makes swapping for diagnosis easy.
  • If cleaning and swapping doesn't isolate the problem, investigate the wiring or consider cleaning the VANOS solenoids.
The trouble code P0366 indicates that your M3's engine control module (DME) has detected an abnormal signal from the camshaft position sensor 'B' on engine 'Bank 1'. Specifically, 'Bank 1' is the passenger side of the V8 engine (cylinders 1-4). The 'B' sensor is the one that monitors the exhaust camshaft. The DME relies on precise data from four identical camshaft position sensors to operate the complex dual-VANOS variable valve timing system. The 'Circuit Range/Performance' description means the signal is erratic, weak, or intermittent, rather than completely gone, which can cause poor acceleration, rough idling, and reduced fuel economy.

What's Unique About the 2007-2013 BMW M3

The high-revving S65 V8 engine relies on precise data from four identical camshaft position sensors to operate its complex dual-VANOS variable valve timing system. A fault in even one sensor can significantly impact performance. On this platform, a common diagnostic trick is to swap the suspected faulty sensor with one of the other three identical sensors to see if the fault code moves to a new location. Additionally, some sources suggest these sensors can be sensitive to moisture content in the oil, meaning cars that sit for extended periods or have delayed oil changes may be more prone to this fault.

Symptoms You May Notice

  • Check Engine Light (often with an 'Increased Emissions' warning)
  • Reduced engine power or 'limp mode'
  • Rough, uneven idle, or hunting for idle
  • Hesitation or stumbling during acceleration
  • Difficulty starting the engine, or extended crank time
  • Engine stalling, especially at idle
  • Decreased fuel economy
⚠️ Don't Waste Money on the Wrong Fix
  • Replacing the crankshaft position sensor.
  • Replacing the DME without thoroughly testing the sensor and wiring first.
  • Replacing the sensor when the actual issue is a loose retaining bolt or contaminated connector.

Most Likely Causes

  1. Failed Exhaust Camshaft Position Sensor (Bank 1) 🔴 High Probability The sensor's internal electronics can fail from years of heat cycles and engine vibration. It's the most common point of failure for this code.
    How to confirm: Swap the Bank 1 exhaust sensor with the Bank 2 exhaust sensor (driver's side). Clear the codes and drive. If the code changes to P0391 (Camshaft Position Sensor 'B' Circuit Range/Performance Bank 2), the sensor is confirmed bad. Also, ensure the single bolt holding the sensor is properly tightened, as a loose sensor can cause this code.
    Typical fix: Replace the faulty camshaft position sensor and its O-ring. 🎬 Watch: Step-by-step guide to replacing the S65 camshaft position sensor. All four sensors on the S65 engine use the same part number.
    Est. part cost: $70-$220
  2. Oil or Debris Contamination 🟡 Medium Probability A leaking valve cover gasket, a common issue on the S65, can allow oil to seep into the sensor's electrical connector, disrupting the signal. Engine grime and sludge can also coat the sensor tip, preventing an accurate reading.
    How to confirm: Visually inspect the sensor and its electrical connector. If oil is present inside the connector or the sensor tip is heavily coated, this is the likely issue.
    Typical fix: Clean the sensor tip and the electrical connector with electrical contact cleaner or MAF sensor cleaner. Fix the source of any oil leak, such as replacing the valve cover gasket, to prevent recurrence. 🎬 See this walkthrough for replacing your BMW M3 valve cover gaskets.
    Est. part cost: $10-$20 for cleaners, plus gasket cost if needed.
  3. Damaged Wiring or Connector ⚪ Low Probability Engine bay heat can make wiring insulation brittle over time, leading to cracks or breaks. The connector itself can also become damaged or disconnected during other maintenance, like a valve cover gasket replacement.
    How to confirm: After confirming the sensor is good by swapping it, perform a continuity test on the sensor's wiring harness from the sensor connector to the DME. A user on m3post confirmed this was their issue when the P0366 code did not move with the sensor.
    Typical fix: Repair the damaged section of the wiring harness or replace the connector pigtail.
    Est. part cost: $15-$50

Rare But Worth Checking

  • Failing VANOS Solenoid: A dirty or failing VANOS solenoid can cause erratic camshaft timing, which the DME may misinterpret as a cam sensor fault. Before replacing a sensor that tests good, it's worth inspecting and cleaning the VANOS solenoids. 🎬 Watch: How to properly clean your BMW VANOS solenoids. This can be done with MAF cleaner and compressed air. Some BMW diagnostic software (like ISTA) even has a built-in function to test the VANOS system and bleed it.
  • Mechanical Timing Issue: In rare cases, a problem with the VANOS hub assembly or timing chain can cause the camshaft position to be out of sync with the crankshaft, triggering this code. This is a much more serious mechanical issue and would likely be accompanied by other timing-related codes and significant running problems.

Diagnosis Steps

  1. Read the fault codes with a BMW-capable OBD-II scanner to confirm P0366 is present and check for any other related codes.
  2. Locate the Bank 1 (passenger side) exhaust camshaft position sensor. It is at the front of the valve cover, on the lower side (towards the exhaust manifold).
  3. Disconnect the electrical connector and inspect for oil, corrosion, or damage. Clean with electrical contact cleaner if necessary. In one documented case, the connector was simply not plugged in after a service.
  4. Check the single T30 Torx or E8 external Torx bolt holding the sensor. A user on m3post.com reported their P0366 code was caused simply by this bolt being loose after a valve cover gasket job. Tighten if loose and see if the code clears.
  5. If the bolt was tight, remove it and gently wiggle and pull the sensor out. Inspect it for heavy oil sludge or damage. Wipe it clean.
  6. For the most definitive diagnosis, swap this sensor with the identical one from the Bank 2 exhaust position (driver's side).
  7. Reinstall the sensors, ensuring the retaining bolts are snug. Replace the small O-rings if they are hard or brittle.
  8. Clear the fault codes, start the engine, and drive the vehicle to see which code returns.
  9. If the code returns as P0366, the problem is likely in the wiring or connector for Bank 1.
  10. If the code returns as P0391, the sensor you moved is faulty and needs to be replaced.
  11. If the code does not return, cleaning the sensor or tightening the bolt may have fixed the issue. Continue to monitor.
  12. If wiring is suspected, test for power, ground, and signal continuity between the sensor connector and the DME. The sensor uses a 3-pin connector for power (approx. 5V), ground, and signal.

Parts You'll Likely Need

  • Camshaft Position Sensor (OEM #13627837904) — This sensor is the most common cause of the P0366 code. All four sensors on the S65 engine are the same part number.
    Trusted brands: Genuine BMW, VDO (OEM Supplier), Bosch
    OEM price range: $150-$220
    Aftermarket price range: $70-$150
  • Camshaft Position Sensor O-Ring (OEM #12141748398) — This small rubber O-ring seals the sensor against the valve cover. It is best practice to replace it whenever the sensor is removed to prevent future oil leaks. It is often sold separately.
    Trusted brands: Genuine BMW
    OEM price range: $1-$5
    Aftermarket price range: $1-$3

Related Codes That Often Appear With This One

  • P0341 — This is the equivalent code for the intake camshaft sensor ('A') on the same bank (Bank 1). Seeing them together could point to a wiring issue common to both sensors or a larger VANOS/timing issue on that bank.
  • P0391 — This is the same exhaust sensor code but for Bank 2 (driver's side). It would typically only appear with P0366 if you have swapped a faulty sensor from Bank 1 to Bank 2 during diagnosis.
  • 27BB — This is a BMW-specific code for 'Camshaft control outlet-VANOS'. If seen with P0366, it could point more strongly towards a VANOS solenoid or mechanical VANOS hub issue rather than just the sensor itself.

Platform-Specific Known Issues

  • Diagnostic Value of Swapping Sensors: Multiple threads on m3post.com confirm that cleaning and swapping the sensors is the primary diagnostic step. In one case, a user swapped the Bank 1 and Bank 2 exhaust sensors, but the P0366 code returned, correctly pointing them to a wiring issue on Bank 1 rather than a bad sensor.
  • Loose Sensor Bolt Can Cause Code: A user on the m3post.com forums reported chasing a P0366 code after a valve cover gasket replacement. The issue turned out to be that the single bolt holding the sensor in place was not fully tightened, causing an incorrect reading. Tightening the bolt resolved the fault code completely.
  • Sensitivity to Oil Condition: A parts vendor notes that these sensors can be overly sensitive to moisture in the oil, particularly in cars that are stored for long periods or have infrequent oil changes. This can cause a transient fault that may not indicate a failed sensor.

Mechanic-Grade Diagnostic Values

  • Camshaft Position Sensor Supply Voltage — expected: ~5V. Failure: Significantly lower or no voltage indicates a wiring or DME supply issue.
  • Camshaft Position Sensor Signal Voltage (Key On, Engine Off) — expected: ~5V. Failure: No voltage or low voltage could indicate a faulty sensor or a short in the signal wire.
  • Camshaft Position Sensor Ground Circuit Resistance — expected: Near 0 ohms (good continuity to chassis ground). Failure: High resistance (OL) indicates a broken ground wire.
  • Camshaft Position Sensor Signal Waveform — expected: A clean square wave when viewing with an oscilloscope while the engine is cranking or running.. Failure: A flat line, erratic, or noisy waveform indicates a failed sensor.

Hidden / Shadow Codes Worth Checking

  • 27BB: Camshaft control outlet-VANOS. This code points more specifically to a problem with the VANOS control on the exhaust camshaft, rather than just the sensor circuit. It suggests the issue might be with the solenoid or mechanical VANOS unit. (see via BMW-specific diagnostic software like ISTA, INPA, or a high-end scanner.)
  • 27BC: Camshaft control outlet-VANOS bank 2. This code is for the driver's side exhaust camshaft and would typically appear if a faulty sensor from Bank 1 was swapped to Bank 2 for diagnosis. (see via BMW-specific diagnostic software like ISTA, INPA, or a high-end scanner.)

Scan Tool Commands That Help

  • ISTA: Perform VANOS system test — Use this function when P0366 is present with other VANOS-related codes (like 27BB) or if a new sensor doesn't fix the problem. The test actuates the VANOS solenoids and measures adjustment times, which can identify a faulty solenoid or a mechanical issue, distinguishing it from a simple sensor failure.
  • ISTA: Delete adaptation values — This should be performed after replacing major components like VANOS solenoids or performing timing work. It resets the engine's learned adjustments. While not strictly required for a simple sensor swap, it can be beneficial. After resetting, the software may require learning procedures, such as teaching Valvetronic limit positions.

Wiring & Ground Locations

  • Camshaft Sensor Connector (Bank 1 Exhaust) — On the front of the passenger side (Bank 1) valve cover, the lower of the two sensors. It is a 3-pin connector.. This is the direct connection point for the sensor. It can become contaminated with oil from a leaking valve cover gasket or be left disconnected after service.
  • DME Connector X60005, Pin 25 — The DME (engine computer) is located in a cream-colored electronics box under the window scuttle panel on the passenger side of the engine bay (for LHD vehicles). Pin 25 on connector X60106 (a sub-connector) is the signal input for the Bank 2 exhaust camshaft sensor, which is relevant when swapping sensors for diagnosis.. If a wiring fault is suspected, this is the termination point at the DME for the sensor's signal wire, needed for a continuity test.
  • Main Engine Ground Strap — Connects the driver's side engine mount bracket to the vehicle's chassis, under the car. It can be accessed by removing underbody panels.. A corroded or broken main engine ground can cause a host of electrical issues and erratic sensor readings. While not a direct cause, a poor ground can lead to intermittent and hard-to-diagnose codes like P0366.
  • Camshaft Sensor Pinout — On the 3-pin sensor connector.. For testing, the pins are typically: Pin 1: +5V Supply, Pin 2: Sensor Ground, Pin 3: Signal to DME. This allows for testing power, ground, and signal directly at the sensor harness.

Real Owner Repair Stories

  • YouTube user '888MF' (BMW E92 M3) — Check Engine Light with camshaft position sensor error.
    ❌ Tried (didn't work) The owner immediately suspected a problem from a recent main dealer service.
    ✅ What actually fixed it The electrical connector for the camshaft position sensor was found completely disconnected. It was likely not secured properly during a previous service (e.g., spark plug change). Plugging the connector back in and clearing the code resolved the issue instantly.
  • m3post.com forum user (BMW E92 M3) — P0366 code appeared after a valve cover gasket replacement.
    ❌ Tried (didn't work) Initial diagnosis focused on the sensor itself or potential wiring damage from the repair.
    ✅ What actually fixed it The single E8 Torx bolt holding the camshaft sensor in place had not been fully tightened. The sensor was physically loose, causing an incorrect reading. Tightening the bolt to the proper torque fixed the fault.
  • m3post.com forum user (2007 BMW E92 M3) — P0366 code and misfires.
    ❌ Tried (didn't work) Swapped the Bank 1 exhaust sensor with the Bank 2 exhaust sensor.
    ✅ What actually fixed it The P0366 code remained on Bank 1 after swapping the sensor, proving the sensor itself was not the issue. This correctly pointed the owner to a wiring harness problem on Bank 1, which then needed to be traced and repaired.

OEM Part Supersession History

  • 1362783790413627837904 (no supersession) — The part number has remained consistent throughout its production life.

Diagnostic Flowchart

Start with a physical inspection of the Bank 1 exhaust cam sensor, as common S65 issues like oil leaks or loose hardware can cause P0366 without any parts failing.
→ A known issue on the S65, especially after a valve cover gasket job. Tighten the bolt or securely reconnect the plug. Clear codes and test drive; this often resolves P0366.
→ Clean the sensor tip and connector pins with electrical contact cleaner. The source is likely a leaking valve cover gasket, a common S65 problem that should be fixed to prevent recurrence. Clear codes and test drive.
The most definitive test is swapping parts. Swap the Bank 1 exhaust sensor with the identical Bank 2 (driver's side) sensor. After clearing codes and driving, which code returns?
→ This confirms the original Bank 1 sensor has failed. Replace the faulty sensor and its O-ring. All four cam sensors on the S65 use the same part number.
The fault stayed on Bank 1, ruling out the sensor. This points to the wiring harness. What is the result of a continuity test on the 3-pin harness from the sensor to the DME?
→ The harness is damaged, likely from engine bay heat making the insulation brittle. Repair the specific faulty wire to resolve the P0366 code.
→ This is a rare outcome. If the sensor and wiring are confirmed good, the fault may lie within the DME's internal circuitry or a mechanical timing issue. This requires advanced diagnostics by a BMW specialist.
→ The issue was likely a poor connection resolved by reseating the sensors. Continue to monitor the vehicle, but the problem may be fixed.

Other Known Issues on This Vehicle

Issues unrelated to this code that are worth knowing about as an owner of this generation:

  • Rod Bearing Failure 🔴 High — The most well-known S65 issue. Wear is due to tight engine tolerances. Premature wear can be detected via oil analysis. Proactive replacement is commonly recommended by enthusiasts every 60,000-80,000 miles to prevent catastrophic engine failure.
  • Throttle Body Actuator Failure 🔴 High — A very common failure. The two actuators (one per bank) fail due to worn internal plastic gears or electronic circuit board faults. This results in reduced power, limp mode, and DSC errors.
  • Idle Control Valve (ICV) Failure 🟠 Medium — Also a common point of failure as the vehicle ages. A faulty ICV leads to a fluctuating, rough idle and can trigger limp mode.
  • Valve Cover Gasket Leaks 🟡 Low — Common oil leak point on many aging BMW engines, including the S65. A leak can drip oil onto the camshaft position sensor connectors, potentially causing fault codes like P0366.

Used vs. New Parts: Buying Guide for This Vehicle

When a used part is the smart pick: A used sensor is generally not recommended as it is an electronic component with a finite lifespan, and the cost savings are minimal compared to the labor of replacing it again. However, if sourcing a used sensor from a known, low-mileage wrecked vehicle for a quick diagnostic swap, it could be a temporary option.

Donor-vehicle mileage cap: roughly under 50000 miles for the part to have meaningful remaining life.

What to inspect on the donor part:

  • Ensure the plastic housing is free of cracks.
  • Check that the connector pins are clean, straight, and free of corrosion.
  • Verify the O-ring is still pliable, though it should always be replaced with a new one.
  • Ask for the donor vehicle's mileage if possible.

OEM-only on this vehicle (don't cheap out):

  • Camshaft Position Sensor

Aftermarket brands forum-validated for this vehicle:

  • VDO (often the original equipment manufacturer)
  • Bosch

Brands owners have reported issues with on this vehicle:

  • Unbranded, 'white-box' sensors from online marketplaces. Forum users across many BMW platforms report that cheap, no-name crank and cam sensors often fail quickly or are dead-on-arrival, leading to wasted time and money.

Real Owner Stories

Aggregated from forums and TSBs cited above. Mileages and costs reflect what owners reported in those sources.

2007 e92 M3

Symptoms: Check Engine Light for P0366, with a history of misfire problems.

What fixed it: The forum thread did not contain a final resolution or a confirmed fix. The owner confirmed the P0366 fault remained on Bank 1 even after swapping the sensor with Bank 2, pointing towards a wiring issue.

Source hint: Bimmerpost (m3post.com)

BMW M3 S65

Symptoms: A persistent P0366 code appeared immediately after a valve cover gasket replacement.

What fixed it: The single bolt holding the sensor in place was not fully tightened. Tightening the bolt resolved the fault code completely.

Source hint: m3post.com forums

BMW M3 S65

Symptoms: The P0366 code returned on Bank 1 even after swapping the Bank 1 and Bank 2 exhaust sensors.

What fixed it: The diagnosis correctly pointed to a wiring issue on Bank 1 rather than a bad sensor, as the P0366 code did not move with the sensor.

Source hint: m3post.com thread

Frequently Asked Questions

Where is the Bank 1 exhaust camshaft position sensor (P0366) located on the S65 engine?
The Bank 1 (passenger side) exhaust camshaft position sensor is located at the front of the valve cover, on the lower side, towards the exhaust manifold.
What's the best way to tell if my P0366 code is a bad sensor or a wiring problem on my M3?
The most common diagnostic method is to swap the Bank 1 exhaust sensor with the identical Bank 2 exhaust sensor. If the code moves and becomes P0391, the sensor is faulty. If the P0366 code returns, the issue is likely with the wiring or connector on Bank 1.
Can I use the same part number for all four camshaft position sensors on my S65 V8?
Yes, all four camshaft position sensors on the S65 engine use the same part number, which makes swapping them for diagnosis straightforward.
I just had my valve cover gaskets replaced and now I have a P0366 code. Could the two be related?
Yes. The code can be caused by the sensor's single retaining bolt not being fully tightened after the job. It's also possible the sensor's electrical connector was damaged or simply not plugged back in during the service.
My M3 is leaking oil from the valve cover. Could this be the cause of my P0366 fault?
Yes, a leaking valve cover gasket is a known cause. Oil can seep into the camshaft position sensor's electrical connector, which disrupts the signal and triggers the P0366 code.
What tool do I need to remove the sensor bolt?
You will need either a T30 Torx or an E8 external Torx socket to remove the single bolt holding the sensor in place.
Camshaft Position Sensor DIY - BMW E9X M3
Camshaft Position Sensor DIY - BMW E9X M3
DIY BMW E9X M3 S65 VALVE COVER GASKETS!
DIY BMW E9X M3 S65 VALVE COVER GASKETS!
HOW TO CLEAN BMW VANOS SOLENOID E90 E91 E92 E93
HOW TO CLEAN BMW VANOS SOLENOID E90 E91 E92 E93
HOW TO CLEAN VANOS SOLENOID ON BMW E90 E91 E92 E93
HOW TO CLEAN VANOS SOLENOID ON BMW E90 E91 E92 E93
Wrenchy
Article researched & written by
Go-Parts' AI research assistant. Every article is backed by live web research, verified OEM data, and real technician knowledge — so you get accurate, up-to-date information you can trust.
Meet Wrenchy → Updated Jul 21, 2026

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.

Year Coverage
This article covers the OBD-II Code P0366 (Deep Dive) for:
  • BMW M3: 2007200820092010201120122013
In this article
🎬 Helpful Videos
Jump to ▴

Email This Guide

We'll send you a link to this article so you can read it later or share it.

Added to cart · Part