
What this code means
P0138 often means the engine control module may be seeing the heated oxygen sensor signal voltage higher than expected for that sensor circuit.
What the vehicle may do
- The vehicle may turn on the check engine light.
- The engine may run normally in some cases.
- Fuel-control behavior may be affected depending on when the fault occurs.
Possible fault areas
- A possible issue in the heated oxygen sensor signal circuit.
- A possible connector or water-intrusion concern at the sensor harness.
- A possible engine control module signal-processing concern.
- Possible fuel, exhaust, or vacuum conditions that can influence oxygen sensor readings.
Diagnostic path
Opening and diagnostic frame
On this 2014 to 2018 GMC Sierra 1500 with the 5.3 gas engine, P0138 is a high-voltage signal fault for the heated oxygen sensor at Bank 1 Sensor 2. In plain terms, the engine control module may be seeing that oxygen sensor signal higher than expected. The truck may run normally, or it may show drivability or fuel-control symptoms depending on when the fault occurs. The possible areas are the sensor signal circuits, the sensor connector, the engine control module’s signal handling, and broader fuel, exhaust, or vacuum conditions that can influence the reading.
Sensor signal behavior and scan data frame
Before chasing the fault, keep the signal behavior straight. This heated oxygen sensor begins to generate a voltage within a range of 0–1,000 mV. As HO2S voltage increases toward 1,000 mV, that indicates a rich fuel mixture; as it decreases toward 0 mV, that indicates a lean fuel mixture. Typical scan tool data shows a normal parameter range of 200–800 mV. A high signal short to ground can show HO2S High Signal 0.00 V, while an open or short-to-voltage type condition can put HO2S High Signal in the 1.7–2.1 V area. That is why this diagnosis separates scan data, high signal circuit checks, and low signal circuit checks instead of guessing at the sensor first.
Monitor logic and setting condition
For this high-voltage fault, treat the running conditions as monitor gates, not as the repair. Ignition voltage needs to be between 10–32 V, fuel level has to be greater than 10%, ethanol content has to be less than 87%, and engine run time has to be greater than 5 s. Once the high-voltage gates are met, this monitor runs continuously for 3 s. P0138 is set when the engine control module sees HO2S voltage greater than 1,050 mV, and the code can set within 13 s when that condition is present. For contrast, the low-voltage side of this same signal family runs continuously when its gates are met for 2 s, uses HO2S voltage less than 50 mV as the low-side setting condition, and can set within 6 s. Here, though, the diagnostic path is focused on the high-voltage result.
Initial checks before circuit testing
Start with the basic system checks before using this P0138 path. Then follow a structured diagnostic approach, and make sure you understand how each diagnostic category is being used so you do not jump ahead and condemn a part too early. With the ignition on, first make sure there are no heated oxygen sensor heater codes set. If a heater code is present, check what that heater fault means first. If there are no heater codes, run the engine and watch the applicable HO2S scan data for this sensor. The parameter should be between 50–1,050 mV. If it is outside that range, move into circuit testing. If it is inside that range, reproduce the operating conditions, or the captured conditions from the fault event, and confirm whether P0138 resets. If it resets, continue into circuit testing. If it does not reset, the check is OK at that time.
High signal circuit test
For circuit testing, turn the ignition off, let all vehicle systems power down, and disconnect the B52 heated oxygen sensor harness connector for the affected sensor. Power-down can take up to 2 minutes. Then turn the ignition on and test between high signal circuit terminal 4 and ground. The expected voltage is 1.7–3.0 V. If the reading is less than 1.7 V, turn the ignition off, disconnect the K20 engine control module connector, and test the high signal circuit to ground for infinite resistance. If resistance is less than infinite, repair the short to ground on that circuit and replace the fuse. If resistance is infinite, test the high signal circuit end to end for less than 2 Ω. If it is 2 Ω or greater, repair the open or high resistance in the circuit. If it is less than 2 Ω, replace the K20 engine control module.
High signal short-to-voltage branch
If the high signal circuit test shows greater than 3.0 V, turn the ignition off, disconnect the K20 engine control module connector, then turn the ignition back on. Test between the high signal circuit and ground. The expected result is less than 1 V. If the circuit shows 1 V or greater, repair the short to voltage on that circuit. If it is less than 1 V, replace the K20 engine control module.
Scan data check and low signal ground check
If the high signal circuit is in the 1.7–3.0 V range, check the scan tool parameter for the heated oxygen sensor. It should be greater than 1.7 V. If the scan data is less than 1.7 V, turn the ignition off, disconnect the K20 engine control module connector, and test between low signal circuit terminal 3 and ground for infinite resistance. If resistance is less than infinite, repair the short to ground on the low signal circuit. If resistance is infinite, replace the K20 engine control module. If the scan data is greater than 1.7 V, keep going. Also remember that the low signal is tied to a pull-up circuit inside the engine control module, so 0.0 to 1.10 V on the low signal circuit may be normal.
Fused jumper response test
Next, connect a 3 A fused jumper wire between high signal circuit terminal 4 and low signal circuit terminal 3. With that jumper in place, the HO2S scan tool parameter should display 0.0 V. If the scan data is greater than 0.0 V, turn the ignition off, disconnect the K20 engine control module connector, and test the low signal circuit end to end. The expected resistance is less than 0.5 Ω. If it is 0.5 Ω or greater, repair the open or high resistance in the circuit. If it is less than 0.5 Ω, turn the ignition on and test between low signal circuit terminal 3 and ground. The expected voltage is less than 1 V. If it is 1 V or greater, repair the short to voltage on the low signal circuit. If it is less than 1 V, replace the K20 engine control module.
When the circuit response is correct
If the fused jumper pulls the scan tool parameter to 0.0 V, the next check is for conditions that can make the oxygen sensor reading look wrong even when the basic circuit response is good. Check for water intrusion at the heated oxygen sensor connector, fuel pressure concerns, contaminated fuel, a fuel-saturated EVAP canister, exhaust leaks, and engine vacuum leaks. If any of those conditions are found, repair as necessary. If none of those conditions are present, test or replace the B52 heated oxygen sensor.
Repair verification and reset step
After the repair, verify the repair and confirm P0138 stays gone. If a heated oxygen sensor was replaced, perform the scan tool Heated Oxygen Sensor Resistance Learn Reset. The takeaway is simple: prove the heater side is not the starting problem, verify the high signal and low signal circuits in order, then only move to sensor or control-module decisions after the circuit results support it. For more diagnostic training, visit stepdiagnostics.com.
Final check
P0138 is best approached as a signal-circuit diagnosis first, with sensor and control-module decisions made only after the circuit checks support them.
For more guided automotive diagnostics, visit STEP Diagnostics.





