Understanding Subaru OBD-II Trouble Codes P0128

November 25, 2023SubaruAdvisor

Introduction

When it comes to diagnosing issues with your Subaru, the On-Board Diagnostic II (OBD-II) system is a valuable tool. It helps identify trouble codes that can indicate specific problems in your vehicle. One common trouble code that Subaru owners may encounter is the P0128 code. In this blog post, we will explore what the P0128 code means, its possible causes, and how to resolve it.

Understanding the P0128 Code

The P0128 code is a generic powertrain code that is triggered when the Engine Control Module (ECM) detects that the coolant temperature does not reach the expected operating temperature within a specified time after starting the engine.

When the engine is cold, the ECM expects the coolant temperature to gradually rise as the engine warms up. If the temperature does not reach the expected level within a certain timeframe, the P0128 code is set.

Possible Causes of the P0128 Code

There are several potential causes for the P0128 code in a Subaru:

  1. A faulty thermostat: The thermostat is responsible for regulating the coolant flow in the engine. If it is stuck open or opening too soon, the engine may not reach the desired operating temperature.
  2. A low coolant level: Insufficient coolant can prevent the engine from reaching the proper temperature.
  3. A malfunctioning coolant temperature sensor: If the sensor is providing inaccurate readings, it can trigger the P0128 code.
  4. A problem with the radiator fan: If the fan is not working properly, it may not provide enough airflow to cool the engine, leading to higher temperatures.
  5. A faulty ECM: In rare cases, the Engine Control Module itself may be malfunctioning and incorrectly detecting the coolant temperature.

Resolving the P0128 Code

If you encounter the P0128 code in your Subaru, here are some steps you can take to resolve it:

  1. Check the coolant level: Ensure that the coolant level is sufficient. If it is low, top it up and monitor the situation.
  2. Inspect the thermostat: Have a professional mechanic inspect the thermostat to determine if it is functioning correctly. If necessary, replace it.
  3. Test the coolant temperature sensor: The sensor can be tested using a multimeter or a scan tool. If it is faulty, replace it.
  4. Check the radiator fan: Make sure the radiator fan is working properly. If it is not, have it repaired or replaced.
  5. Reset the trouble code: After addressing the underlying issue, reset the trouble code using an OBD-II scanner or by disconnecting the battery for a few minutes.

Conclusion

The P0128 code in a Subaru indicates a problem with the coolant temperature not reaching the expected operating temperature within a specified time. It can be caused by issues such as a faulty thermostat, low coolant level, malfunctioning coolant temperature sensor, radiator fan problems, or a faulty ECM. By following the steps mentioned above, you can diagnose and resolve the P0128 code, ensuring your Subaru runs smoothly and efficiently.

Remember, if you are unsure about diagnosing or fixing the issue yourself, it is always recommended to consult a professional mechanic who has experience with Subaru vehicles.

Prev Post Next Post