You can type here any text you want

A/C on idle comments, needed

Welcome!

By registering with us, you'll be able to discuss, share and private message with other members of our community.

SignUp Now!

bruce

Rest In Peace
Joined
May 25, 2001
Messages
10,367
Would you say the idle with the A/C on is noticebly smoother then when off?.

ie less rpm change?.

Thanks
Bruce
 
You know come to think of it my car does seem to run a little smoother with the AC on even though the rpms are higher.
 
Originally posted by gndriver
You know come to think of it my car does seem to run a little smoother with the AC on even though the rpms are higher.

There is alot of code that also comes into play, not just the IAC counts changing.
THANKS
 
You sure its not simply fuel/timing changing as LV8 changes?
 
Originally posted by TurboJim
You sure its not simply fuel/timing changing as LV8 changes?

Yes, I'm sure.
There is a whole bunch of IAC code in the ROM.
 
To augment what Bruce said, you'll also see the AC Request on a scan tool. That's used as the "trigger" to change things to compensate for the additional load of the compressor.

The later P4 computers are really sophisticated in the way they handle the request, cycling the compressor, etc.
 
Are you suure? I'm no programmer, but looking at Mike Pitts disassembly, which I know is arguably correct:

At $0003 Set bit 0 for AC req

At $00BA Set bit 0 for CLutch delay active
At $00BA Set bit 7 for PS or AC comp

At $00FF store IAC steps for AC comp

At $E78F Store 255 as IAC counts if BLM is out of range (dont really understand that one)

At $E78F If bit clear, anticipate AC on, use IAC steps in lookup ($36AA)

At $E960 If AC on, check idle, adjust to offset with AC on

I forget the address, if idle in deadband, set A=0 (??)

At $EA3C # of PID cycles before enable AC on learn mode.

At $EA4E restore Acc B

At EB05 Set min IAC steps for AC (5)

Couple other spots...but heres another code snippet:


***********
*** A/C_On:
F0D5: C4 DF ANDB #$DF Clear Raise Idle for Extra Load /0120
F0D7: 20 03 BRA $F0DC goto $F0DC

*** A/C_Off:
F0D9: 4F CLRA A = 0
F0DA: CA 20 ORAB #$20 Set Raise Idle for Extra Load /0120
**************

<snip>

********
F118: E6 47 LDAB $0047,X B = Idle Speed A/C Compensation Max # of Steps (=80 Steps)) (E=N)
F11A: 11 CBA if (B <= A)
F11B: 23 01 BLS $F11E goto $F11E
F11D: 17 TBA A = B
F11E: E6 48 LDAB $0048,X B = Idle Speed A/C Compensation Min # of Steps (=5 Steps) (E=N)
F120: 11 CBA if (B > A)
F121: 22 01 BHI $F124 goto $F124
F123: 17 TBA A = B
F124: 16 TAB B = A
F125: 90 FF SUBA $FF A -= $FF
F127: D7 FF STAB $FF $FF = B
F129: D6 BB LDAB $BB B = $BB
F12B: 2A 0B BPL $F138 if (P/N Switch is off) /BB80
goto $F138

F12D: E6 45 LDAB $0045,X B = Idle Speed Throttle Follower Park/Neutral Scalar (=.69 Steps)
F12F: 4D TSTA if (A >= 0)
F130: 2A 05 BPL $F137 goto $F137

F132: 40 NEGA A = -A
F133: 3D MUL D = A * B
F134: 40 NEGA A = -A
F135: 20 01 BRA $F138 goto $F138

F137: 3D MUL D = A * B

F138: 9B C2 ADDA $C2 A += $C2
F13A: 97 C2 STAA $C2 $C2 = A
F13C: 32 PULA restore A from stack

F13D: 84 7F ANDA #$7F Clear PS Anticipate or A/C /BA80
F13F: 9A 41 ORAA $41 A |= $41 /BAxx
**********

Looks for AC req, then raises IAC amount of steps specified in lookup, waits a couple secs before going back into learn mode, my guess is so BLM doesnt change needlessly and cause a rolling idle, or such.

So, unless I'm missing something..which I really could be as I didnt REALLLLY look hard, and hell, I barely know what I'm looking at, it appears the only thing happens is IAC is raised a spec amount..(spec'd in the prom), then theres a delay before the ECM goes back to learn mode. My guess is the timer is there so let load even out before going back into learn mode. This would get away from the rolling idle that Ford 5.0's do when you turn the AC on.

BUT: If the IAC is raised, MAF goes up, and load/RPM then changes so timing changes. You said yourself your car idles smoother with more timing...well...looks like thats exactly whats happening. The idle is going up, the load is going up, and fuel/timing is read from a higher load area

If I am wrong, and I very well could be, please explain what you see so *I* can understand what you're getting at.
 
I am not certain I see where idle speed is raised when A/C comes on (at least in the factory prom). The code says to look at $3651 for the idle speed offset for A/C, but its set to 0. I've never really paid attention. Does idle speed really go up when A/C comes on, or does the engine just sound different because of the load (my car is down or I would go check).

I would think the load of the A/C compressor has a "dampening" effect on rpm swing.

By the way, Jim, the code at $E786 that seemed funny looks like this:
E786 D6 07 LDAB $07 Load $07 flags into B
E788 C5 40 BITB #$40 Check bit 6 (BLM has exceeded limits)
E78A 27 05 BEQ $E791 If BLM has not exceeded limits goto $E791
E78C F6 36 94 LDAB $3694 Load $3694 into B (44 dec, 2c hex in stock chip)
E78F D7 FF STAB $FF Store B into memory $FF (Default A/C idle speed steps)
 
Originally posted by Eric Stage I
. Does idle speed really go up when A/C comes on, or does the engine just sound different because of the load (my car is down or I would go check).


I'd haveta agree with you there Eric. I dont recall IAC going anywhere with the AC on, other than correcting the typical underspeed error. ie: nothing consistant..like 20 counts every time the compressor engages...
 
Originally posted by TurboJim
Are you suure? I'm no programmer, but looking at Mike Pitts disassembly, which I know is arguably correct:
If I am wrong, and I very well could be, please explain what you see so *I* can understand what you're getting at.

What Mike Pitts wrote about was in the PROM.
What I'm talking about is in the ROM.
The ROM is what is written on the chip on the Printed Circuit Board. The PROM only holds about 1/3 of the info the ecm uses.
 
Originally posted by bruce
What Mike Pitts wrote about was in the PROM.
What I'm talking about is in the ROM.
The ROM is what is written on the chip on the Printed Circuit Board. The PROM only holds about 1/3 of the info the ecm uses.

Wow...you mean $0000-$FFFF is on the PROM? I always thought the PROM started at $3000-$3FFF which was jumped to FROM ROM. Guess you learn something new every day :p
 
Originally posted by Eric Stage I
Maybe its the secret $GGGG-$HHHH code.:D

Eric

Welp?? See? I told you I wasnt a programmer. I didnt even know hex went to H either!! Guess I better get back to skool for some more skillz :D
 
Back
Top