A couple of days ago my EML came on in the middle of a journey. I took it to my local bod who has a code reader app on his phone (!!!! Smart-!Removed!) and it predictably came up with the pre-cat oxygen sensor failure. The cabin had been smelling fumey for a few days, but I assumed it was always the car in front. (Yeah,right)
He ordered the part and I used youtube as my reference for a 'how to'. As I set to with tools and took out the cabin filter tray, the first thing I discovered was that some enterprising Doofus had , erm, 'fixed' the rocker cover breather pipe by binding it with electrical tape!
It was split right through at the spigot on the cover. "That'll be your problem matey" bod chirped. I then also found that, having re-bound the pipe with some duct tape, the other end that attaches to a cannister other side of engine bay was being sucked flat. Clearly knackered then. Chummy then ferrets around the workshop to find some spare hose. 20 seconds and 2 jubilee clips later, job done!
Fault code erased and, well, no need for new component. Money saved. Hardly got my hands grubby.
Lesson learned.
I would therefore suggest to my learned chums here on this forum that the breather pipe be a first target when the engine warning light comes on and there is no discernible problem with performance.
Thank god for local mechanics with a bit of savvy!