Jump to content

DI "Latch" setting won't persist or remain saved to the ECU


Pete_89t2

Recommended Posts

Some background - I recently finished a rewire of my series 6 FD RX7, which is running on a G4+ Fury. Since it has a working DBW throttle body, I'm trying to restore cruise control functionality using the OEM Mazda switch gear and the G4+. Attached is my current tune file for reference, and a screen shot of the "Cruise" tab view I have set up in PCLink, with all the relevant cruise control settings.

1127291923_Cruisecontrolsettings.png.9713f36b8c47caac032e2521fb64cded.png

The problem I'm having is that "Input latch" setting for DI 3, which is used for the "Cruise On" function that you see above won't persist in the ECU after I key off the ignition switch. Since the Mazda OEM "cruise on" switch is a momentary contact type, which sends +12V power to the DI3 input when pressed, I have the ON level set to HIGH, and I need to use the latch function to keep its state ACTIVE after releasing the switch.

After saving these settings to the ECU, I tested them and they appear to work as they should (i.e., DI3 goes ACTIVE when I hit the cruise ON switch, and OFF when I hit it a 2nd time), but I discovered that if I shut the ignition off and then turn it back on, I'll see that the latch setting reverts back to its OFF state. All the other settings above persist as they should after a power down/up cycle. Any thoughts on how to fix this, short of replacing the OEM switch gear with a toggle switch?

Baseline Tune -v1 (post rewire - working copy v2).pclr

Link to comment
Share on other sites

2 hours ago, Adamw said:

Cruise on switch latch is done in the cruise settings rather than on the DI.

TyIRWWt.png

 

I have the "Cruise On" switch set to momentary in that menu as well (ref. screen shot in original post), but unless I also set the latching to ON in DI3, the status of the cruise on / DI3 won't remain active when I release the cruise switch.

Is this another one of those things where the order at which you apply the settings and save them to the ECU matters?

I've also tried changing the "Cruise On" setting you referenced to "toggle", and it behaves the same way - since the hardware is a normally open, momentary contact switch, when I depress it it goes active, and as long as the DI3 latch is set to ON it will stay active until I press the switch again. But regardless of the way I have the "cruise on" set (momentary or toggle), I lose the DI3 latch setting when I power down; on power up, it defaults back to OFF.

Link to comment
Share on other sites

1 hour ago, Adamw said:

It should be set to momentary and you have to press the button/switch for at least one second from memory.  If it is not working for you then please attach your tune and a log.

The car's not running yet, still need to finish fabricating the IC piping, so it will be a while until I can get a log with it running. Would a manually triggered log showing the switch functionality be of any use? It seems to function fine with the settings I have as attached to the 1st post, but for some reason the ECU clears that latch setting on DI3 when  the ECU powers down.

Link to comment
Share on other sites

Are you looking at the parameter "Cruise control status", it should toggle between off and enabled everytime you press the button/switch.

 

4 minutes ago, Pete_89t2 said:

Would a manually triggered log showing the switch functionality be of any use?

Yes.  Just do a Log showing you pressing the cruise on button a couple of times.  

 

4 minutes ago, Pete_89t2 said:

but for some reason the ECU clears that latch setting on DI3 when  the ECU powers down.

It forces the DI latch off because you cant have a latch on the DI as it is already built-into the cruise enable function.  

Link to comment
Share on other sites

15 hours ago, Adamw said:

Are you looking at the parameter "Cruise control status", it should toggle between off and enabled everytime you press the button/switch.

 

Yes.  Just do a Log showing you pressing the cruise on button a couple of times.  

 

It forces the DI latch off because you cant have a latch on the DI as it is already built-into the cruise enable function.  

