Rather than pay a garage to read your engine fault codes, most engine ECUs can be read for free!
Petrol engines
2.0/2.5/3.0 Paperclip test
2.6/3.2 Pedal trick
2.2 Code reader required..But try pedal trick, it *may* work if you are lucky
Diesel engines
2.5 TD Paperclip test (some only, else code reader)
2.2 DTi Code reader required
Those needing a code reader or more advanced diagnostics performed, see
http://theboy.omegaowners.comPaperclip testPlease note: 2.0l will not work if engine running.
Open fusebox under steering wheel. Straighten a paperclip, and insert as shown

Turn on ignition, and count the flashes of the EML. Easiest way to describe is to watch this video...
http://images.omegaowners.com/images/guides/paperclip_test/paperclip.htmlNote: On a v6, if the engine isn't running, it is normal to get a 31. On a v6, you can do test again with engine running.
Note: Systems using 2 digit codes (2.5/3.0 and earlier 2.0), the system flashes a 1-2 (12) 3 times to indicate start of sequence. Systems using 4 digit codes (later 2.0l), there is no start of sequence - it starts flashing out fault codes (if any) immediately.
Pedal TrickFoot on brake, gas pedal to the floor.
Turn on ignition to position II (do not fire the engine in position III)
When dash lights go out the yellow light car symbol with a spanner through it should flash.
4 sets of flashes/numbers pause and so on.
10 flashes is zero.
Constant flashing no codes.
Video is here (thanks to chrisgixer

):
http://images.omegaowners.com/images/guides/paperclip_test/pedaltrick.html and shows
10 3 10 10 =0300 random miss fire
10 3 10 2 =0302 miss fire on cyl 2
10 3 10 3 =0303 miss fire on cyl 3
you get the idea...