← Back to list

2007 Mazda3 P0128 Code Returns After Thermostat and ECTS Replacement - Fix & Drive Cycle Solution

Model: 2007 Mazda3 Fault Code: P0128 Posted: 2015-06-17 13:29

Hi everyone, I'm a 2007 Mazda3 Hatchback owner experiencing recurring trouble code P0128 despite completing repairs. I've done my own diagnostics and replaced both the thermostat and engine coolant temperature sensor (ECTS) as recommended by research. After installation, the P0126 code cleared successfully, but P0128 persisted. I attempted to clear the code myself using an OBD2 scanner, only for it to reappear shortly after. My local mechanic suggested that the engine control module (PCM) monitors must be reset at a Mazda dealership — which I did. The dealer cleared the code successfully, but it returned approximately 45 miles later. To troubleshoot further, I ran diagnostics and observed engine temperatures: around 170–190°F near the thermostat housing and about 205°F at the top of the engine after 5–10 minutes of idle. I'm now concerned that the issue may not be related to coolant flow or sensor failure, but rather a misalignment between the PCM's perceived temperature and actual engine heat. I've read that P0128 is triggered when the engine doesn't reach the required operating temperature (typically 175–190°F) as detected by the PCM — not necessarily by infrared thermometers. I'm currently facing a smog check deadline and need reliable, long-term resolution. Any insights into proper drive cycle completion or known TSBs for this model year would be greatly appreciated.

Related fault codes
P0128
Comments (2)
Anonymous 2015-06-17 14:02

Did you replace the thermostat with an OEM part from Mazda? While it's a simple component, many aftermarket units have quality issues that can lead to P0128. The key point is not what your infrared thermometer reads — it's what the Powertrain Control Module (PCM) actually senses. A proper OBD2 scanner is essential for live data monitoring. Note: Monitor resets do not require a dealer — they only need a complete drive cycle to validate system readiness. Some vehicles may need multiple cycles. Recommended Drive Cycle (Basic): - MIL off, no active DTCs present - Fuel level between 15% and 85% - All accessories turned off - Cold start: ideally after an 8-hour cold soak with engine at 68–86°F Steps: 1) Start vehicle and idle for 5 minutes. 2) Rev to 2300–2700 rpm in neutral/park for 15 seconds. 3) Rev to 3800–4200 rpm for 15 seconds. 4) Idle for 20 seconds with cooling fan off. 5) Accelerate to 52–55 mph, maintain speed (in high gear) for 1.5 minutes. 6) Decelerate to 15 mph and drive at varying speeds from 15 to 35 mph for 13 minutes. 7) Maintain steady 25 mph for 50 seconds. Each step tests a different system monitor (catalyst, O2 sensor, EVAP, etc.). Skipping any step may prevent the PCM from recognizing readiness. Some vehicles require multiple cycles to clear P0128 permanently. Also, check if your vehicle is affected by Mazda Bulletin No: 01-046/06 — this addresses engine warm-up timing and may explain why the code returns early. Always use a dedicated OBD2 scanner for live data; infrared tools are not reliable for PCM temperature readings.

Anonymous 2015-12-03 23:56

I recommend having your PCM reflashed with updated calibration software, especially since the 2007 Mazda3 may be affected by known TSBs related to warm-up timing. Many early-model units have a delayed warm-up threshold that triggers P0128 prematurely. Using an OEM thermostat is critical — aftermarket parts can cause inconsistent temperature readings and fail to meet PCM expectations during startup. The updated calibration allows more time for the engine to reach optimal operating temperature before setting the P0128 code, which may resolve the issue. If your vehicle has a known TSB (Technical Service Bulletin), it's worth requesting a review from your dealer or checking official Mazda documentation.