Site icon My Pro Street

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

P0387 indicates that the Crankshaft Position Sensor B signal voltage is below the PCM’s expected range. Diagnose its power, ground and waveform.

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:

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:

Sensor B may be installed near the:

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:

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

A P0387 condition may occur if:

Magnetic or Variable-Reluctance Sensor

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

Its output depends on:

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:

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:

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:

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

Note whether the failure occurred:

2. Check for Related Codes

Look for codes involving:

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:

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:

4. Identify Sensor B and Its Circuit Type

Use the factory wiring diagram to determine:

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:

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

6. Check Battery and Cranking Voltage

Measure:

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:

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:

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

Possible findings include:

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:

A low-amplitude waveform may result from:

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:

For a magnetic sensor, inspect:

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:

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:

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:

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:

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:

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:

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

Common P0387 Diagnostic Mistakes

Avoid these common mistakes:

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:

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:

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.

Exit mobile version