Home OBDII DTC Doctor P0387 Code: Crankshaft Position Sensor “B” Circuit Low Input

P0387 Code: Crankshaft Position Sensor “B” Circuit Low Input

The P0387 OBD-II trouble code means the powertrain control module has detected voltage below the expected range in the Crankshaft Position Sensor “B” circuit.

On a Hall-effect sensor, the signal may remain stuck near ground instead of switching between its normal high and low states. On a magnetic or variable-reluctance sensor, the generated waveform may be too weak for the PCM to recognize reliably.

A failed crankshaft sensor can cause P0387, but it is not the only possibility. A signal wire shorted to ground, missing sensor power, poor ground, excessive sensor air gap, slow cranking speed or a damaged reluctor wheel can all produce a low-input condition.

Also, Sensor B does not automatically mean Bank 2. It refers to the manufacturer-designated secondary crankshaft-position input. The wiring diagram gets the final vote, regardless of what a parts-catalog thumbnail appears to suggest.

P0387 Quick Reference

ItemDetails
Trouble codeP0387
Code definitionCrankshaft Position Sensor “B” Circuit Low Input
System affectedEngine-position, ignition and fuel-injection control
Fault typeSensor B signal voltage below the expected range
Common causesSignal shorted to ground, missing power, weak sensor, excessive air gap or slow cranking
Common symptomsCheck Engine Light, hard starting, stalling, rough running, no-start condition or reduced power
Typical severityModerate to severe
Safe to drive?Not recommended if the engine stalls or becomes difficult to start
Repair difficultyIntermediate to advanced electrical diagnosis

What Does the P0387 Code Mean?

P0387 indicates that the PCM has detected an abnormally low electrical signal from Crankshaft Position Sensor B.

The PCM relies on crankshaft-position information to calculate:

  • Engine RPM
  • Crankshaft angle
  • Piston position
  • Ignition timing
  • Fuel-injection timing
  • Camshaft synchronization
  • Misfire activity
  • Engine starting sequence

The specific meaning of “low” depends on the sensor design.

A Hall-effect sensor normally switches its signal between defined high and low voltage levels. If the signal remains near zero volts or never reaches its expected high state, the PCM may store P0387.

A magnetic sensor generates an alternating-current waveform. If its output amplitude remains too low during cranking or engine operation, the PCM may be unable to distinguish the reluctor pulses and set the same code.

P0387 therefore describes the electrical condition detected by the PCM. It does not prove which component caused it.

What Is Crankshaft Position Sensor B?

Crankshaft Position Sensor B is the secondary crankshaft-position input identified by the vehicle manufacturer.

Vehicles may use a second crankshaft sensor for:

  • Signal redundancy
  • Improved crankshaft-position resolution
  • Faster starting synchronization
  • Misfire detection
  • Separate low-speed and high-speed monitoring
  • Comparison with another engine-position signal
  • Fail-safe operation

Sensor B may be installed near the:

  • Crankshaft pulley
  • Timing cover
  • Engine block
  • Flywheel
  • Flexplate
  • Transmission bellhousing
  • Rear main-seal area
  • Internal crankshaft reluctor wheel

Sensor B does not universally indicate Bank 2, the rear sensor or the passenger-side sensor. Confirm the component location and circuit designation using manufacturer service information.

How the Crankshaft-Position Circuit Works

The crankshaft-position sensor reads a toothed, slotted or magnetized trigger wheel attached to the crankshaft, flywheel or flexplate.

As the engine rotates, the sensor generates an electrical pulse each time a reluctor tooth or magnetic segment passes its sensing element. A missing tooth or special reference gap helps the PCM determine exact crankshaft position.

Two common sensor types are used.

Hall-Effect Sensor

A Hall-effect crankshaft-position sensor normally uses three circuits:

  • Power or reference voltage
  • Sensor ground
  • Signal output

The signal switches between a specified high and low state as the crankshaft rotates.

