1996 Chevrolet Z28 Auto: P0507 Code - Idle RPM Too High, Solutions & Fixes
I own a 1996 Chevrolet Z28 with an automatic transmission. The vehicle is currently displaying OBD-II diagnostic code P0507 (Idle Control System RPM Higher Than Expected). This issue has persisted for some time. The only way I've been able to temporarily resolve the code was by manually adjusting the idle screw to lower the engine RPM—though this is not recommended as a long-term fix. After doing so, the idle became unstable, fluctuating between 50 and 75 RPMs with a typical hangaround of around 750 RPM, which is elevated but still within acceptable range. I've already performed several repairs including replacing the Idle Air Control (IAC) valve, Throttle Position Sensor (TPS), rubber intake elbow (to fix potential vacuum leaks), and the throttle body (TB). I also replaced the engine control module (ECM), conducted a smoke test for vacuum leaks, installed new TB gaskets, and cleaned the fuel injectors. Despite these efforts, the P0507 code remains. I've considered having the PCM reprogrammed by Bryan at PCMforLess, who confirmed he can clear or modify the code. However, I'm seeking community input before proceeding with that step. The car runs smoothly and has good fuel economy (approximately 14 MPG in city driving), so the underlying performance isn't compromised—only the idle stability and diagnostic code persist. I've also tried a known IAC reset method: pressing the accelerator pedal halfway, holding it, cranking the engine, releasing after 5 seconds, turning off for 10 seconds, then restarting. This helped slightly but requires further validation. Any insights or suggestions on potential root causes—such as EGR valve status, exhaust leaks near O2 sensors, or ignition timing—are greatly appreciated.
Could a stuck half-open EGR valve be causing the idle to spike? Even if it's disabled in software, physical blockage or partial operation can affect idle stability. Also, check for engine surging—this could point to an underlying sensor issue. I'd recommend rechecking basic components first before relying on PCM programming. A scan tool may be needed to relearn base idle settings. Ignition timing should also be ruled out as a contributing factor.