AutoLogicTools

OBD-II trouble code

P0948: Hydraulic Pump Relay Circuit High

High voltage on the pump relay circuit — a phrase that means two opposite repairs depending on which side of the coil the module switches. Establish the drive topology before touching anything.

High severityPowertrainTransmission / Pressure ControlDrivable short-term

Quick facts

System
Powertrain
Category
Transmission / Pressure Control
Severity
High severity
Drivable
Usually safe to drive short-term
Repair cost range
$90$1,600
DIY difficulty
Advanced DIY

Browse every code in P0900–P0999, or start from the full code library.

What does P0948 mean?

P0948 is the code in this family most likely to send someone the wrong way, and the reason is that 'circuit high' is not a fault description. It is a measurement. What that measurement means depends entirely on how the manufacturer chose to wire the relay coil, and the two common choices point at repairs that have nothing in common.

A relay coil has two ends. One of them must be switched by the module and the other is tied permanently to either battery positive or ground. In a low-side drive — by far the more common arrangement in automotive design — the coil is permanently fed with battery voltage and the module completes the circuit by pulling its end down to ground. In a high-side drive, the coil is permanently grounded and the module supplies power to it.

Now apply that to a voltage reading. On a low-side circuit, the module's output pin sits near battery voltage whenever the relay is off, because it is looking through the coil at the supply. It should fall close to zero when the relay is commanded on. So 'circuit high' on a low-side driver means the pin stayed up when it was commanded down, and the usual causes are an open in the coil or its wiring, a failed driver inside the module, or a relay that simply is not plugged in — the circuit cannot be pulled down because there is nothing there to pull. On a high-side circuit the logic inverts: the pin should be near zero at rest, so a high reading with the relay commanded off means voltage is arriving from somewhere it should not, which is a short to power — a chafed wire touching a live conductor, water bridging pins in a soaked connector, or an accessory installation backfeeding the circuit.

One of those is a broken connection. The other is an unwanted connection. Fitting a relay to a short-to-power fault fixes nothing, and chasing a short on an open circuit wastes an afternoon. So the first job on this code is not a measurement at all — it is a wiring diagram, or failing that, a simple bench check: unplug the relay and measure both coil socket terminals with the ignition on. If one of them has battery voltage sitting on it permanently, the circuit is low-side driven and the module switches the other. If both are near zero and one comes alive only on command, it is high-side.

The second thing worth knowing is that a permanent short to power on a low-side circuit does not just set a code — it holds the relay energised regardless of what the module wants, so the pump runs continuously and the module loses control of it. That behaviour overlaps with the welded-contact fault covered under P0946, and the two are told apart electrically: pulling the relay stops the pump in both cases, but only the short-to-power version puts battery voltage on the control terminal of the empty socket.

Finally, on the newest designs there may be no relay at all. Where a solid-state driver inside the transmission control module does the switching, an internal fault in that driver produces this code with no external wiring problem to find, and the repair is a module rather than a part. That is worth establishing early, because it is the difference between a fifteen-dollar fix and a four-figure one.

Common causes

  • Open relay coil, so a low-side driven circuit cannot be pulled down
  • Relay removed, unseated or missing from its socket
  • Open in the coil supply or control wire on a low-side circuit
  • Short to battery voltage on the control wire of a high-side circuit
  • Water in the relay box bridging a live terminal to the control terminal
  • Aftermarket wiring spliced into or backfeeding the pump circuit
  • Failed driver output inside the transmission control module
  • Corroded socket terminal that has lost contact with the relay pin
  • Damaged pin in the module connector, backed out or spread
  • Chafed harness section shorting to an adjacent power feed

Symptoms

  • Hydraulic pump not running at all when it should
  • Hydraulic pump running continuously and ignoring commands, on the short-to-power version
  • Transmission unable to build pressure or select a gear
  • Check engine light with several transmission pressure codes stored together
  • Fault appearing immediately after work in the fuse and relay box
  • Fault appearing after an accessory, alarm or audio installation
  • Complaint following heavy rain, a car wash or a flooded road
  • Battery drain if the pump is being held on by a short to power
  • Relay socket showing corrosion, green deposits or water staining
  • No pump activity at all despite a relay that tests good on the bench

