A code reader is a dangerous thing in the hands of an owner who reads the code and buys the part it names. P0128 is the perfect trap: it talks about coolant temperature, so owners buy a coolant temperature sensor, and the code comes back, because P0128 was never accusing the sensor. In this book’s own DTC index, P0128 is listed under a plainer name — THERMOSTAT RATIONALITY. The computer is not saying the temperature reading is wrong. It is saying the engine is warming up too slowly to be believed, and the first suspect in a slow warm-up is the thermostat.
This chapter is the third in Common Crossfire Issues & Suggested Solutions, and it does two jobs: it puts the three engine sensors owners ask about in one place, with their factory locations, and then it walks the P0128 diagnosis in the order that saves money.
The Three Sensors, Where the Factory Put Them
The camshaft position sensor (CMP) is a Hall-effect sensor — three wires — mounted on the right front cylinder head. Its job is identification: it tells the Powertrain Control Module which cylinder is on its compression stroke, starting with cylinder number one, so the PCM can time fuel and spark to the right hole. There is exactly one of them. When it fades you get long cranking, hard starting, intermittent starting, and codes in the P0341 family — performance, or timing over-advanced / over-retarded, as the index lists them. What it does not ordinarily give you is a P0128.
The crankshaft position sensor (CKP) is an inductive sensor — two wires — mounted on the left rear of the cylinder block, at the bellhousing, reading the flywheel. It reports crankshaft position and speed, and without its signal the engine does not run at all. Its failure signature is the most famous in this book — dies hot, restarts cold — and it gets the full treatment in How to Diagnose No Starts, so it gets only this here: one sensor, left rear of the block, bolt torqued to 8 N·m like its camshaft brother, and it can fail without setting a code, which is why the scanner test that matters is watching for an RPM signal while cranking. No RPM on the scanner while the starter turns means the PCM cannot see the crank turning.
The engine coolant temperature sensor (ECT) is a resistance sensor up front in the thermostat and coolant outlet region: as coolant temperature changes, its resistance changes, and the PCM reads the varying voltage. The PCM spends that information on fuel mixture, warm-up strategy, ignition, and cooling fan operation. When the sensor or its circuit fails outright, the index has codes for that — P0117 and P0118, circuit low and circuit high. A sensor that is merely lying a little is harder: the cheap test is a cold engine and a scanner. After the car has sat overnight, the coolant temperature reading should sit close to the air temperature around the car. A sensor that reports 40 degrees on a 75-degree morning has confessed.
Which Cylinder Is Which
While the sensors are on the table, settle the map they work with, because a popular diagram going around has the banks swapped. On the M112, standing at the front bumper and looking at the engine, the bank on YOUR left is the car’s right bank — the passenger side in an American car — and it carries cylinders 1, 2, and 3, front to back. The bank on your right, the driver’s side, carries cylinders 4, 5, and 6, front to back. Number one is the front cylinder on the passenger bank — which is exactly where the factory put the camshaft position sensor: the manual mounts it on the right front cylinder head and gives it the job of identifying cylinder number one’s compression stroke. The sensor’s address proves the map.
Diagrams get this backwards because “left” flips depending on whether you are sitting in the car or standing in front of it, and an engine does not care which way you were facing when you drew the picture. Bolt the firing order on top of it — 1-4-3-6-2-5, straight from the Engines chapter — and you can see the pattern jump bank to bank: front passenger, front driver, middle passenger, rear driver, rear passenger, middle driver. When a code names a cylinder, that is the map to walk with.
What P0128 Actually Means
P0128 sets when the PCM watches a warm-up and decides the coolant is not reaching the thermostat’s regulating temperature in the time or manner it should. On this engine the thermostat is a wax-pellet unit that opens at 195°F (90°C) — and note, from the Cooling chapter, that it is serviced with its housing as an assembly. A thermostat that has failed open, or that starts opening far too early, lets coolant circulate through the radiator from the first minute. The engine still warms up — eventually, mostly — which is why owners look at a gauge sitting near normal and swear nothing is wrong. The PCM is not measuring where the temperature ends. It is measuring how long the journey took, and it is unimpressed.
The causes, in the order this book would chase them: thermostat stuck open or opening early — the large majority. Coolant temperature sensor reading low — possible, and testable in two minutes cold. Low coolant or trapped air after cooling system work — possible, and free to check. Sensor wiring or a poor connection — possible. A cooling fan running when it has no business running — less common, but this car has a fan control module with its own reputation. The PCM itself — last, and almost never.
The Four Tests, In Order
Test one, the cold comparison: overnight-cold engine, scanner on before starting, coolant temperature versus the air temperature. Close together means the sensor is honest at the cold end. Wildly different means stop here and chase the sensor and its wiring.
Test two, the timed warm-up: start the engine and log the coolant temperature at 0, 2, 5, 10, and 15 minutes. A healthy M112 climbs steadily toward and past the thermostat’s 195°F opening point and settles in that neighborhood. A car that plateaus well short of it, or takes forever to get anywhere, is showing you a thermostat that is letting the radiator drink from the start.
Test three, the hose test: from a cold start, keep a careful hand near — not on — the upper radiator hose. With a working thermostat, that hose stays cool while the engine warms, then warms quickly once the thermostat opens around 195°F. A hose that warms gradually from the first minutes is coolant circulating prematurely — the thermostat’s signature, written in rubber. Mind the fan and the belts; engines do not care about your diagnostic intentions.
Test four, the fan: from cold, the cooling fan should not be roaring. A fan that runs hard on a cold engine is overcooling the radiator and can drag a warm-up out all by itself — and on this car, check the fan control module before condemning anything else in that circuit.
Repair Priority
Thermostat first — tested, not guessed, and replaced as the housing assembly the factory specifies. Sensor second, and only on evidence: a failed cold comparison or readings that jump around. Wiring third, while you are in there with the connectors in your hands anyway. Fan fourth. Computer never, until everything else has been eliminated twice. And when the thermostat goes in, respect the cooling system basics from this book: the correct HOAT coolant at 50/50, the system filled and bled properly, because trapped air after the job is how a fixed car earns the same code twice.
The Bottom Line
P0128 is the computer grading your warm-up curve, and on the M112 it flunks thermostats, not sensors. Prove the sensor honest with a cold scanner reading, time the warm-up against the factory’s 195°F opening point, feel the top hose tell on the thermostat, and glance at the fan. Do it in that order and you will buy one part, once — the right one.
© 2026 insearchofyourpassions.com - Some Rights Reserve - This website and its content are the property of YNOT. This work is licensed under a Creative Commons Attribution 4.0 International License. You are free to share and adapt the material for any purpose, even commercially, as long as you give appropriate credit, provide a link to the license, and indicate if changes were made.







