Trigger hysteresis using avload instead of load?

A forum for discussing applications and implementations of the MegaShift transmission controller code for the GPIO from B&G. This can control up to 8-speeds and 6 shift solenoids (plus a 16x9 table for controlling a PWM line pressure valve). It has manual and fully automatic modes (16x9 load x speed table), with under and over rev-limit protection, and full data logging of all inputs and outputs (among many other abilities). A TransStim to test your completed board is also available.
Addicted
Posts: 188
Joined: Mon Oct 14, 2013 7:14 am
Location: Winchester, England

Re: Trigger hysteresis using avload instead of load?

Post by Addicted »

I've just found that I never downloaded vii, I went straight from vi to viii. This means when I tested viii it was combined with the ini file for vi

Would this explain a few things? sorry if this means you've been on a wild goose chase....
Bernard Fife
Posts: 1696
Joined: Fri Apr 04, 2008 1:28 pm

Re: Trigger hysteresis using avload instead of load?

Post by Bernard Fife »

Martin,

It's not a problem, I am sorry to you for not solving this issue for you sooner! In any case, I don't think any of those versions were leading us down quite the right path (I think we had identified the problem, but probably not the best solution). The next code will have a new approach to the load hysteresis entirely, and I am hoping that it will be the real thing.

Lance.
"Never wrestle with pigs. You both get dirty and the pig likes it." - George Bernard Shaw
Bernard Fife
Posts: 1696
Joined: Fri Apr 04, 2008 1:28 pm

Re: Trigger hysteresis using avload instead of load?

Post by Bernard Fife »

Martin,

Here is some code for you to try:
Monitor_5099zxii.abs.s19
(83.11 KiB) Downloaded 504 times
GPIO_MShift_5099.ini
(278.62 KiB) Downloaded 536 times
This code works properly on my bench. But it has a number of hysteresis changes, some of which are major, so proceed with great caution. I would first try to make sure the comms worked, then shift through the gears with the lever to make sure you can engage forward and reverse gears repeatedly, then drive cautiously for a short distance to see how the code works for you. If you were able to grab a datalog, that could be very helpful.

I wont bore you with the details of the changes just yet, but I think they might help solve the hysteresis issue. However, these changes probably also require some more tweaking, too.

Lance.
"Never wrestle with pigs. You both get dirty and the pig likes it." - George Bernard Shaw
Addicted
Posts: 188
Joined: Mon Oct 14, 2013 7:14 am
Location: Winchester, England

Re: Trigger hysteresis using avload instead of load?

Post by Addicted »

Thanks for that Lance, loading it up in TS I get an error:
hyst_timer value of -2.147483648E8 is too low.
Must be greater than : 0.0
Bernard Fife
Posts: 1696
Joined: Fri Apr 04, 2008 1:28 pm

Re: Trigger hysteresis using avload instead of load?

Post by Bernard Fife »

Martin,

Is this when you load your MSQ? If so, then go to 'General Settings -> Shift Factors -> Shift Hysteresis Time' and set the value to something sensible. The default is 3.5 seconds, you can try anything from 1.0 to 25.0 seconds (I would start with the default). The error was likely because this parameter didn't exit in older versions on the code.

However, if this error is occurring before you load your MSQ, you might need to re-download the code and reload it to your GPIO because it may be corrupt.

Lance.
"Never wrestle with pigs. You both get dirty and the pig likes it." - George Bernard Shaw
Bernard Fife
Posts: 1696
Joined: Fri Apr 04, 2008 1:28 pm

Re: Trigger hysteresis using avload instead of load?

Post by Bernard Fife »

Martin,

I looked a bit deeper into this. In turns out that I had two variables named hyst_timer in the code (but not the INI), one in the input parameters (in2ram.) and one in the output channels. To clarify this, I have change the INI (which will again affect the parameter you had the problem with earlier, so you might see a similar problem again). The names should be stable after this INI:
GPIO_MShift_5099.ini
Changed name of input parameter hyst_timer to hyst_delay (hyst_timer is used internally for the output channel hyst [outpc.hyst_timer] to count down the time hysteresis from the user value of in2ram.hyst_delay).
(278.59 KiB) Downloaded 511 times
Lance.
"Never wrestle with pigs. You both get dirty and the pig likes it." - George Bernard Shaw
Addicted
Posts: 188
Joined: Mon Oct 14, 2013 7:14 am
Location: Winchester, England

Re: Trigger hysteresis using avload instead of load?

Post by Addicted »

It occurred when I loaded the latest INI into my Tuner Studio project properties. I thought I'd better raise it with you first.. I'll continue then..
Bernard Fife
Posts: 1696
Joined: Fri Apr 04, 2008 1:28 pm

Re: Trigger hysteresis using avload instead of load?

Post by Bernard Fife »

If the controller was connected at the time (or possibly if TS is set to restore old setting on loading new code, I don't know much about those things), the missing parameter value (from TS's stored set) would likely confuse TS. I don't get that error here, so I think you are safe to carry on! Lance.
"Never wrestle with pigs. You both get dirty and the pig likes it." - George Bernard Shaw
Addicted
Posts: 188
Joined: Mon Oct 14, 2013 7:14 am
Location: Winchester, England

Re: Trigger hysteresis using avload instead of load?

Post by Addicted »

Sorry Lance, didn't work..

load and avload look very odd in the datalog, the 3-4-3 shift still occurs... I've attached my tune file too just in case..
Attachments
CurrentTune.msq
(57.1 KiB) Downloaded 481 times
Copy of 2015-04-02_09.00.40.msl
(710.25 KiB) Downloaded 475 times
Bernard Fife
Posts: 1696
Joined: Fri Apr 04, 2008 1:28 pm

Re: Trigger hysteresis using avload instead of load?

Post by Bernard Fife »

Thanks for trying this, I will dig through the log. Lance.
"Never wrestle with pigs. You both get dirty and the pig likes it." - George Bernard Shaw
Post Reply