Here's a quick how-to fix these pesky CEL codes, i fixed mine today and after an hour of work, all issues were gone! no more CEL's! i was throwing the following codes;
P1400 - Fuel Tank Pressure control solenoid valve circuit low
P0447 - Evaporative emission control system vent control low input
P0457 - Evaporative Emission Control (EVAP) system leak detected
The P0457 code can either be the gas cap being lose, or thrown in conjunction with the P0447 code, they typically come in a pair.
the connecter that typically is the culprit for the P0447 code is shown in this picture on the right hand side of the charcoal canister (located at the passanger rear of the vehicle), usually it becomes dirty and/or corroded causing the CEL, take off this connector and inspect for corrosion and a possible poor connection, some of the time this is all that is required, if all looks well keep the connector un plugged and turn the car on, as the car is running use a volt meter and set it to 20 VDC (it's the setting mine had), if it reads 12v the issue is somewhere else, quickly check the rubber hoses going into the canister for damage as they are not protected from debris coming off the rear wheel, if it reads any less you have a break in the wire going to that plug. use a knife and cut the loom behind that connector and inspect the wiring, if all looks ok, remove the charcoal canister by taking off the 3-12mm bolts holding it in place, carefully lower it and not damage the rubber hosing going to the box. it's slightly smaller than a shoe box if you are still for some reason not sure what it looks like.
here you can see the canister lowered and move out of the way, the three wires that were hidden in the loom, as i peeled it back the wire fell apart from corrosion, chances are that was my issue, with the canister out of the way it's easy to split the look and access the wire, once you split it farther you'll notice the two wires (yellow/green) that are supposed to be connected together with solder, typical location for the break, trim the wires, tin the ends, and start with adding length to the connector itself.
here you can see me extending the wire with some 18g wiring, nothing special, solder the ends and use shrink tubing, simple stuff, red to the yellow/green, and black to the other one.
connector done and extended, shrink tubing used on both wires and a larger piece to help prevent moisture getting into the patch.
1) this is the fuel tank pressure solenoid clip, the p1400 CEL stems from this location, most of the time it's due to the break in the wiring, some of the time it's the solenoid above the center diff. that has failed, i suggest checking the connector/wiring first and foremost. you will also notice the yellow/green wire here also, remember the two Y/G wires that were soldered together going to the charcoal canister clip? yup. look at the two red dots, that is the same wire, since the corroded wire broke, it also resulted in the p1400 code, ironic huh!
2) This is the NEGETIVE wire going to the charcoal canister clip.
3) These are the POSITIVE wires going to the charcoal canister, strip and solder these together, then solder both (2) and (3) wires to the clip, matching colors obviously.
wires soldered and extended, connected to the clip before shrink tubing and 3x layers of electrical tape.
wiring sealed up and connector cleaned, use lots of electrical tape!, replace both connectors using dielectric grease to prevent corrosion, double check your work and replace charcoal canister with 3x 12mm bolts.
picture is same as before, replace everything to look the same, i tucked the wire for the clip up and over the rubber hosing to prevent any possible damage, extended it a little longer for this reason., double check your work, go inside the car and reset CELs with access port if you have one, if not, take the negetive terminal off of your battery, place aside and hold your foot on the brake pedal for 10secs. replace terminal, tighten and start the car, the car will re learn it's idle and if all went well, the CELs will be off.
TADA! no more CELs! saved $400+ from NOT going to the dealership!
Hope this helps, this relates to 2002-2007 WRX's, STi's, outbacks and i believe forresters, possibly older generations as well, if you need a hand i can help also! sorry for the spelling mistakes and this being rushed!