OBD-II fault code

P0977: Shift Solenoid B Control Circuit High

What it means

The control module detects a high electrical level in the shift solenoid B control circuit.

At a glance

  • Usually lights the check-engine light

How it works

Shift solenoid B is an electrically controlled valve that directs fluid for transmission gear changes. The control module monitors the B control circuit and sets P0977 when its electrical level is higher than expected. A short to battery power, including a pinched supply wire touching a B+ source, can hold the circuit high.

Common causes

Most likely first.

  1. Short to battery
  2. Connector pins corroded - high contact resistance
  3. Supply wire pinched against B+ source

Symptoms

  • Check engine or transmission warning light on
  • Harsh, delayed, or missing shifts
  • Possible limp mode (locked in one gear)
  • Slipping or shuddering during gear changes

How to diagnose it

  1. Save freeze-frame data and examine live transmission data to establish when the solenoid B circuit went high.
  2. Inspect the B circuit harness for a pinched supply wire or damaged insulation touching a battery-positive source.
  3. Check the solenoid B connector for corrosion, loose or spread pins, and signs of incorrect contact.
  4. Use the wiring diagram to test the B control circuit for a short to battery voltage and locate any damaged section.
  5. Test solenoid B and its circuit against the manufacturer’s specification before replacing parts.
  6. Check the transmission control module only after confirming the circuit is not shorted and solenoid B passes its tests.

Common fixes

  • Repair wiring that is pinched or shorted to a battery-positive source in the solenoid B circuit.
  • Repair corroded, loose, or damaged solenoid B connector terminals.
  • Replace shift solenoid B if it fails the specified test.
  • Repair or replace the transmission control module if testing verifies an internal fault.

Can I keep driving?

If the transmission shifts harshly, slips, or delays engagement, avoid high loads and long trips, and stop if drive becomes unreliable. A B circuit held high can interfere with shifts, and continued abnormal operation can worsen transmission wear.

A code shows where the control module detected a fault, not always which part failed. Check the causes in order and confirm with a test before replacing parts. Have several codes? Check them together

This is a generic code: it means the same on every make. The car’s maker may add more detail in its own service information.

Codes for the same component