OBD-II fault code

P0946: Hydraulic Pump Relay/Control Circuit Range/Performance

What it means

The hydraulic pump relay/control circuit reports a circuit range/performance condition. Pump cannot be commanded reliably.

At a glance

  • Usually lights the check-engine light
  • The engine or gearbox may go into limp mode

How it works

The hydraulic pump relay control circuit carries the TCM's command to operate the pump relay. P0946 sets when the circuit's response falls outside the expected range or performance, which can happen with aged relay contacts or a high-resistance connection.

Common causes

Most likely first.

  1. Relay contacts aged
  2. High-resistance contact
  3. Sensor element aged beyond calibration window

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 check for related pump or relay codes to establish when the circuit response became abnormal.
  2. Inspect the relay, socket, and connectors for corrosion, loose terminals, or signs of heat that could increase resistance.
  3. Check the control wire and its connections for damage, then measure circuit resistance and voltage drop during a pump command using the manufacturer's specification.
  4. Test the relay's switching response and contacts under the conditions specified by the manufacturer.
  5. If the relay and wiring pass, check the module's control signal and connector for an out-of-range response.

Common fixes

  • Clean or repair corroded relay socket terminals and restore a secure connection.
  • Repair a high-resistance or damaged section of control wiring.
  • Replace a relay with worn or inconsistent contacts.
  • Repair the module connection or output if testing locates the performance fault there.

Can I keep driving?

Drive only if the transmission shifts normally, and avoid towing or heavy acceleration because a weak relay circuit can interrupt pump operation. Stop if shifting becomes harsh, delayed, or unreliable.

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

Nearby codes