A P0387 condition may occur if:

  • Reference voltage is missing
  • The signal wire is shorted to ground
  • The sensor ground is incorrect
  • The sensor cannot switch the signal high
  • The PCM input pulls the signal low
  • The reluctor does not trigger the sensing element

Magnetic or Variable-Reluctance Sensor

A magnetic sensor commonly uses two wires and generates its own alternating-current voltage.

Its output depends on:

  • Engine speed
  • Sensor air gap
  • Reluctor condition
  • Sensor magnet strength
  • Circuit resistance
  • Temperature

A magnetic sensor may generate a usable waveform at higher RPM but fall below the PCM’s threshold during cranking.

Symptoms of a P0387 Code

Possible symptoms include:

  • Illuminated Check Engine Light
  • Extended cranking
  • Hard starting
  • Engine cranks but does not start
  • Intermittent stalling
  • Engine stalls when warm
  • Rough idle
  • Engine hesitation
  • Reduced power
  • Poor throttle response
  • Misfire-like operation
  • Tachometer dropping toward zero
  • Unstable engine-speed data
  • Limp-home mode
  • Engine that restarts after cooling
  • No obvious driveability symptoms

The symptoms depend on whether the PCM can continue operating from Crankshaft Position Sensor A or another substitute signal.

If the engine turns over normally but will not run, use the broader engine cranks but won’t start diagnostic guide to check spark, fuel delivery, injector operation and engine-position data.

If the failure appears primarily after the engine reaches operating temperature, review why an engine stalls when warm.

Common Causes of P0387

Potential causes include:

  1. Signal Wire Shorted to GroundDamaged insulation can allow the Sensor B signal circuit to contact the engine, chassis or another ground circuit.
  2. Failed Crankshaft Position Sensor BInternal electronics or windings may fail and produce little or no signal voltage.
  3. Missing Sensor Reference VoltageA Hall-effect sensor cannot switch properly without its required power supply.
  4. Poor Sensor GroundCorrosion, loose terminals or excessive resistance may prevent proper sensor operation.
  5. Open Sensor Power CircuitA broken wire between the PCM and Hall-effect sensor can cause the signal to remain low.
  6. Open Magnetic-Sensor CircuitA broken winding or open wire may prevent a magnetic pickup from generating a usable waveform.
  7. High Resistance in the Signal CircuitCorroded terminals, poor splices or damaged wiring can weaken the signal before it reaches the PCM.
  8. Excessive Sensor Air GapToo much space between a magnetic sensor and reluctor wheel can reduce output amplitude.
  9. Metal Debris on the Sensor TipMetallic contamination can interfere with a magnetic sensor’s ability to detect individual reluctor teeth.
  10. Damaged Reluctor WheelMissing, bent, cracked or corroded teeth can reduce or eliminate the expected pulses.
  11. Bent Flywheel or FlexplateRunout may increase the sensor air gap during part of each crankshaft revolution.
  12. Low Battery VoltageLow voltage may reduce PCM operation and slow the starter.
  13. Slow Cranking SpeedA magnetic sensor may not generate enough voltage if the starter turns the engine too slowly.
  14. Incorrect Replacement SensorA sensor with the wrong depth or electrical characteristics may produce insufficient output.
  15. Poor PCM Power or GroundAn unstable PCM ground can change the module’s interpretation of sensor voltage.
  16. Failed PCM Input CircuitAn internal PCM fault may pull the signal low, although this is less common.

How Serious Is the P0387 Code?

P0387 is a moderate-to-severe fault because inaccurate crankshaft-position data can interrupt ignition and fuel-injection control.

A vehicle may continue operating if another crankshaft-position input remains available. However, the engine may also:

  • Stall unexpectedly
  • Become difficult to start
  • Enter reduced-power mode
  • Lose accurate RPM information
  • Misfire
  • Refuse to restart

Diagnose P0387 promptly when stalling or starting problems occur. An engine-position signal that works most of the time is still an engine-position signal preparing to ruin a more inconvenient part of your day.

