I took the car to the drag strip last night. No major issues, but I did see some unusual behavior, after looking at the data. See attached screen shot.
On the 1-2 and 2-3 shifts, the controller seems to be confused what gear it wants. On the 1-2, it briefly selects 3rd gear for "target Gear", but for some reason, it doesn't occur (thankfully).
On the 2-3 shift, it commands 3, then immediately commands 4. But I have the shift lever in M3, so it stays in 3rd.
Coast down has some weird behaviors also.
Any ideas on this?
MSL and MSQ are attached. MShift 5.101 code.
In your log, there is a switch from one shift table to the other at 1891.454 seconds (the field is "4WD"). I am not sure if that is deliberate or not. If it is not deliberate, it could point to a cause of some of your issues, as jumping between tables can cause exactly the sorts of issues you see. In your case the tables are very different (all 4ths in the second table, a fairly normal first table). So if this was mine I would tie the 4WD switch to either ground or 5V if it isn't being actively used. I might also make the second table identical to the first if you aren't actively using it (you can export the good table and import it to the other table rather than copying everything over).
However, there are momentary spikes in the target gear up to 3rd in the 1-2 shift, and down to 3rd while in 4th, and that isn't the way it is supposed to work. It looks to me like the shift to 4th is being driven by the rpm limiting (6000 rpm at 78 mph) but the table still calls for 3rd at that speed so the target gear drops back to 3rd (but the controller won't downshift the trans because that would over-rev the engine). So you might need to adjust one or both of the rev limit or the shift table so that they don't conflict with each other.
Some of this over-rev that is apparently immediately after a shift happens because the controller thinks the shift is shorter than it actually is (so the higher revs during a shift are provoking another shift because the controller is being told the shift is done so start checking the revs again). So you might want to increase the "shift pressure delay" (from 8msec to about 160 msec or more) and the shift completion delay table values to be no less than 350 msec (from the 200 at 100%, 200 at 90% TPS, etc. that they are now). That ought to help a fair bit.
That doesn't mean there aren't problems in the code, but we should sort out these things first.
Yes, I am using the 4WD switch to be able to switch to an alternative shift table. For now I am using it as a poor boy's manual mode. My up and down shift points in-part throttle range are not optimized yet, so on the street, if it's acting up (shift hunting) I can flip the switch. The table has all "4"s in it, so it commands 4th gear. I can then manually shift it into a lower gear, with the lever. On my first pass on the track last night, during coast down, it abruptly downshifted from 3 to 2, which I wasn't expecting and don't think the shift table reflect that. That was going to be question #2 for you. So to get by at the track, and not waste time debugging it, I just flipped the 4WD switch, and took manual control over with the lever, during coast down, and idling back to the pits.
Bingo !! This is what I was missing. So the rest of the story... Over the winter, I rebuilt the 4L60E, put in the Sonnax 6-pinion planet set (you'll notice my 1st and 2nd ratios are different). So not quite knowing what the new mph shift points would be, near my 6000 rpm ideal shift point, I was using the rpm limiting feature as a "Safe guard", similar to GM's PCM controller(?). I use to bump the MPH tables slightly higher at WOT, and let the PCM shift at the rev limit. But now that I have some data (mph for various gears at high rpms), I can update the table properly. And I will add it the more proper hydraulic timing delays. I may have more questions on that, as I dig into it."So you might want to increase the "shift pressure delay" (from 8msec to about 160 msec or more) and the shift completion delay table values to be no less than 350 msec"
I like your Tach+Load shift tables, almost. It is what I need for WOT shifting. Benifit is being able to program different RPM shift points for different gears. But I don't think it would work very well on the street, unless I'm missing something in how it works. On the street, I think the MPH method would be better behaved (just putting around, not racing). Is it possible to have a "blended" setup? ie use the "MPH + Load" table at lower loads, then switch over to the "Tach+Load" table at higher loads?
It's possible to do this, though I would have to think carefully about how to implement it.
There's not a lot of difference between the rpm and mph based tables, as rpm is mostly a function of the mph and ratios.
However, would it be better for your application to have a separate rpm limit value (for the rev limiting) for each forward gear? At first glance that seems the most general solution and it should be fairly straightforward to implement.
Okay, I will start implementing the separate rpm limits, and post back here when I have something for you to try (likely a few days).
Here is 5.102iii 'per gear rev limit' test code you can try:
The INI is needed to expose the 'per gear' upper and lower rev limits. You will get an INI warning about the old limits (lower rev_limit and rpm_limit) not having an equivalent settings, you can ignore this (it will only happen the first time you load the INI). But your old RPM limit values will be discarded and you need to set the new ones (under 'General Settings -> Rev Limits').
This code hasn't been tested so use conservative RPM values and test with great caution.
I had a chance to experiment with different line pressures during the 2-3 shift, to try to soften it, to prevent some binding that I think the data was showing. I read some of your on-line manuals which were very helpful in understanding these shifting adjustments.
But I am still having a strange down-shift occurring during coast down, an undesirable 3-2 downshift, after getting out of the throttle. You can see this at time 2136 in the attached msl. It appears tGear is still following the 100% load portion of the table, even though I am completely out of the throttle, and MShift.Load is = 0.
This happened at the track the other night, also.
What am I missing?