P0338

P0338: Crankshaft Position Sensor "A" Circuit High

Quick answer: P0338 means the engine computer has detected a "circuit high" fault on the crankshaft position (CKP) sensor.

Driving: A crank sensor fault can stop the engine while driving. Have it repaired before relying on the vehicle.

Read P0338 on your phone OBDAssistant reads codes and live data through a Bluetooth OBD2 adapter.

What P0338 means

P means powertrain (engine and transmission). The 0 marks a generic code defined by SAE, so the same number means the same thing across makes. The third character, 3, places it in the ignition system or misfire subsystem; the last two digits identify the specific fault.

The crankshaft position sensor reads a toothed reluctor wheel on the crankshaft and tells the engine computer engine speed and piston position. It is essential: without it, most engines will not run. The same signal also feeds the misfire monitor.

The letter "A" distinguishes between two or more of the same component on one vehicle. Which physical part is "A" is set by the manufacturer, so confirm it in the service information before replacing anything.

What “Circuit High” means here

"High" means the signal or control voltage rose above the maximum the module expects. On a three-wire sensor fed by a 5 V reference, typical causes are a signal wire shorted to the reference or to battery voltage, an open sensor ground, or a failed sensor.

What you may notice

Symptoms depend on the vehicle and on how the module responds to the fault. Any of these can accompany P0338:

  • Engine cranks but will not start
  • Stalling, often when hot
  • Tachometer dropping out
  • Misfire or hesitation

Where to start diagnosing P0338

  1. Inspect the connector and harness; heat and oil contamination are common.
  2. Check the reluctor wheel and the sensor tip for damage or debris.
  3. Watch engine RPM in live data while cranking; no RPM reading while cranking points strongly at this circuit.
  4. On "variation not learned" codes, the manufacturer's crank relearn procedure is usually required after parts replacement.

Clear the code only after recording freeze frame data: it shows the engine speed, load and temperature at the moment the fault set, which is often the best clue to reproducing it.

Live data to watch

These standard OBD2 values relate to P0338. Support varies by vehicle; a value your car does not report will simply be missing.

ValueWhat to look for
Engine RPM (PID 0x0C)Should be present during cranking and steady at idle.

Related codes

Codes from the same crankshaft position (CKP) sensor family. If several are stored together, the shared part — wiring, a common reference voltage, or the component itself — is the place to start.

CodeDefinition
P0315Crankshaft Position System Variation Not Learned
P0335Crankshaft Position Sensor A Circuit Malfunction
P0336Crankshaft Position Sensor "A" Circuit Range/Performance
P0337Crankshaft Position Sensor "A" Circuit Low
P0339Crankshaft Position Sensor "A" Circuit Intermittent/Erratic
P0385Crankshaft Position Sensor "B" Circuit
P0386Crankshaft Position Sensor "B" Circuit Range/Performance
P0387Crankshaft Position Sensor "B" Circuit Low

Further reading

Frequently Asked Questions

What does P0338 mean?

P0338 is the generic SAE J2012 code for "Crankshaft Position Sensor "A" Circuit High". In plain terms, it means the engine computer has detected a "circuit high" fault on the crankshaft position (CKP) sensor.

Can I keep driving with P0338?

A crank sensor fault can stop the engine while driving. Have it repaired before relying on the vehicle.

What should I check first for P0338?

Inspect the connector and harness; heat and oil contamination are common.

Definition source: SAE J2012 / ISO 15031-6 generic DTC definitions. This is the generic meaning that applies across makes; a manufacturer can define a code more narrowly or add its own sub-codes, so confirm against the service information for your vehicle before replacing parts. Written by the OBDAssistant engineering team — see our editorial policy.