P0108 - Manifold Absolute Pressure/Barometric Pressure Circuit High Input
P0135 - Oxygen Sensor Heater Circuit Malfunction (Bank 1 Sensor 1)
P1660 - Cooling Fan Control Circuits
Before I get to the fault codes, check if your car uses a mass air flow sensor. If it does, check the fresh air tube between it and the throttle body. There can't be any leaks or loose hose clamps. If any air sneaks in that doesn't go through that sensor, it won't get measured and the Engine Computer will not request the correct amount of fuel to go with it. What you're describing is exactly what commonly happens when there's a leak in that tube.
Chrysler is the only manufacturer that never used a mass air flow sensor or needed one to make their engines run right. All other manufacturers use them on all or most of their vehicles, but there are a few models that don't. When the mass air flow sensor is used, it has the biggest say in fuel metering calculations. All the other sensor readings just tweak that a little. In this case the MAP sensor is used mainly for barometric pressure readings.
I can't remember for sure, but I think you don't have a mass air flow sensor. If you don't, the MAP sensor is the main one for fuel metering. The volume of air is not measured so small vacuum leaks often don't make a noticeable effect on engine performance. What WILL cause a problem is if a rubber vacuum hose runs to the sensor and it has a crack or other leak in it. That will result in the sensor seeing lower-than-normal vacuum which equates to acceleration or higher load. Both conditions call for more fuel. More fuel when it's not needed will result in running problems.
I have to defer now to my Chrysler experience with MAP sensors, but they all work pretty much the same way. They all have three terminals. If a fourth one is used, that can be for a built-in temperature sensor or some other function specific to that vehicle. One of the three wires feeds the sensor with 5.0 volts. The ground wire is shared by a few other sensors and will have close to 0.2 volts on it. The signal wire can put out a voltage like all Chryslers and GMs do, or a square wave like Fords do. (Ford always does things differently than everyone else). As vacuum changes with those, the frequency of the signal changes.
When the signal is a varying voltage, in most cases higher vacuum results in lower signal voltage. There are some that work backward. As I recall from a class, Nissan has a few that produce a higher voltage for higher vacuum, but they use the normal kind on other engines, and you can get the wrong part. That's a fun one to figure out. Also, MAP sensors will be different for turbocharged engines. On those, the intake manifold can go from vacuum into a pressure situation, and the MAP sensor has to be able to handle that.
When the MAP sensor is working properly, the range of signal voltage it can develop is from 0.5 volts to 4.5 volts. Those numbers are for teaching theory of operation. In the car you might find from 0.7 to 4.2 volts. The point is the voltage will never go to 0.0 or 5.0 volts. Throttle position sensors work the same way but with built-in mechanical stops.
MAP sensors can fail in a number of ways, and that's why there's so many fault codes related to them, but by far the majority of "voltage high" codes are caused by a broken signal wire. An open ground wire will result in seeing 5.0 volts on all three terminals at the sensor. An open ground connection inside the sensor will result in 5.0 volts on the feed wire and signal wire, but the normal 0.2 volts on the ground wire. These have to be measured with the sensor plugged in to be valid. That means poking your meter probes through the rubber weather-pack seals to touch the terminals. A break in the ground wire is very rare because it only goes a short distance before it splices into the ground wires for other sensors. A break after that splice would set "voltage high" fault codes for multiple sensors, and you don't have that.
A break in the signal wire is a different story. In this case you would measure a different voltage at the sensor than what a scanner would show the Engine Computer is seeing. The sensor will still work properly so you will measure the normal 0.5 to 4.5 volts. At the computer, however, the signal wire is tied internally to a lot of other circuitry, so the voltage could "float" to some random value. If that value happens to be between 0.5 and 4.5 volts, the computer will accept that as a good reading, and try to run on that. To prevent that, they use a "pull-up" resistor between the signal wire and internal 5.0 volt supply. That resistor is so big electrically that it has no effect when the sensor is working properly, but when the signal wire is broken, that resistor places 5.0 volts on the wire inside the computer to force it to set a fault code. You'd need a scanner to see this. The voltage at the sensor will be acceptable, but the scanner will show 5.0 volts.
In some computers they use a "pull-down" resistor to prevent random values from occurring when the signal wire is broken. Those work the same way, except you'll see 0.0 volts on the scanner instead of 5.0 volts, and the fault code will say "voltage low".
If you don't have a scanner, there's another point of confusion. There can be an intermittent break in the signal wire, most commonly due to corrosion between mating connector terminals. When the break acts up, the fault code will be set and engine performance will be affected, but when the circuit starts working again, the fault code will stay in memory. That's why you can have a fault code and find nothing wrong with the circuit. With most Engine Computers, when a fault code is set, the computer injects an approximate, typical value to run on based on all the other sensor readings and operating conditions. With some cars that engine performance can be pretty good, to the point you don't believer the code or that there's a problem. Other car models may not have a backup strategy, so it's hard to say how the engine will run.
99 percent of the time code 135 is caused by a broken wire or corroded connector terminals. The internal heater for oxygen sensors is to get them up to 600 degrees where they start working rather than wait for the heat of the exhaust to get them there. It's doubtful you'll notice anything unusual with how the engine runs. There could be a few minute delay before that sensor starts to work after the engine is started, and that too could set a fault code, but there is always a long list of conditions that have to be met to set a code, and one of those conditions is certain other codes can't be set already. With code 135, the computer knows it can't rely on that sensor to report correct values, so it won't set any fault codes related to incorrect values.
Code 1660 can have different causes in different car models, but probably the most common cause is someone pulled a fan relay out of its socket while the ignition switch was on. This one won't affect engine performance.
Friday, October 30th, 2015 AT 2:43 AM