Error Code P0040 is defined as Oxygen (O2) Sensor Signals swapped, bank 1 sensor 2/ bank 2 sensor 1. This means the upstream oxygen sensor for the two separate engine banks sent a voltage outside the acceptable parameters, causing the PCM to read it as a trouble code.

This however, is a generic term for the error code. Different makes and models may have different specifics about this error code. Thus, it is important to know exactly what the manufacturer’s handbook says.


Modern engines use both upstream and downstream O2 sensors; the former is located before the catalytic converter, whose job is to determine the level of oxygen from the exhaust gas. It sends its reading to the PCM, which is then used by the PCM to control the air/fuel mixture of the engine. The sensor also compares the level of oxygen in the exhaust to the outside air (there’s an opening in the sensor exposed to read the oxygen from the atmosphere). It then generates the corresponding voltage that the PCM transmits. The PCM will then control the injector pulse based on the value it received.

The downstream O2 sensor on the other hand, is found behind the catalytic converter, and its job is to check the efficiency of the converter by checking the O2 content of the exhaust right after it leaves the converter. This is why the downstream O2 sensor is also called the catalyst monitors.

Modern vehicle engines use HO2S (heated oxygen sensor) to contain the heating element that brings the sensor to its standard operating temperature quickly. This helps the PCM to use the signal inputs faster, making a more precise fuel control and reduced emissions. When the engine is cranked, the heater circuit is energized through a relay. The PCM checks the heater circuit and till trigger the check engine light should it detect any problem.

Common Symptoms

Besides the obvious Check Engine light, symptoms for this error code include:

  • Rich or lean condition in the engine
  • Decrease in fuel efficiency
  • Emission of black smoke from the tailpipe

Possible Causes

Check Engine light is triggered when the PCM detects a faulty O2 sensor, which is usually caused by different factors, such as:

  • Issues with the electrical connector to the O2 sensor (faulty wiring)
  • Faulty or shorted wiring in O2 sensor circuit
  • Cross heated O2 sensor harness connectors
  • Swapping of wiring from one O2 sensor connector to the other
  • Change of wiring from the computer connection or other related harness
  • Excessive or low fuel pressure
  • Excessive exhaust leak
  • Engine vacuum leak
  • Faulty PCM (rare)

How to Check

As with most error codes that concerns the oxygen sensors, diagnosis and troubleshooting for P0040 starts with visual inspection of the oxygen sensor and its connectors. Make sure the connectors aren’t swapped, which is quite common if previous work has been performed on the sensor. Also, check for any unplugged, damage, or broken wires.

Then, check the oxygen connector of the PCM; make sure there are no signs of damage, swapped or crossed wires or broken connectors.

Using a scan tool with digital ohmmeter, check the performance of the oxygen sensor. You can use an oscilloscope for more accurate readings. If you don’t have access to this tool or are not confident in reading the results, then it’s better to take your car to your dealer or to a licensed technician.

Technicians will also check the O2 sensor circuit, circuit’s signal side, circuit’s ground and the PCM.

How to Fix

The easiest fix for this error code is to repair or replace any damaged, corroded, shorted or disconnected wires, connectors and components as needed. If all connectors and wires are in place, as well as the components (fuses), connect the diagnostic code reader and record freeze frame data and all stored codes. This is extremely important for diagnosing intermittent conditions related to the code. After clearing the code through thorough inspections and repairs, make sure you retest until the code is completely cleared.

Check for any wiring harnesses burnt by the exhaust pipes.

Check the sensor for signs of discoloration or debris. Silicon compounds burnt by the engine and carried by the exhaust can cause problem to the O2 sensors.

Repair or replace any faulty wiring in the O2 sensor, or replace the O2 sensor if necessary.

Make sure you always compare your actual findings to the manufacturer’s specifications and repair or replace any component, circuit or connectors as needed.

Error Code P0040 is quite a rare code. It means the O2 sensor signals have been swapped. This code is also quite similar to P0041, which means Oxygen sensor signals swapped, Bank 1 sensor 2 / Bank 2 sensor 2. Obviously, the only difference between the two codes is the location of the sensors involved. Nevertheless, they require the same diagnosis and repair.

Technicians may recommend the replacement of the O2 sensor if the causes of the error code are incorrect readings for lean or rich engine conditions.