P0385 vs. P0386 vs. P0387

These codes affect the same Sensor B system but describe different diagnostic conditions.

CodeDefinitionPrimary diagnostic focus
P0385Sensor B Circuit MalfunctionGeneral electrical failure or missing signal
P0386Sensor B Circuit Range/PerformanceSignal exists but its amplitude, timing or pulse pattern is implausible
P0387Sensor B Circuit Low InputSignal voltage remains below the expected threshold

P0387 narrows the diagnosis toward a low-voltage condition. That makes shorts to ground, missing sensor power, weak magnetic output and low signal amplitude particularly important.

P0387 vs. P0337

P0337 is the corresponding low-input code for Crankshaft Position Sensor A.

CodeSensorFault
P0337Crankshaft Position Sensor ACircuit low input
P0387Crankshaft Position Sensor BCircuit low input

Do not confuse the two sensors. Their locations, connector pinouts and signal patterns may differ even when both use the same basic sensing technology.

P0387 vs. P0388

P0387 and P0388 identify opposite voltage conditions.

CodeElectrical conditionCommon diagnostic direction
P0387Signal voltage too lowShort to ground, missing power, weak output or excessive air gap
P0388Signal voltage too highShort to voltage, open ground or signal stuck high

This page should remain focused on the low-input side of that pair.

How to Diagnose the P0387 Code

Diagnosing P0387 requires identifying the sensor type before interpreting voltage readings. A Hall-effect signal stuck at zero and a magnetic waveform with insufficient amplitude are both low-input conditions, but they require different tests.

1. Confirm P0387

Connect a capable OBD-II scan tool and record:

  • P0387
  • Current, pending and history codes
  • Freeze-frame information
  • Engine RPM
  • Battery voltage
  • Coolant temperature
  • Vehicle speed
  • Crankshaft synchronization
  • Camshaft synchronization
  • Sensor A and Sensor B data, when supported

Do not erase the code until the freeze-frame data has been recorded.

Note whether the failure occurred:

  • During cranking
  • Immediately after startup
  • At idle
  • Under acceleration
  • At highway speed
  • After the engine became hot

2. Check for Related Codes

Look for codes involving:

  • Crankshaft Position Sensor A
  • Crankshaft Position Sensor B
  • Camshaft-position sensors
  • Crankshaft-to-camshaft correlation
  • Five-volt reference circuits
  • System voltage
  • PCM power or ground
  • Engine-speed input
  • Misfires

Multiple sensors with low-input codes may share a reference-voltage or ground problem.

3. Verify the Symptoms

Crank or run the engine while monitoring:

  • Scan-tool RPM
  • Sensor B status
  • Synchronization
  • Misfire data
  • Battery voltage

A zero-RPM reading during cranking may indicate that the PCM cannot see a usable crankshaft signal. However, some vehicles may still display RPM from Sensor A while Sensor B remains low.

Watch for Sensor B returning briefly when:

  • The harness is moved
  • The engine cools
  • Battery voltage increases
  • Engine speed rises
  • Electrical loads are removed

4. Identify Sensor B and Its Circuit Type

Use the factory wiring diagram to determine:

  • Sensor B location
  • Hall-effect or magnetic design
  • Connector pinout
  • Sensor power specification
  • Sensor ground
  • Signal-circuit bias voltage
  • Expected waveform
  • Specified air gap
  • PCM terminal locations

Do not begin electrical testing using a generic crank-sensor pinout. Connecting battery voltage to a five-volt signal circuit is an extremely efficient way to transform one fault code into several.

5. Inspect the Sensor and Wiring

Switch the ignition off and inspect:

  • Sensor connector
  • Harness routing
  • Signal-wire insulation
  • Sensor power and ground circuits
  • Engine and PCM grounds
  • Terminals for corrosion or looseness
  • Wiring near the starter and exhaust
  • Harness contact with brackets or pulleys
  • Oil or water intrusion
  • Prior wiring repairs
  • Aftermarket remote-start or engine-management wiring

