Go-Parts
Cart 0
Your cart is empty
Add an item to see it appear here.
Wrenchy
Go-Parts Garage
Expert guides for diagnosing, troubleshooting, and replacing auto parts Expert guides for diagnosing and replacing auto parts
Browse All →
🎬 Helpful Videos 🛍️ Shop This Part

P0340 on 2004-2010 Toyota Prius: Camshaft Sensor Circuit Causes and Fixes

On a 2004-2010 Toyota Prius, code P0340 is most often caused by a weak or failing 12V auxiliary battery, not the camshaft sensor itself. Before buying parts, fully test the 12V battery. A low voltage condition prevents the hybrid system from starting the engine at a consistent speed, which the ECU misinterprets as a sensor fault. If the battery is healthy, the next most likely cause is a failed camshaft position sensor, which costs about $60-$120.

16 minutes to read 2004-2010 Toyota PRIUS
Most Likely Cause
Weak or Failing 12V Auxiliary Battery
Difficulty
2/5
Est. Time
1.5 hrs
DIY Doable?
✅ Yes
Shop Labor
$120 – $550
Parts Price
$60 – $250
🚫 Do not drive — Driving is not recommended. The issue can cause the engine to stall suddenly or fail to restart, which is a significant safety risk. Many owners report the engine cutting out while driving.
Key Takeaways
  • Always check the 12V auxiliary battery first. It is the most likely cause of P0340 on a 2004-2010 Prius, a fact backed by a Toyota TSB.
  • Do not drive the vehicle. A P0340 fault can cause the engine to stall at any time, creating a dangerous situation.
  • The vehicle year matters. 2004-2009 (Gen 2) models use a different camshaft sensor (90919-05024) and have a much more difficult replacement procedure than the 2010 (Gen 3) model.
  • If the battery is healthy, the camshaft position sensor itself is the next most probable cause. It is a relatively inexpensive part, but labor for the Gen 2 can be significant.
The trouble code P0340 stands for "Camshaft Position Sensor 'A' Circuit Malfunction." This means the Engine Control Module (ECM) has lost a clear or stable signal from the camshaft position sensor. This sensor's job is to tell the computer the exact rotational position of the engine's camshaft, which is critical for timing the fuel injection and ignition spark. Without this signal, the ECM cannot properly synchronize engine functions, leading to a no-start condition or stalling.

What's Unique About the 2004-2010 Toyota PRIUS