Ok, I pulled a couple of manual logs, and attached the tune file. Added a time plot view, and made sure "Cruise control status" is logged/displayed. The file "log #1" is after an ignition switch power cycle; note that the DI3 reverts to latching OFF, and it shows what happens as I press the various cruise control switches individually in sequence - cruise on/enable, then the set/resume/cancel. Also tapped the brake & clutch a few times to ensure those inputs are working. The set/resume/cancel switch is on AN6, and its thresholds are programmed based on the voltages measured in testing and they appear to be set correctly -- but something really weird happens whenever I hit "cancel" - the cruise status changes to "Enabled", then to "Off" when you hit cancel a 2nd time, behaving the way the "Cruise ON/Enable" switch should.

The file "log #2" is essentially the same procedure as log #1, except that I set the DI3 latch back to its ON state before recording.

I'm stumped at this point, but I also noticed that the lockouts won't allow me to set the minimum cruise lockout speed down to 0 MPH for testing purposes, is it possible that this is what's causing the issues?

Log #2 - after reseting DI3 Latch to ON.llg Log #1 - after fresh power cycle (DI3 defaulted to latch OFF).llg Baseline Tune -v1 (post rewire - working copy v2).pclr

Link to comment
Share on other sites

Ok I see the problem now, you have cancel switch set up as both an analog input and a DI, all cruise inputs must be one or the other.  So a couple of options;

  1. You could rewire the cruise on switch with a resistor to the same analog 6 as the other switches so that all cruise switches are then seen as a variable voltage on AN6.  I would need to know the resistances of the other switches to suggest a resistor value.
  2. Another option is you dont actually need a cancel switch (although resume function wont work without it) - so you can use the cancel switch as the main on/off, just by assigning the correct voltage in the analog switch thresholds.

 

3 hours ago, Pete_89t2 said:

but something really weird happens whenever I hit "cancel" - the cruise status changes to "Enabled", then to "Off" when you hit cancel a 2nd time, behaving the way the "Cruise ON/Enable" switch should.

This is because you have both cruise on and cancel set to the same voltage - so effectively it is seeing both buttons pressed at the same time.

Link to comment
Share on other sites

1 hour ago, Adamw said:

Ok I see the problem now, you have cancel switch set up as both an analog input and a DI, all cruise inputs must be one or the other.  So a couple of options;

  1. You could rewire the cruise on switch with a resistor to the same analog 6 as the other switches so that all cruise switches are then seen as a variable voltage on AN6.  I would need to know the resistances of the other switches to suggest a resistor value.
  2. Another option is you dont actually need a cancel switch (although resume function wont work without it) - so you can use the cancel switch as the main on/off, just by assigning the correct voltage in the analog switch thresholds.

 

This is because you have both cruise on and cancel set to the same voltage - so effectively it is seeing both buttons pressed at the same time.

I'm not quite following the highlighted statement above. Are you saying you can't use a mix of DI's and analog inputs to implement all of the cruise functions - it's an either/or proposition? I wired it the way I did based on the available Mazda OEM switch gear, and what I had available as DIs/analog inputs. The "cancel" switch is part of the cruise "set/resume/cancel" switch on the steering wheel; it's a 2 terminal momentary contact device that changes its resistance across the 2 terminals depending on which switch is pressed, so I wired that to the analog input along with "set" & "resume". For the cruise on/enable function, I thought I could use a DI for that as Mazda has a separate momentary switch for that on the dash cluster that outputs +12V when it's depressed. I see now that by ignoring the "On switch voltage" threshold under the analog switch thresholds menu, I inadvertently set my "Cancel" and "Cruise ON" to the same values.

If I were to adjust the analog threshold voltage for "Cruise ON" to a value that can't possibly happen on that analog input, say 3.5V, based on its design and how its wired, would it then simply accept the on/off input from DI3 as the "cruise on" switch function as I intended it to? If that won't work, then I think your option #1 would make sense, though it won't be as easy since I'd have to de-pin a few terminals in that cruise switch so it doesn't send +12V power to the analog input.

Link to comment
Share on other sites

8 hours ago, Pete_89t2 said:

Are you saying you can't use a mix of DI's and analog inputs to implement all of the cruise functions - it's an either/or proposition?