Pay particular attention to areas where the harness can rub against the engine or transmission.

6. Check Battery and Cranking Voltage

Measure:

  • Battery voltage with the engine off
  • Minimum voltage during cranking
  • Starter current draw
  • Cranking speed
  • Charging voltage with the engine running

A low battery or failing starter can reduce the output of a magnetic sensor by slowing the crankshaft.

Correct battery, cable, ground or starter problems before condemning Sensor B.

7. Test Hall-Effect Sensor Power

If Sensor B is a Hall-effect design, switch the ignition on and verify its supply voltage.

Depending on the design, the sensor may use:

  • Five-volt reference
  • Eight-volt supply
  • Twelve-volt supply
  • Another manufacturer-specified voltage

If supply voltage is missing:

  1. Disconnect the sensor.
  2. Recheck the supply circuit.
  3. Inspect for a short to ground.
  4. Check whether other sensors share the same supply.
  5. Test continuity between the PCM and sensor.
  6. Verify the PCM output only after checking its powers and grounds.

If supply voltage returns when Sensor B is disconnected, the sensor may be internally shorted. A different sensor on the shared circuit could also be pulling the reference voltage down.

8. Test Sensor Ground

Back-probe the ground circuit and perform a voltage-drop test while the sensor is operating.

A continuity test may show a connection even when corrosion creates too much resistance under load.

Compare the ground voltage with manufacturer specifications. Repair loose grounds, corroded splices or damaged terminals before replacing the sensor.

9. Measure the Hall-Effect Signal

Back-probe the signal circuit using a high-impedance digital multimeter or oscilloscope.

During cranking, the signal should switch between its specified high and low states.

A P0387 waveform may show:

  • Signal continuously near zero volts
  • High state that never reaches specification
  • Low-amplitude switching
  • Brief pulses that collapse under load
  • Voltage recovering when the sensor is disconnected

If the signal is stuck low, isolate the circuit by disconnecting the sensor and PCM according to the service procedure.

Possible findings include:

  • Signal remains grounded with both modules disconnected: wiring short to ground
  • Signal rises when the sensor is disconnected: internally shorted sensor
  • Signal reaches the PCM correctly but scan data remains low: PCM input or interpretation problem

Circuit behavior varies when internal pull-up resistors are used, so compare every result with the wiring diagram.

10. Test a Magnetic Sensor

For a two-wire magnetic Sensor B:

  • Check resistance only when a specification is provided
  • Check for an open winding
  • Check both circuits for shorts to ground
  • Measure AC voltage during cranking
  • Compare output with Sensor A
  • Repeat testing when the sensor is hot

A low-amplitude waveform may result from:

  • Weak sensor magnet
  • Excessive air gap
  • Low cranking speed
  • Reluctor damage
  • Metal contamination
  • High circuit resistance

Do not use the Hall-effect sensor’s voltage expectations on a magnetic pickup.

11. Inspect the Signal With an Oscilloscope

An oscilloscope provides the clearest evidence.

For a Hall-effect sensor, inspect:

  • High-state voltage
  • Low-state voltage
  • Switching speed
  • Pulse width
  • Signal stability

For a magnetic sensor, inspect:

  • Peak-to-peak amplitude
  • Waveform symmetry
  • Pulse spacing
  • Reference gap
  • Signal strength during cranking
  • Amplitude changes with RPM

Compare Sensor B with Sensor A when possible.

A Sensor B waveform that has the correct shape but much lower amplitude than Sensor A points toward air-gap, sensor or circuit-resistance problems.

12. Check for a Short to Ground

Disconnect the PCM and sensor using the manufacturer-approved procedure.

Test the Signal B circuit for:

  • Continuity to ground
  • Continuity to other low-reference circuits
  • Pinched wiring
  • Insulation damage
  • Moisture inside connectors
  • Intermittent shorts during a harness wiggle test

Do not perform resistance testing on a powered circuit.