The Toyota Prius is uniquely sensitive to the health of its 12V auxiliary battery. Unlike a conventional car where a weak battery results in a slow, audible crank, the Prius uses the 12V battery to power up computers and close high-voltage relays to start the engine. A weak 12V battery can cause inconsistent cranking speed, which the ECM misinterprets as a camshaft sensor fault. This specific issue is well-documented by Toyota in a Technical Service Bulletin (TSB #T-TT-0010-10 Rev) which explicitly states that low battery voltage (below 11V) can trigger P0340 and/or P0335. Owners should always suspect the 12V battery first when this code appears, as it is the most common and often misdiagnosed cause.

Diagnostic Flowchart

Tap your situation to follow the diagnostic path that matches what you're seeing on this vehicle.

What is the resting voltage of the 12V auxiliary battery in the trunk?
→ Charge or replace the 12V battery ($180-$250). Toyota TSB T-TT-0010-10 Rev states low voltage causes false P0340 codes.
Does the camshaft position sensor wiring or connector show damage or oil?
→ Repair the damaged wiring or clean the connector ($5-$50) and re-seat it securely.
Does the sensor resistance measure 1,630-2,740 ohms cold or 2,065-3,225 ohms hot?
→ Replace the camshaft sensor ($60-$120). Note: Gen 2 (2004-2009) requires inverter removal to access.
→ Check for continuity between the sensor and ECM, or suspect a stretched timing chain.
→ Use a multimeter to test the 12V battery in the trunk. It must read above 12.4V.

Generation note: This range covers two Prius generations. The 2004-2009 models are Gen 2 (XW20) with the 1NZ-FXE 1.5L engine. The 2010 model is the first year of Gen 3 (XW30) with the 2ZR-FXE 1.8L engine. While the causes and symptoms are similar, the camshaft position sensor is a different part number for each generation. The Gen 2 sensor is located on the end of the cylinder head, while the Gen 3 sensor is on top of the valve cover.

Symptoms You May Notice

  • Check Engine Light is on
  • Engine cranks but will not start, or starts and immediately stalls
  • Engine is hard to start
  • Engine stalls unexpectedly while driving
  • Rough idling or engine misfiring
  • Poor acceleration and significant loss of power
  • "Check Hybrid System" message may appear on the dash
⚠️ Don't Waste Money on the Wrong Fix
  • Replacing the camshaft position sensor without first testing the 12V auxiliary battery. Many owners and even some shops replace the sensor only to find the problem persists because the root cause was low voltage from a weak battery.

Most Likely Causes

  1. Weak or Failing 12V Auxiliary Battery 🔴 High Probability As documented in Toyota TSB T-TT-0010-10 Rev, low 12V battery voltage (specifically below 11V) can cause inconsistent engine cranking, which the ECM misinterprets as a camshaft sensor fault. The Prius relies on the 12V battery to boot its complex systems and engage the high-voltage relays before the main hybrid battery can start the gasoline engine.
    How to confirm: Use a multimeter to test the 12V battery located in the trunk. A healthy battery should read above 12.4V with the car off. Any reading below 12.0V indicates a discharged or failing battery. Check the freeze-frame data with an OBD-II scanner; the TSB specifically advises checking if battery voltage was below 11V when the DTC was set.
    Typical fix: Charge or replace the 12V auxiliary battery. Many owners opt for immediate replacement due to the critical role of the battery and the difficulty in reviving a deeply discharged one.
    Est. part cost: $180-$250
  2. Faulty Camshaft Position Sensor 🟡 Medium Probability Like any electronic component, the sensor can fail over time due to heat cycles and internal component degradation. It is a common replacement part after the battery is ruled out.
    How to confirm: If the 12V battery is good, the sensor is the next suspect. It can be tested with a multimeter for resistance. For the Gen 2 (1NZ-FXE), the specified resistance is 1,630-2,740 Ω when cold and 2,065-3,225 Ω when hot. If resistance is out of spec, the sensor is bad. A diagnostic scope can also be used to monitor the signal output while cranking.
    Typical fix: Replace the camshaft position sensor. On the Gen 2, this requires removing the inverter assembly to access the sensor on the back of the cylinder head. On the Gen 3, it is much easier, located on top of the valve cover under a plastic engine cover. 🎬 Watch: How to replace the camshaft sensor on Gen 3 models.
    Est. part cost: $60-$120
  3. Wiring or Connector Issue ⚪ Low Probability The engine bay heat can make wiring insulation brittle over time, leading to cracks and shorts. Oil from a leaking valve cover gasket can also contaminate the connector and disrupt the signal.
    How to confirm: Visually inspect the wiring harness and connector going to the camshaft position sensor. Look for any signs of corrosion, loose pins, frayed or melted wires, or oil contamination. A multimeter can be used to check for continuity and shorts between the sensor connector and the ECM pins.
    Typical fix: Repair the damaged wiring or clean/replace the connector. Sometimes simply re-seating a loose connector can solve the problem.
    Est. part cost: $5-$50

Rare But Worth Checking

  • Stretched Timing Chain or Timing Issue: While uncommon, if the timing chain has stretched or jumped a tooth, the camshaft and crankshaft signals will be out of sync, which can trigger P0340. This is a more serious mechanical issue and is usually accompanied by other timing-related codes like P0016 and may produce rattling noises. One owner on PriusChat reported a garage diagnosed a stretched chain as the cause after a new sensor didn't fix the P0340 code.
  • Failed Engine Control Module (ECM): This is extremely rare. The ECM should only be considered a possibility after all other causes, including the battery, sensor, and wiring, have been definitively ruled out through testing.
  • Faulty Crankshaft Position Sensor: In some systems, a failing crankshaft position sensor can cause the ECM to log a P0340 because the two signals are no longer synchronized. Given that the weak 12V battery issue often triggers both P0335 and P0340, checking the health of the crank sensor and its circuit 🎬 See this walkthrough for replacing the crankshaft sensor on Gen 2. is a valid diagnostic step if other causes are eliminated.

Diagnosis Steps

  1. Read all stored fault codes with an OBD-II scanner. Note any other codes, especially P0335 or P0A0F.
  2. CRITICAL: Test the state of health and charge of the 12V auxiliary battery. Use a multimeter to ensure it has a stable voltage of at least 12.4V at rest. Check freeze frame data to see if voltage dropped below 11V when the code was set.
  3. If the battery is weak, charge or replace it. Clear the codes, and attempt to start the vehicle to see if P0340 returns.
  4. If the battery is good, locate the camshaft position sensor. For Gen 2 (2004-2009), it is on the passenger side end of the cylinder head. For Gen 3 (2010), it is on top of the valve cover.
  5. Inspect the sensor's electrical connector and wiring for any visible damage, corrosion, or looseness.
  6. If the wiring looks good, test the sensor's function. For the Gen 2, use a multimeter to check resistance across the sensor's terminals. It should be 1,630-2,740 Ω (cold) or 2,065-3,225 Ω (hot).
  7. If the sensor fails the resistance test, replace it. Be sure to apply a light coat of engine oil to the new sensor's O-ring before installation.
  8. If the sensor tests good, the fault is likely in the wiring harness between the sensor and the ECM. Check for continuity and shorts to ground in the circuit. In very rare cases, a stretched timing chain or a faulty ECM could be the cause.

Parts You'll Likely Need

  • 12V Auxiliary Battery — A weak 12V battery is the most common cause of P0340 on a Prius, as documented by Toyota TSB T-TT-0010-10 Rev.
    Trusted brands: Toyota TrueStart, Optima (YellowTop), Bosch
    OEM price range: $200-$250
    Aftermarket price range: $180-$220
  • Camshaft Position Sensor (OEM #90919-05024 (for Gen 2, 1NZ-FXE)) — This is the second most likely part to fail. The part number is different for Gen 2 and Gen 3 models. 90919-05024 is for the 2004-2009 Gen 2 Prius with the 1NZ-FXE engine. The 2010 Gen 3 Prius (2ZR-FXE) uses a different part, often listed as 90919-05060.
    Trusted brands: Denso (OEM supplier), NGK, Beck/Arnley
    OEM price range: $105-$120
    Aftermarket price range: $60-$90

Related Codes That Often Appear With This One

  • P0335 — Crankshaft Position Sensor Circuit Malfunction. Toyota TSB T-TT-0010-10 Rev explicitly notes that low battery voltage can cause both P0340 and P0335 to appear together due to inconsistent engine rotational speed.
  • P0A0F — Engine Failed to Start. This code is often a direct consequence of the P0340 fault, as the ECM cannot get the necessary data to properly start the engine. A PriusChat user with a 2013 model reported this exact sequence of codes after the engine stalled while driving.

Technical Service Bulletins (TSBs) & Recalls

  • T-TT-0010-10 Rev: Mentions that low battery voltage (below 11V) can contribute to a MIL "ON" condition for P0340 and P0335 due to inconsistent rotational speed of the

Platform-Specific Known Issues

  • Per Toyota Technical Service Bulletin T-TT-0010-10 Rev, low voltage from the 12V auxiliary battery is a known cause for triggering P0340 due to inconsistent engine cranking speed during startup.
  • On Gen 2 models (2004-2009), replacing the camshaft position sensor is significantly more labor-intensive as it requires the removal of the inverter assembly to gain access.
  • Owners on forums frequently warn others not to buy a camshaft sensor until the 12V battery has been professionally tested or replaced, citing personal experience of wasting money on a sensor that wasn't the problem.

Mechanic-Grade Diagnostic Values

  • Gen 2 (1NZ-FXE) Camshaft Position Sensor Resistance — expected: 1,630 - 2,740 Ω (Cold) or 2,065 - 3,225 Ω (Hot). Failure: Resistance is outside of the specified range, or shows an open or short circuit.
  • Gen 3 (2ZR-FXE) Camshaft Position Sensor Supply Voltage — expected: 4.5V - 5.5V (at sensor connector with ignition ON). Failure: Voltage is below 4.5V or above 5.5V, indicating a wiring or ECM issue.
  • Gen 2 (1NZ-FXE) ECM to Sensor Wire Harness Resistance — expected: Below 1 Ω. Failure: Resistance above 1 Ω indicates excessive resistance in the harness.

Hidden / Shadow Codes Worth Checking

  • P0340-886 (or INF 886): Malfunction in the engine speed sensor (GI signal) circuit. This specific information code indicates the Hybrid Vehicle Control ECU detected an issue with the pulse signal from the camshaft position sensor when comparing it to other engine speed data. (see via Toyota Techstream software. Enter menus: Powertrain / Hybrid Control / Trouble Codes.)

Scan Tool Commands That Help

  • Toyota Techstream: All Readiness Check — After clearing DTCs, this utility can be used to run the monitor for P0340 without a full drive cycle to confirm if a fix was successful.
  • Toyota Techstream: Freeze Frame Data — Crucial for this code. Check the vehicle and driving condition information recorded at the moment the DTC was stored. Specifically, look for the 12V battery voltage parameter to see if it was low, which strongly points to the battery as the root cause per the TSB.

Wiring & Ground Locations

  • Gen 2 ECM Connector E4 — Behind the right side of the dashboard.. This is the main ECM connector where the camshaft position sensor wiring terminates. Pin E4-24 is the sensor signal (NE-) and Pin E4-16 is the other sensor signal (NE+). These pins are used to test for continuity and shorts in the harness back to the sensor.
  • Gen 2 Camshaft Sensor Connector C1 — On the sensor itself, located at the rear (passenger side) of the cylinder head.. This is the starting point for all circuit diagnostics. It's a 2-pin connector for the inductive-type sensor used in Gen 2 models.
  • Gen 3 Camshaft Sensor Connector D18 — On the sensor, located on top of the valve cover.. This is a 3-pin connector for the Hall-effect sensor in Gen 3. Pin 1 (VC) is the 5V supply, Pin 2 (VVI-) is ground, and Pin 3 (VVI+) is the signal wire. A user on PriusChat confirmed the wire colors are often Red (VC), White (Ground), and Black (Signal).
  • Ground Point EC — On the Gen 2 (1NZ-FXE), this ground point is located at the rear of the engine.. A poor engine ground can cause a variety of sensor signal issues. While not directly in the sensor circuit, it's a critical ground to check for looseness or corrosion if electrical issues are suspected.

Real Owner Repair Stories

  • PriusChat user (2013 Prius, 66k miles) — Engine randomly stalled while driving. Would restart for a few seconds at low RPM then shut off. Displayed "Check Hybrid System" message.
    ❌ Tried (didn't work) Replaced camshaft position sensor with an aftermarket part., Replaced sensor again with a genuine Toyota part., Checked for voltage at the sensor plug (was good)., Checked all related fuses and relays (were good).
    ✅ What actually fixed it The user was still diagnosing at the end of the thread, suspecting either a jumped timing chain or a bad ECM. This story is valuable for showing that replacing the sensor, even with an OEM part, is not a guaranteed fix.
  • PriusChat user '2007 Prius' (2007 Prius) — Car would not go into READY mode, throwing P0340 and P0335.
    ❌ Tried (didn't work) Replaced the 12V battery., Replaced the camshaft position sensor., Replaced the crankshaft position sensor.
    ✅ What actually fixed it The problem was ultimately a faulty inverter. The user noted that after replacing the inverter, the car started immediately and the codes did not return. This is a significant edge case where the inverter failure mimicked sensor circuit faults.

When the Usual Fixes Don't Work

  • While the weak 12V battery is the most common culprit, there are documented cases where the P0340 code persisted even after replacing the battery and the camshaft sensor. In one such case involving a 2007 Prius that also had a P0335 code, the actual root cause was a failed inverter assembly. The owner replaced the battery, cam sensor, and crank sensor with no success before discovering the inverter was the problem.

OEM Part Supersession History

  • 19300-BZ02090919-05024 — Standard part number update/consolidation.
    Heads up: These parts are interchangeable for the Gen 2 Prius (2004-2009).

Model Year Variations Within This Range

  • 2004-2009 (Gen 2): Uses a 2-pin inductive type sensor (PN 90919-05024). The sensor generates its own AC signal based on the passing of the reluctor wheel. Testing involves measuring resistance.
  • 2010 (Gen 3): Uses a 3-pin Hall-effect type sensor (PN 90919-05060). This sensor is powered by a 5V reference from the ECM and outputs a digital square wave signal. Testing involves checking for reference voltage, ground, and signal output with a voltmeter or oscilloscope.
How to Fix P0340 Trouble Code Top 5 Camshaft Sensor Problems Explained
How to Fix P0340 Trouble Code Top 5 Camshaft Sensor Problems Explained
How To Fix P0340 Code In Just 3 Minutes (7 Common Causes)
How To Fix P0340 Code In Just 3 Minutes (7 Common Causes)
P0340 Camshaft Position Sensor Fix – Easy & Fast ||
P0340 Camshaft Position Sensor Fix – Easy & Fast ||
How to Replace Camshaft Position Sensor 10-13 Toyota Prius
How to Replace Camshaft Position Sensor 10-13 Toyota Prius
Prius Crankshaft Position Sensor
Prius Crankshaft Position Sensor
How to Replace Crank Sensor 2004-2009 Toyota Prius
How to Replace Crank Sensor 2004-2009 Toyota Prius
How to Test & Fix P0340 Camshaft Position Sensor Circuit Fault Code | Fix Engine Starting Problem
How to Test & Fix P0340 Camshaft Position Sensor Circuit Fault Code | Fix Engine Starting Problem
How to Test & Fix P0340 Camshaft Position Sensor "A" Circuit Fault Code |Fix Engine Starting Problem
How to Test & Fix P0340 Camshaft Position Sensor "A" Circuit Fault Code |Fix Engine Starting Problem
Camshaft Position Sensor P0340 Testing and Replacement HD
Camshaft Position Sensor P0340 Testing and Replacement HD
Wrenchy
Article researched & written by
Go-Parts' AI research assistant. Every article is backed by live web research, verified OEM data, and real technician knowledge — so you get accurate, up-to-date information you can trust.
Meet Wrenchy → Updated Jul 21, 2026

The information in this article is provided for general reference and educational purposes only. Vehicle specifications, procedures, and part compatibility can vary by production date, trim level, and region. Always consult your vehicle's factory service manual and verify part numbers before purchasing or performing repairs. Safety-critical components such as airbags, seat belts, and braking systems should be installed by a qualified professional.

Year Coverage
This article covers the OBD-II Code P0340 for:
  • Toyota PRIUS: 2004200520062007200820092010
In this article
🎬 Helpful Videos
Jump to ▴

Email This Guide

We'll send you a link to this article so you can read it later or share it.

Added to cart · Part