My 2007 Subaru WRX had the Check Engine Light come up, and I took it to Auto Zone for a computer code scan, and here is the result:P0456- Evaporative emission control system malfunctionWhat exactly is that? I know it‘s NOT a fuel/loose fuel cap (that‘d be P0457), so what am I looking at and/or replacing here?Thanks.
I looked it up in my book and p0456 is a evap emission control system leak detected (very small leak) so try buying a new gas cap first as the seal gets bad over time and can cause this.
The problem with P0456 is that it is so broad - it simply says there is a small leak in the evaporative control system, the emission system that prevents fuel vapors from being released into the atmosphere (sounds simple, but they manage to make it complex). The first source has a good definition and details. P0457 is a rare code that is not nearly as sensitive as P0456 - it will pop up if you leave the cap way loose or off. (See source 2 for the definition but not the details.) The most likely cause is a bad seal on the gas cap, especially given the age of your Subie. The other causes of evap leak codes are mostly deterioration of other rubber parts - I fought a battle of cracked hoses near the gas tank on my old Volvo - and your vehicle is too new for that and too old for misfitted parts. I bet if you get a new gas cap from the dealer it will fix the problem. Aftermarket gas caps are not to be trusted.
I get a check engine light with the code PO442 every now and then. It happens when I run it hard on a dirt road occasionally and the shop told me that if a rock hits the line in just the right place it can kink the line at a joint for a split second and cause the code. I turn the light off and never have a problem for many thousand miles.