P3658moderate severityPowertrain
GDI Fuel Rail Pressure Oscillation Detected
on 2010 BMW M3 E90 4.0L V8 S65 · RWD
What this code means
The fuel rail pressure in the GDI system is oscillating beyond normal limits, indicating a control instability or mechanical issue in the high-pressure fuel system.
Symptoms
- Check Engine Light
- Engine vibration at idle
- Fuel injector noise louder than normal
- Idle quality degradation
- Possible misfire symptoms
- Fuel smell intermittent
Common causes
- HP fuel pump volume control valve hunting
- Fuel rail pressure sensor noise
- Pressure damper failure in fuel rail
- Fuel injector leak causing pressure drops
- HP pump cam follower uneven wear
Diagnostic steps
- Monitor fuel rail pressure waveform with fast data rate
- Check HP pump volume control solenoid
- Inspect pressure damper in fuel rail
- Test fuel injectors for leak-back
- Inspect HP pump cam follower for uneven wear
Repair notes
Replace pressure damper if failed. Service volume control solenoid. Replace cam follower if showing uneven wear.
🔌 Don't have a code reader?
Any of these will read and clear this code — pick by how deep you want to go.
Budget handheld~$40
ANCEL AD410 →
No-phone-needed handheld — reads, clears, live data, freeze frame.
✓ ANCEL official store
Serious DIY~$100
BlueDriver Pro →
Enhanced codes (ABS, airbag, TPMS) plus repair reports.
SHOP FAVORITEShop-grade tablet~$300
Autel MaxiCOM MK808S →
Bidirectional tests, service resets, all systems.
✓ Autel official store
Pro diagnostics$1,500+
Autel MaxiSys MS906 Pro →
Full-system pro platform — topology mapping, ECU coding, the works.
✓ Autel official store
As an Amazon Associate and Autel/ANCEL partner, OLP earns from qualifying purchases — how we link. This never changes the specs we publish.
Other Powertrain codes on this vehicle
29CC
Misfire Cylinder 1
29CD
Misfire Cylinder 2
29CE
Misfire Cylinder 3
29CF
Misfire Cylinder 4
29D0
Misfire Cylinder 5
29D1
Misfire Cylinder 6
29D2
Misfire Cylinder 7
29E0
Lambda Additive/Idle Adaptation Limit, Bank 1
29E1
Lambda Additive/Idle Adaptation Limit, Bank 2
29E2
Lambda Multiplicative Part-Load Adaptation Limit, Bank 1