A warning light is a symptom, not a diagnosis. A fault code tells you which circuit or system reported a reading outside its expected range — it does not tell you which component caused it. An oxygen sensor code, for example, is just as often an air leak or an injector problem as it is a faulty sensor.
Our technicians read the codes, then test. Live data, freeze-frame values from the moment the fault occurred, and physical inspection of the circuit are what turn a code into an answer.

A guide to what this work typically covers. The exact scope depends on your vehicle and what we find once it's on the hoist.
Steady usually means investigate soon. Flashing indicates a misfire that can damage the catalytic converter — reduce speed and book it in promptly.
Hesitation, a shake at idle or a loss of power under acceleration all leave evidence in the live data.
A sensor reporting slightly wrong values will not always light the dash, but it will show up at the bowser.
Problems that come and go are the hardest to catch. Stored freeze-frame data often reveals the conditions that trigger them.
Plugging in a scan tool takes a minute. Proving which component is at fault takes proper testing, and that is what protects you from paying for parts that were never the problem. We tell you upfront how much diagnostic time we expect a fault to need.
A code can be erased in seconds, and it will come back. Worse, clearing it also erases the freeze-frame data that would have helped diagnose it. If a light is on, leave it on until it has been read properly.
If your question isn't covered here, call the workshop and we'll talk it through.
Yes. We scan every module, capture the freeze-frame data and then test the circuit to confirm the actual cause before recommending any parts.
Tell us about your vehicle and we'll take it from there.