The Great A/C FAQ
#1
Thread Starter
Boost Pope
iTrader: (8)
Joined: Sep 2005
Posts: 33,556
Total Cats: 6,933
From: Chicago. (The less-murder part.)
The Great A/C FAQ
Ok, I've been promising it to various people for a while, and I've finally gotten off my *** and decided to write this up proper. This FAQ describes how to make your A/C work with a standalone Megasquirt configuration. I should also note that all of this is 100% untested. I don't even have A/C in my car, so if this turns out to be wrong and your wiring harness catches on fire causing you to lose reproductive function, well, that was Darwin at work.
This is going to be a multi-part writeup, each section covering one specific generation of wiring. First off is the '90-'93:
For starters, I've pasted together a few pages from the '92 FSM here, this covers ECU (B-1c), Cooling fans (B-3) and HVAC (G).
First, an explanation of the stock configuration: When you depress the A/C button while the blower is on, assuming the thermoswitch (in the evap box) is closed, the ECU receives a closure to ground at pin 1Q, a light green / black wire, through the heater control unit. This is marked with the yellow dot in the diagram.
In response, the ECU provides a closure to ground on pin 1J (blue / black) which turns on the A/C relay. This is the red dot. That relay both energizes the magnetic clutch on the compressor and turns on the "additional" condenser fan.
Because the primary cooling fan relay is also cross-wired into the A/C relay's coil section through a diode on the black / green wire (the green dot), the primary cooling fan relay will also activate when the A/C comes on.
Thus, to make A/C work on a '90-'93 with a standalone MS, all you must do is put a jumper between pins 1Q and 1J at the ECU connector. When you press the A/C button, it will provide the closure to turn on the A/C relay, and the rest of the system will take care of itself.
The primary reason that this control mechanism passes through the ECU is that in the stock configuration, the ECU de-activates A/C when the throttle is depressed to WOT. This functionality can be mimicked in a standalone MS configuration in one of two ways.
If you have an analog TPS, you will need to configure a relay driver output of the MS. Configure one of the four "general" output pins of the MS as described in the Megasquirt documentation, using this circuit:
In Megatune, configure that output with a source of TPS, and an on-off limit just below whatever the ADC value of your TPS is at WOT. Thusly wired, the relay will activate at WOT. Use a 12 volt SPDT or DPDT relay. Now, instead of placing a jumper wire directly between 1Q and 1J, connect 1Q to the "Common" terminal of the relay, and 1J to the "Normally Closed" terminal. So when the relay is inactive (not at WOT) the two ECU pins will be jumpered, and when you go to WOT and the relay activates, the connection between the two pins will be broken.
If you have a switch-type TPS (stock on '90-'93 with 5-speed) then you can do this without involving the MS. On your TPS, the green / white wire (pin 2L at the ECU) closes to ground whenever the throttle is WOT, and floats at all other times. Connect the wires from 1Q and 1J to the relay terminals as above. Connect a source of switched +12 to the (+) side of the relay coil (the white/red wire is a good source for this) and connect the relay's (-) terminal to the green / white wire at ECU position 2L. Don't forget the flyback diode across the relay coil. Thusly wired, the relay will, as above, pass the 1Q - 1J connection when not active, and when you fully depress the pedal, the circuit through 2L will close, powering the relay and breaking the connection. Here is the relevant schematic from page B-1b of the FSM:
Update: idle compensation
Ok, I've got an idea about how to fix the idle dip and stalling problems. This is purely experimental.
Since your MS went in, your charcoal canister purge solenoid has been sitting there lonely and forgotten. Why don't we put it to use? (The purge solenoid is on the cold-side shock tower right next to the igniter.)
The purge valve goes between a port on the throttle body and the top of the charcoal canister. The solenoid is normally closed, and opens when energized. While the engine is running, disconnecting the hose from the port on the TB causes a momentary surge in idle. The MS quickly compensates with the main IAC, but this surge might just be enough to overcome the load of the A/C snapping on while at idle.
I edited the big image above, adding a takeoff of the Green/Blue wire at 1Q. Put a jumper between this wire and the yellow/red wire at 2X as indicated below. Leave the hose between the purge valve and the throttle body connected, but remove the hose between the purge valve and the canister.
Now, whenever the A/C first comes on, the solenoid will open an intake leak causing your idle to surge for about a second. This might be enough to prevent the engine from stalling when the A/C comes on. Of course, when the valve re-closes there is a dip in idle, but if this is accompanied by the A/C clutch releasing, then it might just all even out in the end.
Somebody give this a try and let me know how it goes.
With credit to RdSnake for the idea.
Chapter II: The 1.8 NA
Fundamentally, this system is exactly the same as the 1.6, with separate relays for clutch and condenser, and of course the main fan is driven by the ECU on these cars. I'm going to assume that you've already wired the fan driver of the MS to control the main fan on your car. Doing this mod has the side-benefit of giving you parallel cooling fan operation.
As before, two mods in one. The "simple" mod, in green, will operate the A/C whenever the button is pressed and the pressure and temp safeties are satisfied. The mod in red/purple disconnects the A/C at WOT, and requires a relay driver on the MS, configured exactly as in the 1.6 writeup.
Fortunately, the schematic and wire colors appear to be identical for all cars '94-'97, at least insofar as my Haynes manual is concerned. The only apparent difference is the positions of the various wires at the ECU connector.
In either case, note that both fan relays are hard-wired together, and the diode is there so that when the MS turns on the fan driver only the fans come on (not the A/C clutch) but when the A/C button is on, the clutch and both fans are energized.
Chapter III: Those Without Proper Headlights
Ok, Abe has finally provided the key piece of info for the NB (whether tis a closure to ground that the "A/C Amplifier" provideth) and thus shamed me into finishing this. Theory holds exactly as above, here's the wiring for the NBs:
And that's about it. Enjoy the A/C, you bunch of weak, roadster-hating pussies.
This is going to be a multi-part writeup, each section covering one specific generation of wiring. First off is the '90-'93:
For starters, I've pasted together a few pages from the '92 FSM here, this covers ECU (B-1c), Cooling fans (B-3) and HVAC (G).
First, an explanation of the stock configuration: When you depress the A/C button while the blower is on, assuming the thermoswitch (in the evap box) is closed, the ECU receives a closure to ground at pin 1Q, a light green / black wire, through the heater control unit. This is marked with the yellow dot in the diagram.
In response, the ECU provides a closure to ground on pin 1J (blue / black) which turns on the A/C relay. This is the red dot. That relay both energizes the magnetic clutch on the compressor and turns on the "additional" condenser fan.
Because the primary cooling fan relay is also cross-wired into the A/C relay's coil section through a diode on the black / green wire (the green dot), the primary cooling fan relay will also activate when the A/C comes on.
Thus, to make A/C work on a '90-'93 with a standalone MS, all you must do is put a jumper between pins 1Q and 1J at the ECU connector. When you press the A/C button, it will provide the closure to turn on the A/C relay, and the rest of the system will take care of itself.
The primary reason that this control mechanism passes through the ECU is that in the stock configuration, the ECU de-activates A/C when the throttle is depressed to WOT. This functionality can be mimicked in a standalone MS configuration in one of two ways.
If you have an analog TPS, you will need to configure a relay driver output of the MS. Configure one of the four "general" output pins of the MS as described in the Megasquirt documentation, using this circuit:
In Megatune, configure that output with a source of TPS, and an on-off limit just below whatever the ADC value of your TPS is at WOT. Thusly wired, the relay will activate at WOT. Use a 12 volt SPDT or DPDT relay. Now, instead of placing a jumper wire directly between 1Q and 1J, connect 1Q to the "Common" terminal of the relay, and 1J to the "Normally Closed" terminal. So when the relay is inactive (not at WOT) the two ECU pins will be jumpered, and when you go to WOT and the relay activates, the connection between the two pins will be broken.
If you have a switch-type TPS (stock on '90-'93 with 5-speed) then you can do this without involving the MS. On your TPS, the green / white wire (pin 2L at the ECU) closes to ground whenever the throttle is WOT, and floats at all other times. Connect the wires from 1Q and 1J to the relay terminals as above. Connect a source of switched +12 to the (+) side of the relay coil (the white/red wire is a good source for this) and connect the relay's (-) terminal to the green / white wire at ECU position 2L. Don't forget the flyback diode across the relay coil. Thusly wired, the relay will, as above, pass the 1Q - 1J connection when not active, and when you fully depress the pedal, the circuit through 2L will close, powering the relay and breaking the connection. Here is the relevant schematic from page B-1b of the FSM:
Update: idle compensation
Ok, I've got an idea about how to fix the idle dip and stalling problems. This is purely experimental.
Since your MS went in, your charcoal canister purge solenoid has been sitting there lonely and forgotten. Why don't we put it to use? (The purge solenoid is on the cold-side shock tower right next to the igniter.)
The purge valve goes between a port on the throttle body and the top of the charcoal canister. The solenoid is normally closed, and opens when energized. While the engine is running, disconnecting the hose from the port on the TB causes a momentary surge in idle. The MS quickly compensates with the main IAC, but this surge might just be enough to overcome the load of the A/C snapping on while at idle.
I edited the big image above, adding a takeoff of the Green/Blue wire at 1Q. Put a jumper between this wire and the yellow/red wire at 2X as indicated below. Leave the hose between the purge valve and the throttle body connected, but remove the hose between the purge valve and the canister.
Now, whenever the A/C first comes on, the solenoid will open an intake leak causing your idle to surge for about a second. This might be enough to prevent the engine from stalling when the A/C comes on. Of course, when the valve re-closes there is a dip in idle, but if this is accompanied by the A/C clutch releasing, then it might just all even out in the end.
Somebody give this a try and let me know how it goes.
With credit to RdSnake for the idea.
Chapter II: The 1.8 NA
Fundamentally, this system is exactly the same as the 1.6, with separate relays for clutch and condenser, and of course the main fan is driven by the ECU on these cars. I'm going to assume that you've already wired the fan driver of the MS to control the main fan on your car. Doing this mod has the side-benefit of giving you parallel cooling fan operation.
As before, two mods in one. The "simple" mod, in green, will operate the A/C whenever the button is pressed and the pressure and temp safeties are satisfied. The mod in red/purple disconnects the A/C at WOT, and requires a relay driver on the MS, configured exactly as in the 1.6 writeup.
Fortunately, the schematic and wire colors appear to be identical for all cars '94-'97, at least insofar as my Haynes manual is concerned. The only apparent difference is the positions of the various wires at the ECU connector.
In either case, note that both fan relays are hard-wired together, and the diode is there so that when the MS turns on the fan driver only the fans come on (not the A/C clutch) but when the A/C button is on, the clutch and both fans are energized.
Chapter III: Those Without Proper Headlights
Ok, Abe has finally provided the key piece of info for the NB (whether tis a closure to ground that the "A/C Amplifier" provideth) and thus shamed me into finishing this. Theory holds exactly as above, here's the wiring for the NBs:
And that's about it. Enjoy the A/C, you bunch of weak, roadster-hating pussies.
Last edited by Joe Perez; 11-13-2008 at 10:15 AM.
#3
Thread Starter
Boost Pope
iTrader: (8)
Joined: Sep 2005
Posts: 33,556
Total Cats: 6,933
From: Chicago. (The less-murder part.)
How exactly do you soft-start a magnetic clutch? I guess we could come up with a PWM control to replace the relay, but that's really a whole separate project. My aim here is to come up with a simple way for people to get their A/C working with a minimum of fuss. I'll chew on the soft-start idea, but I'm going to finish this series first.
#4
Yeah I was thinking PWM. Problem being is that sometimes when the comp cycles on, and I'm off throttle and coming to a stop (like in rush hour type traffic), the friggin car will stall. If it does catch itself, it will idle at like 300 rpm for a second, then raise itself and overshoot target, go into a series of 2-3 under/overshoot oscillations, and then idle fine.
#6
Thread Starter
Boost Pope
iTrader: (8)
Joined: Sep 2005
Posts: 33,556
Total Cats: 6,933
From: Chicago. (The less-murder part.)
As an interim solution, those of you not already using dual-table mode could trigger JS9 when the A/C comes on, and flip to a set of fuel and spark tables that are slightly richer and slightly more advanced in the idle region. That would probably help tremendously.
#8
i think a simpler and better solution is to use an electric solenoid/air valve that is wired to come on same time as the compressor and this soleoid would let extra air into the manifold raising the idle.
my own solution is to keep the factory ecu and let it control the idle valve. you keep idle up during compressor activation, turning the steering wheel and warmup. Its the best of both worlds.
my own solution is to keep the factory ecu and let it control the idle valve. you keep idle up during compressor activation, turning the steering wheel and warmup. Its the best of both worlds.
#9
Could for arguments sake. you inject a second pwm signal into the existing idle valve?
I ask this because the FCON mini piggyback unit splices in parallel to your injector harness and adds pw (for want of a better description) to your stock ecu signal so you have a longer fueling period for boost. (that is my interpretation, i haven't got a scope to confirm this and since MS the unit is unused)
Similarly injecting a pwm signal into your idle valve when A/C is on would let more air in raising your idle speed.
The alternate (and still unanswered in the MS forums :() is to have an idle DC table (similar to the bosst one) that allows modifying the signal under certain conditions (say when A/C is on or off).
I ask this because the FCON mini piggyback unit splices in parallel to your injector harness and adds pw (for want of a better description) to your stock ecu signal so you have a longer fueling period for boost. (that is my interpretation, i haven't got a scope to confirm this and since MS the unit is unused)
Similarly injecting a pwm signal into your idle valve when A/C is on would let more air in raising your idle speed.
The alternate (and still unanswered in the MS forums :() is to have an idle DC table (similar to the bosst one) that allows modifying the signal under certain conditions (say when A/C is on or off).
#12
Yeah I was thinking PWM. Problem being is that sometimes when the comp cycles on, and I'm off throttle and coming to a stop (like in rush hour type traffic), the friggin car will stall. If it does catch itself, it will idle at like 300 rpm for a second, then raise itself and overshoot target, go into a series of 2-3 under/overshoot oscillations, and then idle fine.
#14
Regards,
Dave
#15
Thread Starter
Boost Pope
iTrader: (8)
Joined: Sep 2005
Posts: 33,556
Total Cats: 6,933
From: Chicago. (The less-murder part.)
Spark and fuel is another good one- pile in some extra fuel and advance at 500 RPM or so. Also, have you played with the dashpot settings under the main Idle screen? You can give idleDC a little extra kick when you take your foot off the gas.
#16
My lowest bin now is 800 rpm (my idle is set at 1k - in part to help with the AC recovery and also that is where my high output alternator starts to kick in), I may rebin to further optimize. I'll add the DashPot settings to the list of tweaks and thanks again.
Dave
#18
Today was the first really warm day I drove my Miata around, and decided that no A/C really sucks. Went ahead and wired together 1J and 1Q, then added a 1n4001 diode between 1J/1Q and 2S (1L and 2S were already wired in parallel for both fans on my install) and plugged my boomslang back in. Turned the key to run, switched on the A/C switch, and selected a fan setting. *CLICK*
Started the car, advanced my idle timing and fuel a tick, then upped my idle settings to warm idle at 1200rpm and turned on the A/C. Seems to work okay at idle like that, however when you come down from a cruise RPM thats too much load for the IAC to recover since its so slow, the car dies. Gonna work on a table switching solution for that when I have time.
Started the car, advanced my idle timing and fuel a tick, then upped my idle settings to warm idle at 1200rpm and turned on the A/C. Seems to work okay at idle like that, however when you come down from a cruise RPM thats too much load for the IAC to recover since its so slow, the car dies. Gonna work on a table switching solution for that when I have time.
#19
Thread Starter
Boost Pope
iTrader: (8)
Joined: Sep 2005
Posts: 33,556
Total Cats: 6,933
From: Chicago. (The less-murder part.)
Well, glad it's sort-of working for you.
Since I never heard back from anybody on the 90-93 purge valve hack, why don't you try it on your car? You have a '95, right? If it's an early '95 then the wire to the purge valve itself is exactly the same- yellow / red at pin 2X. If it's a late '95, then yellow / red should be at 4T. Jumper that to the green / black wire at 1Q, and disconnect the hose between the purge valve and the charcoal canister. I'm really dying to know if this helps the situation.
Since I never heard back from anybody on the 90-93 purge valve hack, why don't you try it on your car? You have a '95, right? If it's an early '95 then the wire to the purge valve itself is exactly the same- yellow / red at pin 2X. If it's a late '95, then yellow / red should be at 4T. Jumper that to the green / black wire at 1Q, and disconnect the hose between the purge valve and the charcoal canister. I'm really dying to know if this helps the situation.