13. Compare the Signal at the Sensor and PCM

Capture the waveform directly at Sensor B, then repeat the measurement at the PCM connector.

If the signal is normal at the sensor but weak at the PCM, inspect for:

  • High circuit resistance
  • Corroded splices
  • Loose terminals
  • Damaged shielding
  • Partial short to ground
  • Incorrect previous repairs

A voltage-drop or loaded-circuit test may reveal resistance that a basic continuity check misses.

14. Check Sensor Air Gap

Inspect and measure the distance between the sensor and reluctor wheel where possible.

Excessive clearance can result from:

  • Debris beneath the mounting flange
  • Improper sensor installation
  • Incorrect spacer
  • Wrong replacement sensor
  • Bent mounting bracket
  • Crankshaft end play
  • Flexplate runout
  • Shifted reluctor ring

Follow the manufacturer’s specification. Moving the sensor closer than specified is not a clever fix if the reluctor can strike it.

15. Inspect the Reluctor Wheel

Check for:

  • Missing teeth
  • Bent teeth
  • Cracks
  • Rust
  • Metal debris
  • A shifted trigger ring
  • Bent flywheel or flexplate
  • Excessive runout

Internal reluctors may require waveform analysis or a borescope before major disassembly.

16. Test for Heat-Related Failure

If P0387 occurs when the engine is hot:

  • Monitor the Sensor B waveform during warm-up
  • Move the harness carefully
  • Apply controlled heat according to service procedures
  • Allow the sensor to cool and retest
  • Compare hot and cold resistance only when applicable

An internal sensor winding or electronic component may fail as temperature rises and recover after cooling.

17. Check the PCM Last

Consider PCM failure only after confirming:

  • Correct Sensor B identification
  • Proper sensor power and ground
  • No signal short to ground
  • Correct sensor installation
  • Proper air gap
  • Good reluctor condition
  • Adequate battery and cranking speed
  • A low signal present at the PCM connector
  • No applicable software update or technical service bulletin

PCM replacement may require programming, security initialization and crankshaft-position variation relearn.

Common P0387 Diagnostic Mistakes

Avoid these common mistakes:

  • Assuming Sensor B means Bank 2
  • Replacing Sensor A instead of Sensor B
  • Replacing the sensor without checking for a short to ground
  • Ignoring missing reference voltage
  • Using Hall-effect tests on a magnetic sensor
  • Using resistance alone to approve a magnetic sensor
  • Ignoring low cranking speed
  • Overlooking excessive air gap
  • Failing to compare the waveform at the sensor and PCM
  • Using a conventional test light on a PCM signal circuit
  • Probing connectors with oversized test leads
  • Moving the sensor dangerously close to the reluctor
  • Replacing the PCM before isolating the harness

A conventional incandescent test light can draw enough current to damage a low-current reference or PCM input circuit. Use a high-impedance meter, oscilloscope or manufacturer-approved test tool.

Repairs That May Fix P0387

Possible repairs include:

  • Replacing Crankshaft Position Sensor B
  • Repairing a signal wire shorted to ground
  • Restoring missing sensor reference voltage
  • Repairing an open sensor-power circuit
  • Repairing a poor sensor ground
  • Cleaning or replacing corroded terminals
  • Replacing a damaged sensor connector
  • Repairing high resistance in the signal circuit
  • Correcting sensor air gap
  • Cleaning metal debris from the sensor tip
  • Installing the correct replacement sensor
  • Repairing battery cables or engine grounds
  • Replacing a weak battery
  • Replacing a failing starter
  • Repairing or replacing a damaged reluctor wheel
  • Replacing a bent flexplate
  • Correcting excessive crankshaft end play
  • Updating PCM software
  • Replacing and programming the PCM after confirmed failure

Estimated P0387 Repair Costs

Actual pricing depends on the vehicle and sensor location.

