AutoLogicTools

OBD-II trouble code

P0029: Exhaust Valve Control Solenoid Circuit Range/Performance (Bank 2)

SAE J2012 APR2002: exhaust valve control solenoid circuit range/performance, bank 2. The circuit is in range and the result is still wrong for the conditions. It is not the "B" camshaft footnote, and it is not a bank 1 test with the bank number changed.

Medium severityPowertrainVariable Valve TimingDrivable short-term

Quick facts

System
Powertrain
Category
Variable Valve Timing
Severity
Medium severity
Drivable
Usually safe to drive short-term
Repair cost range
$220 – $950 (variable valve timing control solenoid replacement)
DIY difficulty
Intermediate DIY

Browse every code in P0001–P0099, or start from the full code library.

What does P0029 mean?

SAE J2012 APR2002 table B1 names P0029 Exhaust Valve Control Solenoid Circuit Range/Performance, location Bank 2. Section 3.2 defines range/performance as a circuit that is inside its normal operating range but is not correct for the current conditions. The same section says that description may be used for a stuck or skewed value. Section 3.5 says bank 1 always contains cylinder number 1 and bank 2 is the opposite bank. If the engine has only one bank, the standard says to use the bank 1 codes.

The "A" and "B" camshaft footnote in that table is a different axis. It applies to codes such as P0024 and P0025. P0029 already says exhaust in the title. Do not pick the solenoid by deciding which camshaft is "B," and do not pick the bank by standing in front of the car.

An aggregator page for this number (obd-codes.com) describes a generic oil-fed cam actuator and, in the same article, says the module saw the exhaust camshaft on bank 1 out of range. The code's own location column says bank 2. That page is not a factory pinpoint, and it is not used here as a test.

No Ford, GM, Hyundai, or Volkswagen procedure found in this pass lists P0029 and gives a duty cycle, an ohm band, or an oil-change step. Until this engine's chart is open, the solenoid, the command, and the result are whatever that chart measures. A phaser, a secondary chain, and a start-up rattle are not assumed from the SAE title.

Common causes

  • A connector or wire at the bank 2 exhaust valve-control solenoid, checked before the timing cover comes off
  • The exhaust oil-control solenoid failing the command-versus-result test in this engine's chart
  • A bank 1 procedure, or a "B" camshaft procedure, used in place of a P0029 test this engine does not share
  • Oil level or oil viscosity treated as the cause without a procedure that says so for this code
  • A phaser or a chain replaced from a general VVT story rather than from this pinpoint
  • The intake solenoid, P0028, diagnosed under the exhaust code

Symptoms

  • Check engine light with P0029
  • The bank 2 exhaust cam not following its command, when this engine's data shows that
  • A performance code on the same cam only if this calibration stores one
  • No second bank to compare, on an engine that has only bank 1 — those engines use the bank 1 code instead
  • The solenoid on the exhaust cam of the bank that does not contain cylinder 1
  • A repair history of oil services that this code's missing procedures do not call for

Diagnostic steps

  1. 1.Find P0029 in this engine's service information. If the section has no such test, do not substitute a bank 1 exhaust test, a "B" camshaft over-advanced test, or an aggregator oil-change list.
  2. 2.Mark cylinder 1. Bank 2 is the other bank, per SAE J2012 APR2002 section 3.5. Unplug the exhaust valve-control solenoid that diagram shows, with the ignition off, and inspect the connector and the harness where it can rub.
  3. 3.Run the command-versus-result check the chart prints. That may be a duty cycle, a cam-angle error, or a switch. Record it, or have a passenger read it. Do not infer a stretched secondary chain from the code name.
  4. 4.Measure the coil only against a spec this procedure prints. No resistance is stated here, because none was found that belongs to P0029 across engines.
  5. 5.Follow the chart's next part. If it names the solenoid, replace that solenoid. If it names a phaser or a chain, that is a different job and it is outside the RepairPal solenoid pair below.
  6. 6.Clear the code and rerun the test the chart enables. Do not add an EGR step. None was found in a P0029 procedure.

Repair cost

$220 – $950 (variable valve timing control solenoid replacement)

Scoped to the solenoid, because that is the part the SAE title names and the part RepairPal prices as a variable valve timing control solenoid. National average $469–$594, labor $196–$288, parts $273–$306, estimates updated 3 September 2026 (repairpal.com/estimator/variable-valve-timing-control-solenoid-replacement-cost). That page lists vehicle lines from $218–$355 through $879–$952. RepairPal's Toyota Corolla page for the same job is $879–$952, labor $121–$178, parts $758–$774. The printed pair rounds the national page's low line and the Corolla total. A phaser or a timing chain is not inside the pair unless this engine's chart reaches it. No oil-change total is used as the repair, because no P0029 procedure found in this pass starts with one.

Estimate your repair

Run the numbers for your vehicle

Open the Repair Cost Estimator with vvt solenoid replacement preselected. Adjust labor rate and vehicle category to fit your situation.

DIY vs shop

This is an intermediate DIY job. It usually involves diagnostic steps, specialty parts, and some careful work in tight spaces. If you have the tools and a service manual or trustworthy video for your specific vehicle, it is achievable in a weekend. Otherwise, a competent independent shop will be faster.

Related codes

Frequently asked questions

Is P0029 the bank 2 version of the "B" camshaft code?

No. SAE J2012 APR2002 puts the exhaust words in the P0029 title itself. The footnote that says the "B" camshaft shall be the exhaust, right, or rear camshaft belongs to the actuator codes such as P0024 and P0025. Bank 2 is only the bank that does not contain cylinder 1.

Should the oil and the timing chain be replaced first?

Not from any procedure found for this number. An aggregator article tells readers to check oil because VVT actuators are hydraulic, and in the same article it places the fault on bank 1. Start with the solenoid this diagram marks, and its circuit. A chain or a phaser enters the job only when this chart names it.

Does bank 2 cost more to reach?

No priced labor premium for bank 2 was found on the RepairPal solenoid estimator. Identify the bank from cylinder 1 and use the labor time in this engine's information.

How much does P0029 cost to fix?

Variable valve timing control solenoid replacement is $220 – $950 (variable valve timing control solenoid replacement). That rounds RepairPal's national average of $469–$594, updated 3 September 2026, the $218–$355 vehicle line on that estimator, and the Toyota Corolla total of $879–$952 on RepairPal's Corolla page for the same job. A phaser and a timing chain are outside the pair until this engine's chart calls for them.

Editorial context

About This Diagnostic Information

AutoLogicTools diagnostic guides explain OBD-II trouble codes using recognized code definitions, standard automotive diagnostic principles, and practical automotive context. A trouble code records a condition detected by a control module. It does not automatically identify a failed part, and the right diagnostic procedure can vary by vehicle.

Manufacturer service information, technical service bulletins, wiring diagrams, and vehicle-specific procedures should take precedence when available.

AutoLogicTools was founded by Vincent Fisk, an automotive locksmith and shop owner in San Diego with hands-on experience in vehicle keys, immobilizer systems, electrical issues, modules, programming, and diagnostics.