Spiker Engineering
official vendor
Yes. I am hoping that resolves it. Was the AIC plated ?
No, I was very gentle with it. Just a wipe with some TB cleaner using a q-tip. Then I painted it together with the throttle body using engine enamel.
Yes. I am hoping that resolves it. Was the AIC plated ?
Probably not without repinning or flipping wires, which I didn't do.
But Charlie got me thinking, and so I ran an experiment, which was quite interesting.
Recall the original data of RPM vs coolant temp, with the IAC connected:
![]()
So today after thinking about Charlie's post, I disconnected the IAC, and fired up the truck. Things looked pretty familiar until about 131F, when the engine speed dropped like a rock to under 1000, and stayed there until full warm up:
![]()
That makes no sense to me. I thought maybe the IAC fixed itself, but as soon as I reconnected the IAC, the speed jumped back up to 1540.
I did score a code in the process, P0505, but that's an IAC code that is probably not surprising given I ran with it disconnected.
So what does this tell me?
The fact your truck ran with the IAC disconnected is telling. The IAC gives your engine the air it needs to run under idle or deceleration conditions. Your engine shouldn't have started with an unplugged IAC. This either means the IAC valve is stuck in the open position, air is able to sufficiently get past the throttle plate, or you have some other type of vacuum leak possibly at the air assist hose that connects to the IAC to give the engine the air it needs to run.
I think you should have tested your IAC like I did in the video below before dropping money on a new one. But, hopefully the new IAC fixes your issue.
I figured you did. Tested it. This is why I am surprised it's giving you issues.Hey Tim, thanks for your thoughts. I think the IAC is a bit more complex - it has two parts, the electromagnetic actuator controlled by the ECM, and a bimetallic spring that is purely coolant temperature dependent (that's why the coolant lines go through the IAC). So with the IAC disconnected, the IAC is not closed, it'll be moved by the bimetallic spring, just without any additional control by the ECM.
One thing that puzzles me is why with the IAC disconnected, the RPMs dropped back to 1000 at 131F, and stayed there. I thought maybe the P0505 code sent the ECM into some kind of a limp mode (though I have no idea how the ECM can control idle speed other than by the IAC) - but I repeated my experiment this morning, with the code already tripped, and it did the exact same thing - rising speed, until a sudden drop at 130F.
BTW, I did do the tests in your video when I was cleaning the IAC, it passed with flying colors. It also passed the FSM's resistance tests.
Hey Tim, thanks for your thoughts. I think the IAC is a bit more complex - it has two parts, the electromagnetic actuator controlled by the ECM, and a bimetallic spring that is purely coolant temperature dependent (that's why the coolant lines go through the IAC). So with the IAC disconnected, the IAC is not closed, it'll be moved by the bimetallic spring, just without any additional control by the ECM.
One thing that puzzles me is why with the IAC disconnected, the RPMs dropped back to 1000 at 131F, and stayed there. I thought maybe the P0505 code sent the ECM into some kind of a limp mode (though I have no idea how the ECM can control idle speed other than by the IAC) - but I repeated my experiment this morning, with the code already tripped, and it did the exact same thing - rising speed, until a sudden drop at 130F.
BTW, I did do the tests in your video when I was cleaning the IAC, it passed with flying colors. It also passed the FSM's resistance tests.
Interesting. I thought the IAC had coolant running through it for cold conditions so the valve couldn't get stuck. Where's the bimetallic spring? I guess you can't see it because I never saw it when I tested and cleaned it. My 98 would stall sometimes and I suspected a sticking IAC valve. It's the only thing that made sense to me why my truck would all of a sudden stall.
The bimetallic is right behind that plate on the opposite end from the electromagnetic actuator:
![]()
![]()
It rotates the IAC as coolant temp changes (similar to the old choke system on carburetors). What I don't know is how the two systems (bimetallic and electromagnetic) duke it out - does the ECM prevail over the spring? Maybe my IAC spring is bad - although it'd be surprising that it broke exactly when I did the engine refresh project.
I can't wait for the new IAC to arrive - at least we'll then know if it's the IAC or something else.
Hey Tim, thanks for your thoughts. I think the IAC is a bit more complex - it has two parts, the electromagnetic actuator controlled by the ECM, and a bimetallic spring that is purely coolant temperature dependent (that's why the coolant lines go through the IAC). So with the IAC disconnected, the IAC is not closed, it'll be moved by the bimetallic spring, just without any additional control by the ECM.
One thing that puzzles me is why with the IAC disconnected, the RPMs dropped back to 1000 at 131F, and stayed there. I thought maybe the P0505 code sent the ECM into some kind of a limp mode (though I have no idea how the ECM can control idle speed other than by the IAC) - but I repeated my experiment this morning, with the code already tripped, and it did the exact same thing - rising speed, until a sudden drop at 130F.
BTW, I did do the tests in your video when I was cleaning the IAC, it passed with flying colors. It also passed the FSM's resistance tests.
The fact your truck ran with the IAC disconnected is telling. The IAC gives your engine the air it needs to run under idle or deceleration conditions. Your engine shouldn't have started with an unplugged IAC. This either means the IAC valve is stuck in the open position, air is able to sufficiently get past the throttle plate, or you have some other type of vacuum leak possibly at the air assist hose that connects to the IAC to give the engine the air it needs to run.
I think you should have tested your IAC like I did in the video below before dropping money on a new one. But, hopefully the new IAC fixes your issue.
I always thought the IAC valve was a stepper motor so it sent it’s position back to the ECM, but that’s just speculation on my part. I haven’t ever looked into it.
The IAC adds air in order to increase engine idle for warm up. The throttle body valve doesn’t close completely and allows enough air in for a base idle that is adjustable with the “don’t touch this screw” screw. It will run without the IAC opening to allow additional air in.
Well the new IAC is in:
![]()
And the truck runs perfectly - it starts with a slightly high idle, then settles down a bit (what a welcome relief), and then keeps dropping lower and lower until it evens out at about 140F and 850 RPM (in park) - and then sits there and purrs like a kitten.
![]()
I noticed that at room temp, the new IAC's opening was a bit smaller than on the old IAC, but I'm not sure that means a whole lot.
![]()
![]()
I'll probably take the old IAC apart just for curiosity. Maybe that will tell me something. As it is, I concluded that the IAC system is way more complex that I thought, because none of this behavior makes sense to me.
One more thing, I think the IAC is way more delicate than folks perhaps realize. There were some comments on Tim's video about not getting any cleaner into the IAC, because that could wash out the delicate bearings - and I was very careful to not do that. And yet my IAC worked well before I cleaned it with the q-tip, and was not working afterwards.
Maybe the disassembly will tell me something.
I'm pretty sure the throttle body baffle closes completely on 96-00 models. The 01 & 02 models don't have an IAC and those baffles don't close all the way because of it.
Checked mine this morning and it does not close completely.
I always thought the IAC valve was a stepper motor so it sent it’s position back to the ECM, but that’s just speculation on my part. I haven’t ever looked into it.
EDIT: IAC valve is a stepper motor but does not send back any position information to the ECM based on the wiring diagrams that I looked at for a 2000.
I just cleaned mine the other day and it sure looks like it closes completely with zero gap.
It's a really complex system. I spent many hours researching the IAC, and know much more than I knew earlier, but there are still parts of it that I don't fully understand. Here's my "IAC 101" understanding:
There is a bimetallic spring on one end, which rotates the shaft as the coolant temperature changes:
![]()
The spring's tang engages into a brown plastic "hat" that sits on the shaft:
![]()
On the opposite side of the shaft is the electromagnetic actuator:
![]()
Like you said, the actuator does not send any feedback to the ECM, it's just a dumb torque motor (not even a stepper motor).
But here is where things get wonky - the two actuators (spring and motor) are NOT directly connected to the shaft! In other words, if you hold the hat with one hand, you can rotate the actuator side of the shaft back and forth quite a bit with your other hand.
That was totally unexpected for me, but it makes sense once you look at the design more closely. The brown hat that the spring rotates actually has a lot of radial play with the shaft.. You can see how much wider the opening inside the hat is compared to the small tang on the shaft:
![]()
So basically, the spring rotates the brown hat as the coolant temp changes, and that brown hat acts as a window frame for the shaft - it forces the shaft to rotate, but allows a lot of wiggle room within that frame. So I think that's what the electromagnetic actuator does - it fine tunes the position of the shaft within that rotating window frame. Does that make sense?
What I don't know is this: is the electromagnet strong enough to overpower that "window frame" which is rotated by the spring, or can it only move the shaft back and forth within the confines of the window frame? In other words, do the two actuators work in a complimentary fashion, or can the electromagnet overrule the spring's position? I'd be really curious to know the answer to this.
I know I still didn't get to the root cause of my failure, I'll do that in the next post.
The IAC is way more complicated than I thought. Thanks Leon for doing this autopsy. Though, it still makes no sense how a simple cleaning could cause it to fail.
We all know with a cold engine, the idle is higher and then drops as the engine reaches operating temp, but what is the mechanism that increases the idle when cold and drop when hot? It appears on the IAC side of things, the bimetallic spring and little trap door control the air flow to the engine but it's not a stand alone system because it's connected electronically to engine wiring harness and is taking input from the ECU. So, I would imagine the IAC is taking input from the coolant temp sensor via the ECU.
So, maybe the motor doesn't send any feedback to the ECU but it's certainly receiving information, because why have it plugged into the wiring harness. If it was a stand alone system, it wouldn't need to be connected.
The fact your engine idle kept climbing as it warmed up leads me to believe either your IAC couldn't receive the message to start reducing the opening of the air trap door, or mechanically, something was wrong with the trap door and it couldn't close as much as it needed to in order to drop the idle speed.