Diagnostic steps

  1. 1.Establish the drive topology first — everything else depends on it. Unplug the relay, switch the ignition on, and measure both coil socket terminals.
  2. 2.A terminal sitting permanently at battery voltage with the relay out means a low-side driven coil; the module switches the other terminal to ground.
  3. 3.Both terminals near zero at rest, with one rising only when commanded, means a high-side driven coil and a high reading is a short to power.
  4. 4.On a low-side circuit, measure the relay coil resistance — an open coil is the most common single cause and takes seconds to confirm.
  5. 5.On a low-side circuit, command the relay on and watch the control terminal fall towards ground; if it stays high the driver or the wiring is open.
  6. 6.On a high-side circuit, disconnect the module and check whether voltage is still present on the control wire, which proves a short to power.
  7. 7.Inspect the relay box for water ingress, corrosion and green deposits before condemning any component.
  8. 8.Check whether the relay is actually seated, and whether it is the correct part number, particularly after recent work.
  9. 9.Trace any aftermarket wiring spliced near the transmission or engine bay fuse box.
  10. 10.If the vehicle uses a solid-state driver in the control module rather than a physical relay, confirm that before quoting, because the repair is a module with programming.

Repair cost

$90$1,600

Diagnosis is $90 to $220 and is worth paying for on this code specifically, because the same reading points at opposite repairs. A relay is $12 to $60 fitted. Repairing an open or shorted control wire is $150 to $500 depending on where the damage is. Cleaning or replacing a water-damaged relay socket or fuse box is $200 to $700. If the fault is a failed solid-state driver inside the transmission control module, replacement and programming runs $900 to $1,600 or more. Where an accessory installation caused the short, correcting that wiring is usually $120 to $350.

Estimate your repair

Run the numbers for your vehicle

Open the Repair Cost Estimator with hydraulic pump relay replacement preselected. Adjust labor rate and vehicle category to fit your situation.

DIY vs shop

This is an advanced DIY job. It typically requires specialty tools, scan-tool access, lifting equipment, or careful sequencing to avoid causing new failures. Plan for extended downtime and have a backup vehicle. Most owners are better served by a shop that has done this repair before.

Related codes

Frequently asked questions

Does 'circuit high' mean an open or a short?

Both, and which one depends on the vehicle. If the coil is fed permanently with battery voltage and the module switches its ground — a low-side drive, which is the more common design — then the control pin naturally sits high at rest and a high reading means it never came down, so you are looking for an open coil, open wiring or a failed driver. If the coil is permanently grounded and the module supplies power to it, the pin should rest near zero, so a high reading means voltage is arriving from somewhere it should not: a short to power. There is no way to tell from the code alone, which is why establishing the topology is step one.

How do I work out which type my car has without a wiring diagram?

Pull the relay and measure the two coil socket terminals with the ignition on. If one of them is sitting at battery voltage with the relay out of the socket, the coil is fed permanently and the module switches the other end to ground — low-side. If both terminals read near zero at rest and one of them comes alive only when the module commands the pump, the module is supplying the coil — high-side. It takes about a minute and it decides the entire direction of the diagnosis.

My pump runs constantly. Is that this code or P0946?

It can be either, and they are told apart at the socket. A welded relay and a short to power on a low-side control wire both leave the pump running regardless of what the module wants. Remove the relay: if the pump stops in both cases, that proves nothing on its own. Then measure the control terminal of the empty socket. Battery voltage sitting there with the pump commanded off means the wiring is feeding the coil and the relay is innocent. Nothing there means the relay you just removed was welded.

Can I keep driving with P0948?

Only in the mildest version of this fault. If the pump is still running and the car drives normally, short local journeys are reasonable while you get it booked in. But the common outcome of this code is a pump that does not run at all, and a transmission in this family cannot select or hold a gear without pump pressure — so the car may simply stop being able to move, wherever it happens to be. If the car is hesitant to engage, or if it has already dropped into limp mode once, do not take it on a long trip.

Editorial context

About This Diagnostic Information

AutoLogicTools diagnostic guides explain OBD-II trouble codes using recognized code definitions, standard automotive diagnostic principles, and practical automotive context. A trouble code records a condition detected by a control module. It does not automatically identify a failed part, and the right diagnostic procedure can vary by vehicle.

Manufacturer service information, technical service bulletins, wiring diagrams, and vehicle-specific procedures should take precedence when available.

AutoLogicTools was founded by Vincent Fisk, an automotive locksmith and shop owner in San Diego with hands-on experience in vehicle keys, immobilizer systems, electrical issues, modules, programming, and diagnostics.