RepairEstimated cost
Diagnostic inspection$100–$250
Connector or minor wiring repair$100–$350
Crankshaft Position Sensor B replacement$180–$650
Battery or cable repair$150–$600
Starter replacement$350–$900
Major harness repair$300–$1,000
Reluctor-wheel or flexplate repair$700–$2,500
PCM software update$100–$300
PCM replacement and programming$800–$2,500

An accessible sensor can be inexpensive to replace. A Sensor B hidden between the engine and transmission can require considerably more labor, because convenient service access apparently remains an optional feature.

Can You Drive With P0387?

Driving with P0387 is not recommended if the engine stalls, loses power or becomes difficult to start.

The vehicle may continue running if the PCM can rely on Sensor A, but the remaining symptoms can worsen without warning.

Stop driving if:

  • The engine stalls
  • The tachometer suddenly falls
  • Starting becomes unreliable
  • The Check Engine Light flashes
  • The engine enters reduced-power mode
  • Multiple timing or misfire codes appear
  • Wiring becomes hot or damaged

Review what the Check Engine Light means for additional warning-light guidance.

How to Verify the Repair

After completing the repair:

  1. Reconnect all sensors and modules.
  2. Secure the harness away from heat and moving parts.
  3. Confirm proper terminal engagement.
  4. Clear current and pending trouble codes.
  5. Monitor engine RPM during cranking.
  6. Verify Sensor B power and ground.
  7. Confirm that the Sensor B signal reaches its proper high and low states.
  8. Compare Sensor A and Sensor B waveforms.
  9. Warm the engine fully.
  10. Recreate the original freeze-frame conditions.
  11. Complete the required drive cycle.
  12. Perform a crankshaft-position relearn if specified.
  13. Recheck for pending codes.

The repair is confirmed when the Sensor B waveform remains above the required threshold and P0387 does not return.

Frequently Asked Questions

What does the P0387 code mean?

P0387 means the PCM detected voltage below the expected range in the Crankshaft Position Sensor B circuit.

Does P0387 mean Crankshaft Position Sensor B is bad?

Not necessarily. A failed sensor can cause P0387, but wiring shorts, missing power, poor ground, excessive air gap and slow cranking can produce the same code.

Is Crankshaft Position Sensor B located on Bank 2?

Not necessarily. Sensor B identifies a manufacturer-designated secondary crankshaft-position input and does not universally correspond to Bank 2.

What is the difference between P0385 and P0387?

P0385 identifies a general Sensor B circuit malfunction. P0387 specifically identifies a Sensor B signal below the expected voltage range.

What is the difference between P0386 and P0387?

P0386 indicates implausible signal performance. P0387 means the signal voltage remains below the PCM’s expected threshold.

Can P0387 cause a no-start condition?

Yes. The engine may not start if the PCM cannot determine crankshaft position accurately enough to control spark and fuel injection.

Can a weak battery cause P0387?

Yes, particularly with a magnetic sensor. Low battery voltage can reduce cranking speed and sensor output amplitude.

Can excessive sensor air gap cause P0387?

Yes. Excessive clearance can weaken a magnetic sensor’s signal below the PCM’s recognition threshold.

How do you test for P0387?

Identify the sensor design, verify its power and ground, check for a signal short to ground and inspect the waveform with an oscilloscope.

Can I test Sensor B with a test light?

Not unless the manufacturer specifically approves it. A conventional test light may overload a PCM signal or reference circuit.

Final Thoughts

P0387 means the Crankshaft Position Sensor B signal is electrically lower than the PCM expects. The fault may involve the sensor, but the diagnosis should concentrate on the entire low-voltage path.

Verify battery condition and cranking speed first. Then identify the sensor type, check its power and ground, test the signal circuit for a short to ground and inspect the waveform at both the sensor and PCM.

That process will distinguish a failed sensor from missing reference voltage, excessive air gap, damaged wiring and reluctor problems without turning a low-input code into a high-cost guessing exercise.

Visit the OBD-II Doctor for more diagnostic guides or browse the complete P-series OBD-II code reference to identify related powertrain faults.