ABS wheel speed sensor: codes C0035, C0040, C0045 and how to diagnose "ABS flashing in turns"
What OBD-II shows about wheel speed sensors, difference between active and passive types, how to diagnose ABS/ESP problems via C-codes, and why a "worn tone ring" is common.
ABS light flashes in turns, ESP goes crazy on a straight road, brakes sometimes “vanish” on wet — all often the wheel speed sensor (WSS). OBD-II sees it through C-codes. Below: how to diagnose in 15 minutes.
What the WSS does
The WSS measures the rotational speed of a wheel — actually reads a toothed ring (tone ring, usually 48 teeth). The ABS/ESP ECU compares 4 wheel speeds and:
- If one brakes sharply → engages ABS
- If rotation is asymmetric → engages ESP
- Displays vehicle speed on the dash (speedo)
So a WSS problem breaks three systems at once: ABS + ESP + speedo.
Two WSS types
Passive (magnetic-inductive)
- Old tech (pre-2005)
- Two wires (no power), signal is a sine wave
- Simpler and cheaper
- Con: doesn’t work at very low speed (< 3 mph)
Active (Hall effect / MR)
- Modern tech (2005+, most cars)
- Three wires (+5V, GND, signal), signal is a digital pulse
- Works from 0.3 mph (crucial for active ESP, hill-hold)
- Con: more expensive ($30-100 per unit); sensitive to magnetic fields
Key OBD-II codes
| Code | Meaning |
|---|---|
| C0035 | LF (left front) sensor problem |
| C0040 | RF (right front) sensor problem |
| C0045 | LR (left rear) sensor problem |
| C0050 | RR (right rear) sensor problem |
| C0027 | ABS pump relay |
| C0035-C0060 | Range fault (sensor signal out of allowed range) |
| C0065-C0068 | Signal loss (broken wire) |
Causes
1. Contaminated sensor (most often 40-60%)
- Rust, dirt, brake dust between sensor and tone ring
- Symptoms: ABS light appears intermittently, often in rain or on dirty roads
- Fix: remove sensor, clean the mount and the sensor ($0-10, 10-20 min)
2. Worn tone ring
- On old cars (125k+ mi) — teeth wear down
- On ABS-integrated hubs the ring can even break during bolt tightening
- Symptoms: ABS light only above a certain speed (e.g. > 25 mph) or only in turns
- Fix: hub or ABS ring replacement ($30-200)
3. Broken / shorted wire
- Often from potholes or road contact
- Symptoms: ABS light on constantly, same wheel always
- Fix: check wire from sensor to BCM ($0-50)
4. Dead sensor
- Battery, water in housing, magnetic damage
- Symptoms: ABS light always on, C-code stored
- Fix: sensor replacement ($15-100 + 30-60 min labour)
5. ABS module
- Rarest (5-10%). Internal failure
- Symptoms: various C-codes without a single-wheel pattern
- Fix: ABS module replacement ($300-1500) or refurbishment ($100-300)
Diagnostics in 15 min
Step 1. Read active C-codes
Note which codes are active. One code → one wheel. Many codes across different wheels → bus or ABS module problem.
Step 2. Read live wheel speeds
Via Live Monitor (where supported as manufacturer PID):
- WSS LF, RF, LR, RR — speed of each wheel separately
- On a flat road at 30 mph — all 4 should read 30 ±0.3
- Spread > 1 → problem with that wheel’s sensor
Step 3. Test: turn the wheel by hand
- Engine off, on park brake
- Rotate the wheel (need to lift on a jack) — WSS should output signal (~0.3-1 mph)
- If 0 with visible rotation → sensor dead or tone ring worn
Step 4. Visual inspection
- Look at sensor and tone ring — chips, dirt, rust
- Look at wire — rub on wheel arch, broken connector
In-motion symptoms — patterns
| Symptom | Likely cause |
|---|---|
| ABS flashes only in turns | Contaminated front sensors |
| ESP triggers on a straight | Wheel-speed mismatch → one sensor lying |
| ABS above 25 mph | Worn tone ring |
| ABS constantly | Broken wire or dead sensor |
| Speedo “jumps” | Front WSS problem (used for speedo on most cars) |
Our DTC Analyzer offers a repair with probabilities based on make: BMW N47 (rear WSS often fail from old brake wheels), VW MQB (front sensors vulnerable to road salt).
Try it on the free tier — pair an ELM327 adapter. Standard C-codes C003X-C005X available on every car. Live wheel speeds via Mode 22 — on paid tier.