Crankshaft position sensor circuit on BMW — heat-soak failure on N47/N57 diesel and N20 petrol.
BMW P0335 — Crankshaft position sensor circuit on BMW — heat-soak failure on N47/N57 diesel and N20 petrol. Typical UK independent garage cost: £55–£220.
What actually causes P0335 on a BMW
Classic intermittent — fails when hot, cranks fine when cold. On N47 it's often confused with the timing-chain stretch story (P0016) but P0335 alone is normally just the sensor. £45 part, 30 minutes.
BMW engines that log P0335
- N47 2.0d (F20/F30/E90)
- N57 3.0d (F10/E70 X5)
- N20 2.0 TwinPower petrol
- M57 3.0d (E60/E90)
How we diagnose P0335 on a BMW
- Replicate hot — drive to operating temp then hot-restart
- Scope the crank signal during the failure
- Check connector at the sensor for oil contamination from cam cover leak
The common misdiagnosis to avoid
Workshops misdiagnose this as fuel pump or immobiliser because the no-start is heat-soak intermittent — always read fault codes when warm.
BMW P0335 repair cost in the UK
Expect £55–£220 including parts and labour at an independent garage. Main-dealer quotes on BMW are usually higher for the same job, and the spread exists because the cheap cause and the expensive cause throw the same code — pay for the diagnosis before you pay for parts.
Bob's workshop tip
N47/N57 P0335 with cam-cover oil mist on the connector — clean and re-seal first, you'll save the customer the sensor cost.
Codes usually seen alongside P0335 on BMW
- P0336
- P0016
Symptoms drivers report with P0335
- Engine cuts out suddenly while driving with no warning, cranks and cranks then fires up 15–20 minutes later
- Hot-start failure: won't restart after a 10-minute shop stop, absolutely fine after sitting an hour
- Very long cranking (4–8 seconds) before the engine catches, especially on hot days
- Stalling at junctions or roundabouts, particularly when engine is fully warm
- Rev counter drops to zero briefly while driving, then jumps back to normal
- Eventual complete no-start with the engine cranking normally but no injector pulse and no spark
- P0335 sometimes stored alongside P0336 (performance) or P0016 (crank/cam correlation)
Repairs that clear P0335
- Crank sensor replacement
- Wiring repair
For the generic, all-makes explanation of this code — meaning, every known cause and UK cost bands — see our P0335 guide.
Reading P0335 on a BMW properly
A generic reader will show P0335 and nothing else. What matters is the freeze-frame data stored with it — engine speed, load, coolant temperature and fuel trims at the moment the fault was logged — plus whether any other module on the BMW has logged something at the same time. Codes rarely arrive alone, and the order they were stored in usually points at which one is the cause and which are the consequences.
Clearing P0335 without fixing it
Erasing the code resets the BMW's readiness monitors as well as the light. The fault returns on the next drive cycle if the cause is still there, and in the meantime the incomplete monitors can stop the car passing an emissions check. After a genuine repair, the car is driven until the relevant monitor completes before it is handed back.
Bob's Mechanical Repairs is an independent garage in Birnam, Dunkeld, Perthshire, with 32 years of Bob's experience on the tools. If P0335 is showing on your BMW, bring any scan results with you — we will read the live data ourselves, confirm which cause it actually is, and price the repair before any work starts.