01 Why Engine Capacity Matters When Shopping For A New Car • 02 GM's Oshawa Plant Gets a C$280M Boost for Next-Gen HD Picku… • 03 Maximize Fuel Efficiency: A Comprehensive Guide to Selectin… • 04 How to Convert an Automatic Transmission to Manual (Pros an… • 05 Why Aren’t the Rear Tires on Cars Made to Turn Like the Fro… • 06 How to Troubleshoot and Repair Common Powertrain DTC Codes … • 07 Why Your Car Revs High But Doesn’t Go Fast • 08 Turbochargers and Superchargers: Boosting Performance with … • 09 Why Does Your Car Make Noise Even After You Turning It Off? • 10 Squealing Engine? Don't Panic! It Might Just Be Your Serpen… •

DTC codes / BMW codes / P1504

P1504 · BMWIdle Speed Control Valve Closing Solenoid Control Open Circuit

P1504 on BMW vehicles means the engine control module (DME) has detected an open circuit in the control wire for the closing solenoid of the idle speed control valve. The DME commands the valve to close during certain operating conditions, but the electrical feedback indicates no current can flow through that solenoid circuit.

SystemPowertrain
Code typeBMW specific
SeverityMedium
Fix difficultyIntermediate
AreaVehicle speed, idle control and auxiliary inputs

Symptoms you may notice

  • The check engine light illuminates, often with no other noticeable symptoms.
  • Rough or erratic idle, sometimes surging or dipping when the engine is cold or when electrical loads are applied.
  • The engine may stall when coming to a stop or when the throttle is released suddenly.
  • A slightly higher or lower than normal idle speed that does not respond to load changes.
  • In some cases, a fault code memory entry without any driveability complaint at all.

Common causes, most likely first

  1. Broken or chafed wire in the closing solenoid control circuit, often near the valve connector or where the harness bends.
  2. Corroded or loose electrical connector at the idle speed control valve, causing high resistance or an intermittent open.
  3. Failed closing solenoid inside the idle speed control valve, with an open winding.
  4. Damaged or oxidized pins in the DME connector for that control circuit.
  5. A short to ground or short to power in the control wire that mimics an open circuit under certain conditions.
  6. Internal driver failure in the DME, though this is rare compared to wiring and valve faults.

How to diagnose and fix it

  1. Clear the fault code and road test to see if P1504 returns; note any freeze-frame data to understand the conditions when it set.
  2. Visually inspect the idle speed control valve connector and the harness section leading to it for corrosion, chafing, or loose pins.
  3. Measure the resistance of the closing solenoid at the valve connector and compare with the manufacturer's specification to rule out an open winding.
  4. Check for continuity and short-to-ground on the control wire between the DME connector and the valve connector, wiggle-testing the harness while measuring.
  5. If wiring and valve resistance check out, substitute a known-good idle speed control valve and recheck for the fault.
  6. Inspect and clean the DME connector pins for the affected circuit, looking for pushed-back or oxidized terminals.
  7. As a last step, verify the DME driver output with an oscilloscope or a bidirectional scan tool before condemning the control module.

What the open circuit really means on a BMW

  • A common mistake is replacing the idle speed control valve without checking the harness first; a chafed wire near the intake manifold often causes this code and costs far less to repair.
  • The closing solenoid is only one half of the idle speed control valve, so a valve that physically moves freely can still set P1504 if the closing winding is open.
  • Intermittent open circuits from vibration or heat can set P1504 only under specific conditions, so a simple resistance check at room temperature may pass while the fault is still present.
  • BMW idle speed control valves on older models can accumulate carbon and stick, but sticking alone does not set an open-circuit code; the DME must see an electrical open, so do not confuse mechanical binding with this fault.
  • A weak battery or poor engine ground can cause the DME to log phantom circuit codes, so verify charging system and ground integrity before deep circuit testing.

Can I keep driving with P1504?

You can usually drive the car with P1504 stored, but avoid situations that demand a stable idle, such as heavy stop-and-go traffic or prolonged idling with accessories on, because the engine may stall or idle poorly. If the car stalls repeatedly or the idle becomes unsafe, stop driving and have the circuit inspected.

Guidance is general and written for BMW vehicles. Exact tests and values vary by model, so confirm the fault before replacing parts.

Running on fumes Free guides aren't free to make. Top up the tank. Any amount, one time. Fuel the Garage