Correct, most analog cruise switches (variable resistance) do all 4 functions (enable, cancel, set, resume), and then in those few cars that use the digital input method you will find all of the switches will be digital inputs, so the ECU has only been designed to work with one or the other, not a combination of both.  Your car is the first time I have come across one that had a separate enable switch with all others as analog signals.

 

8 hours ago, Pete_89t2 said:

If I were to adjust the analog threshold voltage for "Cruise ON" to a value that can't possibly happen on that analog input, say 3.5V, based on its design and how its wired, would it then simply accept the on/off input from DI3 as the "cruise on" switch function as I intended it to?

  No the firmware has been designed to only allow one or the other, since you have an analog switch assigned it will ignore the other.

 

8 hours ago, Pete_89t2 said:

then I think your option #1 would make sense, though it won't be as easy since I'd have to de-pin a few terminals in that cruise switch so it doesn't send +12V power to the analog input.

You would want one side of the switch connected to ground and the other side spliced to AN6 or the other cruise switch signal wire, the resistor can be on either side of the switch.

 

Link to comment
Share on other sites

3 hours ago, Adamw said:

Correct, most analog cruise switches (variable resistance) do all 4 functions (enable, cancel, set, resume), and then in those few cars that use the digital input method you will find all of the switches will be digital inputs, so the ECU has only been designed to work with one or the other, not a combination of both.  Your car is the first time I have come across one that had a separate enable switch with all others as analog signals.

 

  No the firmware has been designed to only allow one or the other, since you have an analog switch assigned it will ignore the other.

 

You would want one side of the switch connected to ground and the other side spliced to AN6 or the other cruise switch signal wire, the resistor can be on either side of the switch.

 

Bummer, I was hoping I wouldn't have to mess with my new wiring harness or the OEM wiring again.

Link to comment
Share on other sites

Thanks for helping me sort this out -- it now works after making a few wiring revisions to the OEM Mazda harness needed to connect the main cruise on/off switch to AN6, so all the cruise function switches are now all on an analog input.

Just a suggestion for the next update to the PCLink help file/documentation -- add a note in there to highlight the fact that the cruise function switches (i.e., cruise ON/enable, set, resume & cancel) need to be all on an analog input or all on digital inputs, not a mix of both. Since the documentation doesn't explicitly state anywhere that you can't have both analog & digital inputs for these switches, most guys will design their wiring harnesses around their switch gear and specific installation. In my case, that meant using a mix of an analog & digital inputs to minimize the need to alter the OEM factory wiring. 

Link to comment
Share on other sites

That was a quick update - you guys are on point!

One other question though - since I'm still in the process of building this car, I haven't road tested the cruise functions yet; all of my testing so far was limited to static powered up testing with the ECU & PCLink connected. After reading thru the revised documentation notes above, and based on how it's formatted as a list, it would imply that the all analog or all digital input note applies to the brake switch, clutch switch and the speed source, as well as the Cruise On/Enable, and Set/Resume/Cancel switch functions. I hope that's not the case, because I have the brake, clutch and speed sensor wired to digital inputs. Anyway, if I'm correct, more clarification of the documentation may be needed here.

Link to comment
Share on other sites

All the ones where the name starts with "Cruise" need to be the same type (digital or analogue)

The brake, clutch and speed on digital are fine, and working well on mine.

The only thing to note is that the "Cruise light" functionality is currently broken.

Link to comment
Share on other sites

It is just like any other input or output in the ECU - you can one have a function assigned to a single input or output.  For instance you cant assign IAT to an analog input and IAT to a temp input at the same time as the ECU will not know which one to use.  

When you assign the "Cruise Control Switches" function to an analog input, then the On switch, Set switch, Cancel and resume are all assigned to that analog input.  You cant then assign "cancel" to a digital input at the same time as it is already assigned to a DI.  

All of the other switches you mention - clutch, brake etc, are fine as you only have them assigned to one input.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...