Miata Turbo Forum - Boost cars, acquire cats.

Miata Turbo Forum - Boost cars, acquire cats. (https://www.miataturbo.net/)
-   MEGAsquirt (https://www.miataturbo.net/megasquirt-18/)
-   -   Blower speed and AC switch input (https://www.miataturbo.net/megasquirt-18/blower-speed-ac-switch-input-80126/)

Rallas 07-24-2014 09:29 AM

Blower speed and AC switch input
 
This past weekend my brother re-configured my MS2 so I can get better idle when AC kicks ok. The MS looks at 1Q grounding (AC clutch energized) then bumps up idle 300rpm and after short delay allows the 1J output to energize the AC clutch relay. It works great! Much better idle with AC on now!

Here is the problem, it only works with the blower switch in position 1. If I move it to 2,3 or 4 it will not keep the clutch on. Every now and again you can see the clutch try to engage and the fans bump. The MS shows the AC input coming in briefly and then going away.

If I take the blower switch back to 1 it works great! I have looked at 3 different wiring diagrams for my 91 and cannot see anything that would show the circuit that grounds 1Q changing with fan speeds. Am I missing something here?

Could I just have a bad blower switch? It doesn't make sense because it controls the 4 blower speeds just fine.

I am about to go back to jumpering 1Q and 1J, and wire an input off of the AC clutch circuit to let the MS know that the clutch is on. I will not be able to delay the compressor start after bumping up the idle, but I will at least still be able to increase idle duty cycle when AC is on. I tested it in blower speed 1 with no delay and it is still enough to prevent a stall when I come to a stop. I will then wire in a N/C relay contact in the AC coil control circuit to work as a high RPM or TPS based AC cutout.

Does anyone know why I would see the AC input on 1Q in blower speed 1, but not in the other three speeds?

DNMakinson 07-24-2014 09:43 AM

I don't have the wiring diagram in front of me. However, if the switch has one contact set that selects fan speed and a separate, wiping symbol that is in series with the A/C switch, then that wiper-looking contact set is bad. I'm thinking that is very likely.

Braineack 07-24-2014 10:06 AM

what exactly did your brother do?

Rallas 07-24-2014 11:44 AM

Miata Specific research:
https://www.miataturbo.net/megasquir...-verify-67046/

Hardware Mods:

AC input circuit:
1Q -> Active Low Input Circuit > DIP40pin10 > JP4 > PEO
http://www.msextra.com/doc/ms1extra/...s/lowinput.jpg

AC output circuit:
1J -> Relay Control Circuit (1K, TIP120, IN4001) -> AD6

Firmware = ms2extra_3.3.2

Software Configuration:

Startup/Idle > Air Conditioning Idle-up
A/C Idle-up=ON
Idle-up Output=AD06/JS5
Idle-up Input=PE0/JS7
Idle-up Input Polarity=Low
Idle-up Delay(ms)=0
Idle-up Min RPM=0
Compressor Delay Since Last On(s)=0
Idle-up Duty Adder(%)=17.4

MS Testing:
Tested mods on Stim: Output grounds when Input goes low

Car/Wiring testing:
Confirmed that grounding 1J causes AC compressor clutch to engage
Confirmed that 1Q is going to ground when AC sw is on and Fan on 1

Observations:
Intermittent grounding behavior on 1Q when AC sw is on and Fan on 2.3.4. This is odd as blower, AC, and fans work correctly when 1Q and 1J is jumpered?

Proposed next steps:
I need to verify the expected behavior on 1Q so I can confirm or deny the possible wiper issue on fan switch dial.

Follow up Questions:
Can somebody point me to a (confirmed) diagram or description of what we are supposed to be seeing on 1Q on a 91?

Thanks,
Servaas (Relte's Brother)

Rallas 07-24-2014 11:57 AM

What he said^^^^! Sorry, i just know enough to get in trouble.

Braineack 07-24-2014 12:07 PM

I'd look at the input circuit built.

I'm guessing that circuit is keeping the voltage higher, enough where it's above the MS's low trigger point and the MS is not triggering the output.

if you actually measure the voltage at 1Q, youll see it's very low when on fan speed 1, and rises slightly as you go up to fan speed 4.

take a reading on 1Q on the different fan speeds and report back. IIRC the voltage needs to drop below ~1.7v before the MS will consider it "triggered"

im also guessing, that if you ground 1Q by hand when the fan speed is at 4, it will work. (you can introduce the ground at the thermoswitch plug).


I think you need a 12v pull-up, 1Q might stay at 12v normally when off, i cant remember, you can test.

I suggest building the circuit that MS3X expander uses for teh tableswitch input: http://msextra.com/doc/general/ms3v3schems.html#ms3x

DNMakinson 07-24-2014 01:17 PM

My further thought is that if all 4 speeds worked before, it is doubtful it just went bad. More likely a wiring error.

Rallas 07-28-2014 07:53 PM

The voltages measured were 4.6V with fan off, 0.9V speed 1, 1.4V on 2, 1.6V on 3 and 1.7V on 4.

Braineack 07-29-2014 08:07 AM

voltages are in line with what I measured last time. I was having a similar issue in my car, but that was after something randomly odd happened in it where EVERYTHING was screwed up. Never could quite figure out what the cause was. But I eventually switched my input on the mainboard (using that active-low) to bringing it in on the expander board and that at least solved that.

Rallas 07-29-2014 05:03 PM

Great,Those voltages explain the observed behavior.

I am first going to try changing the pull-up resistor on the existing circuit. With a higher ohm resistor it should keep voltage below the threshold on all the fan speeds.

Servaas

Nicolas L 08-04-2018 10:06 PM


Originally Posted by Braineack (Post 1150924)
I'd look at the input circuit built.

I'm guessing that circuit is keeping the voltage higher, enough where it's above the MS's low trigger point and the MS is not triggering the output.

if you actually measure the voltage at 1Q, youll see it's very low when on fan speed 1, and rises slightly as you go up to fan speed 4.

take a reading on 1Q on the different fan speeds and report back. IIRC the voltage needs to drop below ~1.7v before the MS will consider it "triggered"

im also guessing, that if you ground 1Q by hand when the fan speed is at 4, it will work. (you can introduce the ground at the thermoswitch plug).


I think you need a 12v pull-up, 1Q might stay at 12v normally when off, i cant remember, you can test.

I suggest building the circuit that MS3X expander uses for teh tableswitch input: Megasquirt Manual Index - Megasquirt EFI


I know this thread is super old but it explains my issue better than I could have. I'm having the same exact problem with my A/C.
Has anyone ever figured out how to go around it?

I get the idea of testing with adding a ground to the thermoswitch when the AC is on to see if changing the speeds still drops off the A/C, but what would be a more permanent solution to that? Is there any way that I can switch a second ground that way?

Or maybe I need a bigger valued resistor to make the grounding easier?

Any tips are appreciated, I tore apart my A/C because of this thinking it was hardware problems lol (came up with the idea that the pressure switch may have been faulty, but even with a new one I'm having the same issues)

sixshooter 08-07-2018 07:36 AM

I'm glad you bumped this thread. My AC compressor often times won't stay engaged when the fan speed is at 4 on my Rev built ms3 basic. I wonder if there are any other options other than soldering something on the board. That's not something I'm comfortable with doing myself with the soldering tools I have.

Nicolas L 08-07-2018 06:07 PM

As soon as the temp of my garage drops from 200C I'll try soldering a higher resistor, something like 5k or so, to see if it improves any. I'm glad to hear I'm not the only one, I was about to buy a new board just to try rebuilding mine, it's been through two different car configs so I was afraid that I had damaged the board with heat, but seems like it's all good.

sixshooter 08-07-2018 06:52 PM


Originally Posted by Nicolas L (Post 1495276)
As soon as the temp of my garage drops from 200C I'll try soldering a higher resistor, something like 5k or so, to see if it improves any. I'm glad to hear I'm not the only one, I was about to buy a new board just to try rebuilding mine, it's been through two different car configs so I was afraid that I had damaged the board with heat, but seems like it's all good.

You're going to do what with the what? I'm paying attention.

Nicolas L 08-07-2018 08:20 PM

So the AC in has a pullup, holds it at 5v unless grounded by the switch, when grounded, the idea is that the current through the resistor is low enough that the voltage drop across it is close to 0, if the resistor is too small, the current is higher.

Anyway, the other idea would be to ground the idle up pin that comes from the switch.

When switched to 3 or 4, there is an extra pin that comes out towards the ECU to tell it to idle up a bit, kinda like the one coming from the power steering. If in the switch all the grounds are interconnected, then we'd have a stronger ground once switched to 3 or 4. I might give it a try, that wouldn't need any Megasquirt modifications.

Nicolas L 08-07-2018 10:23 PM

Well, changed it for a 5.5k and I get nothing now, the MS doesn't see it for some reason, I'm thinking of doing 12v pull up instead.

WestfieldMX5 08-08-2018 03:19 PM

Having the same issue with a ms3 pro. Using DI3. No idea though what pullup it uses and to what voltage. Are the schematics for the ms3 pro out there somewhere?

sixshooter 08-08-2018 04:08 PM


Nicolas L 08-08-2018 07:25 PM

Ehhh, I think I'm a dumbass.
I'm getting confused with my own proto here.

I have a 2N2222 in the middle of it and I don't know what for lmao.
Does anyone have the AC in/out proto circuit?

Seems like the transistor is pointing towards the output of the AC. So I got the pullup for the in, and then from JS5 I have it going to the transistor and to IAC1B which I believe it's my AC out. I wish I could find the page where I have all the fucking ports written up, but I don't, I'll have to trace my harness to see what pin goes to what.

Nicolas L 08-08-2018 08:13 PM

Ok some progress, while soldering the pull up resistor my cable that takes that input into JS11 had disconnected so that's why I wasn't getting shit with the 5.5k resistor.
After I figured that out and I figured out that the 2n2222 is to help the CPU drive a relay, I put the 5.5k back, and I made SOME progress.
In my case it used to drop moving it from 1 to 2, now I can move it to 2 with no issues. The problem between 2 and 3 continues. I'll proceed to ground the thermoswitch and report back.

Nicolas L 08-11-2018 02:39 PM

No progress with the 10k pull up, at least I can run it in 2 now. Must be the fucking switch. I looked into it and I see the thick ground but it all looks properly connected but could not take out that part without having to disconnect all the cables that go to the heater box. I'm open for ideas.

Nicolas L 05-08-2020 01:03 PM

I haven't fixed this shit yet. Summer coming up and I think about it again.
Would it help to use a relay before the input to the MS? The ground from the switch closes a relay that goes to the best ground in the county and that triggers the MS?
Can I do this electonically in the protoboard with a transistor or something like that?

sixshooter 05-08-2020 02:47 PM

My compressor clutch sometimes drops out when I flip it to speed number four. I don't have a solution either.

Nicolas L 05-08-2020 08:18 PM

Does your idle also drop randomly and almost kills the engine? I have a weird issue where my closed loop targets 800rpm instead of the 900 of the AC-ON, but the clutch is still engaged. So I had to set the AC min RPM to something like 750 or it would just take the engine with it.

Nicolas L 05-20-2020 08:15 PM

Well I might be going skookum about this but I got an arduino nano that I'll use to filter the input to the MS.
I'm gonna get the input from the pullup circuit that would go to my JS11, intercept it with the analog in of the arduino, then code it so it's this board the one giving the HIGH in to the JS11, and not the protoboard.
When the AC is off the value at the pullup is 5v no problem, but it only drops to 2v in speed 4 of the fan. A problem for the MS, but not an issue for the resolution of the arduino. I have 5v/1024 values, so 2v would be around 512, so I'll set it so if the value is under 800 adc, sends a HIGH to the output that goes to JS11, and when it goes over 900 then goes to LOW (some hysteresis in case one day the ground is slightly worse or something, I'm sure that with AC off it's gonna be well above 900 anyway)

I'll report back soon. I'm already getting other ideas to use this thing for. Canbus with other analog inputs, temps and what not, should work. The board was 4 bucks, so even if it's overkill, can't beat the cost of having working AC (assuming this works).

Plenty of room in my MS2 DIY box, so I can play with this shit, but I don't see why you couldn't just hotglue this tiny board to the outside of an PNP or the inside of the box and wire it to it. I can power it from the 5v from the proto, this thing, uses like 20mA of current

Nicolas L 05-20-2020 11:46 PM

1 Attachment(s)
it fucking works! It works so well, finally.

How to:

Buy an Arduino nano without headers (the pins sticking out).
Get some 22awg single strand wire and connect:
Arduino / MS
-D8 -> JS11 (or whichever input you are using.)
-A2 -> input from the AC switch, still use the pull-up circuit.
-GND -> Proto GND
-5v PIN -> Proto 5V.

If you choose another pin for whatever reason, change the declarations in the code below.
Code here:


int acIn = A2; // PIN A2 as the input from the AC switch
int acOut = 8; // Digital Pin 8 as the pin for the High/Low output
int analIn = 0; // (pun intended) variable to store the value coming from the AC in reading
int i = 0 ; // for the loop I use for average values
int sum = 0 ; //sum for the average

void setup() {
Serial.begin(9600); //only used for debugging, not really needed.
pinMode(acOut, OUTPUT); //set the acOut pin (D8) as an output.
}

void loop() {
// read the value from the AC swtich 10 times and average it.
sum=0;
for (i=0; i<10; i++){
analIn = analogRead(A2);
sum = sum + analIn;
delay(10);
}

analIn = sum / 10; //store the average value of 10 readings

// 0v = 0, 5v = 1023, in speed 4, my voltage readings are around 2v, 5v when AC OFF
if (analIn < 650){ //if the readings are lower than ~3.17v then set it High
digitalWrite(acOut, HIGH);
} else if(analIn > 850){ //I use a high value because I for sure have 5v when AC is off, I don't want it jumping off
digitalWrite(acOut, LOW);
}

Serial.println(analIn); //just printing the read values for debugging, I used it to figure out what values I needed



}



That's it, over the top, but it gets the shit done, I was tired of dealing with that AC bullshit, I consider my ECU conversion finally over, that was the last bit I needed. After this, my car is 100% more drivable in summer months, couldn't be happier.

Don't laugh at my wires, but this is what it looks like. Progress over perfection. You can even drill a hole on the sideplate to access the USB.
Also I've considering adding a diode on the 5v line so your Arduino never tries to power the ECU when you connect the USB. But the 0.6v drop concerns me. Through the 5v pin you should only feed 5v, if you're planning on using 12v, use VIN. I don't see myself connecting the USB anytime soon if this works fine, so I got lazy and left it like that. But if I add CAN and a few things to this thing I would probably do something then.
Attachment 236513


All times are GMT -4. The time now is 05:57 PM.


© 2024 MH Sub I, LLC dba Internet Brands