Check the info you have against this: http://www.msgpio.com/manuals/mshift/newtrans.html
and let us know what doesn't line up and might need changes.
There are a total of nine solenoid valves, two of which are 3 way valves and as such my current understanding is that they should be either on or off so there should be no need for PWM control on those two: valve solenoids SL and SR. SL switches the Lock-Up Relay Valve and the Reverse Control Valve, SR switches the Clutch Apply Control Valve and the Sequence Control Valve. For these it appears that the Spare Ports 1 and 2 (VB1, VB2) of the MegaShift may be suitable. However, I did run across a note saying that 8 of the 9 solenoids were PWM. So far I've not found where that reference applies.
The remaining 7 solenoid valves are all PWM controlled. SL1 through SL5 control clutches C1 through C4 and brake B1, SLU controls brake B2 and the lock-up clutch, and SLT gives variable line pressure control.
Supposing that the 3 standard and one spare PWM driver ports of the MegaShift were used for clutches C1-C4 that leaves a requirement of 3 more PWM solenoid drivers for B1, B2/lock-up, and line pressure, or possibly 4 more PWM drivers if one of the 3 way solenoids is actually a PWM unit (doubtful I think).
A speedometer output will be needed. Obviously that should not pose a problem.
A gear indicator output of some type would be very useful, as with 8 gears it is easy to get lost.
As far as the needed inputs are concerned, I'm guessing some of those should be available off the CAN bus such as TPS, MAP, Engine Temp and Tach.
The three speed sensors in the tranny are Hall Effect sensors: NT (input shaft), NC3 (intermediate shaft) and SP2 (output shaft). NT should be redundant if the Tach input is used, NC3 may be useful for feedback about what gear is being used at any given time, and SP2 will be needed to provide a speedometer output.
ATF temp, ATF pressure and gear selection inputs are available. In addition a mode switch and upshift/downshift inputs are required, as well as a Brake input. Kickdown command can be enabled via software or as a switched input.
The gear selector outputs four lines: P,R,N, and D, however a different control scheme can be adopted. In addition it outputs a line for Manual mode and Shift Up(+) and Shift Down(-). These last two are also available for paddle shift.
One final input I would like to include is "Clutch". The function of this input is to disengage the driveline. It might be possible to run this input into the "N" line but the other gear selector lines would have to be disabled simultaneously. This might be easier with the 3-wire (GM) or Ford schemes.
The stock IS-F has 3 modes of operation: Normal, Sport, and Snow. These vary shift, engine, and braking parameters. 2nd gear launch is enabled in Snow mode.
Clutch-to-clutch pressure control is used for shifting via PWM solenoids 1-5 and line pressure, TCC lock-up can be enabled in gears 2 through 8. Obviously PWM shifting parameters must be precisely tuned.
The IS-F uses advanced shift control methods which take advantage of throttle-by-wire to provide features such as throttle blip on downshift, dynamic upshift and downshift smoothing, AI (Artificial Intelligence) shift control to anticipate driver's needs based on recorded patterns, automatic downshift for braking on downhill sections of road and upshift delay on uphills, and traction enhancements. These are undoubtedly well beyond the scope of this effort, but some use of ignition timing control and IAC might be useful as those functions seem to be enabled in MegaShift. Upshifts with actual mechanical shift times of .05 seconds on upshift and downshifts of .3 seconds or less are possible, including gear overlap. Initiation delay is dependent on the controller of course, the Lexus controller gives .2 seconds minimum on upshift and downshift and I'm convinced that is due to ECM processor delay and can be improved on. However, for off throttle downshifts it is desirable to stretch the time base out to minimize traction loss from drag.
I do have truth tables for solenoid actuation, power flow charts, solenoid pressure curves (non-graduated) and more.
I think that about covers it for now.
As for the inputs, it looks like things might need to be juggled a bit to get the necessary inputs connected. Assuming 4 lines for the shifter and 3 for the manual gear change plus one for brake that's 8 digital inputs. Add clutch and kickdown and we're up to 10.
Then there is the output shaft hall effect sensor (and possibly the one for the intermediate shaft).
I think all that leaves are ATF temp and ATF pressure, both of which would be analog inputs.
So, if the VR inputs can be used for Hall effect that will handle the two speed sensors and leave 2 spares. Then if the 4 EGT inputs are used for GPIx inputs that's enough, provided the kickdown function can be set up in the shift tables, except for the ATF temp and pressure.
Lance, do you see a way to include these last two inputs? If two of the digital inputs can come in on the VR lines that might work, or reduce the number of lines from the shifter (Ford method) or even possibly bringing them in on the MS-II inputs?
Also if the Ford scheme is adopted (fixed resistors) it shouldn't be too hard to make the clutch switch in the resistor value for N and that might do the trick, depending on how the tables are set up for re-engagement from neutral.
The GPIO has 4 'on-board' high current outputs (PWM1-4, VB1-4). The PWMx circuits are all connected to timer ports, allowing very accurate and fast (or slow) PWM. The VBx circuits are not connected to timer circuits, but can be PWM by 'bit-banging' in software. Any of the outputs can be used for higher current if they are used to controller the appropriate switching component mounted off the board (liker a tTIP120 mounted on the case with a mica insulator, for example). As always, flyback voltages have to be considered (and these depend entirely on the device being switched).
The VR inputs work fine with Hall inputs. The EGT circuits can be used as digital inputs (as well as ADCs).
There is an ATF sensor input circuit in the standard MShift build, it is on circuit GPI3 (processor port AD2).
There is a line pressure sensor input ion EGT2 (AD4).
The input switch scheme depends on what the manufacturer did. In some cases they had redundant switches, and some of them can be left unconnected to MShift. In any case, the voltage based scheme might work (though the voltage difference between gears would be fairly small).
There are provisions in the code for input and output shaft speed sensors (VR1, VR3)
I am not sure what this refers too. MShift uses up to 4 shifter inputs, then two inputs for the manual shift (paddle-shifter) buttons. There is a brake sensor in the code (GPI4/AD7).Assuming 4 lines for the shifter and 3 for the manual gear change plus one for brake that's 8 digital inputs. Add clutch and kickdown and we're up to 10.
The code has no provision to add the ability to select neutral. In most electronically auto transmissions, neutral can *only* be selected by moving the lever (which acts directly on the hydraulic circuits) - this limits the number of catastrophic failure modes. I have no plans to add a 'clutch' function.
MShift has the ability to soften shits using timing retard, and has idle-up functions when in gear (using timing and IAC as specified by the user).
It sounds like it'll work anyway, with maybe a few fairly simple hardware mods. Adding the TIP-120's and diodes is no problem. What does that leave on the software end of things? SL1-5 are all pressure high with current rise, as is SLU, but SLT (line pressure) is pressure low with current rise and SL and SR are 3 way valves and should be on/off. I think I saw where you had settings for all that, but what about setting up the correct solenoid outputs for the correct gear engagements, is that something that can be done in the settings or will it need code changes?
No problem on the clutch function, that was exactly what I expected to hear so we're cool. If anything does come of it I'll let you know.
I can send you the relevant files if/when you need them. If there's a place to upload them I'd be glad to do that.
The line pressure in the current code is low PWM% = high pressure (though in the table the numbers are inverted so that they make more sense). So that looks similar to what you have. http://www.msgpio.com/manuals/mshift/V2code.html#tg
The solenoids are controlled by specifying whether the current is on or off in each gear. So that info can be entered directly: http://www.msgpio.com/manuals/mshift/V2code.html#h Then you can also specify the PWM percentage and period when 'on': http://www.msgpio.com/manuals/mshift/V2code.html#gp.
If you want only fully auto mode or fully manual, you only need to specify PRD (N the same as P). The code will use the table if in auto mode, and shift manually if you use the shifts buttons. The lever is only used for a few things:
- If it is Park (Neutral) or Reverse, then the solenoids are set accordingly, and the shift table is ignored.
- If it is not P or N or R, then the gear lever position limits the highest gear the code will shift to in auto mode (or manual mode).
So if you don't want to keep the gears in the lower ranges (you would rather shift manually in those cases), you only need to have 3 distinct gear lever positions, and this can be done with two switches.
The information is easiest for me to understand in table form. For example, the state of each solenoid in each gear, like shown here: http://www.msgpio.com/manuals/mshift/4L ... l#settings We need a table of:
- each input and output on the GPIO and the intended use in that application,
- the gear lever status in each gear (for each switch, or the analog voltage),
- the solenoid states in each gear,
- the PWM percentage and frequency for each gear (and ideally the maximum current, and/or the resistance and inductance),
- the wiring details for the trans (the connector(s) pin-out),
- the number of teeth on the input shaft and output shaft for the speed sensors,
- the transmission's internal gear ratios,
- the temperature sensor resistance versus temperature curve (or at least three sample points).
We also need notes on any other functions the trans might have. You can attach files to this forum - there is a 'upload attachment' tab under the posting text box.
I had to trim 3/4 of the pages out of the file to fit the upload limit but I think I got the most important parts. I don't have the solenoid parameters yet, and unless someone can get them for me I'm at a roadblock on that for now, but as that's one of the final tuning parameters I guess there is time to figure that one out. I also don't have the tooth numbers yet or the curve of the temp or pressure sensors, but those can be calibrated against actual checks if need be. (not the best obviously but a decent last resort) I do have a complete wiring diagram but it's 1/2 Meg so it would have to be cut down also to upload.
There is an awful lot of additional information in that transmission file, particularly dealing with it's advanced functions. If you want I could quarter it and upload it in 4 parts. Same with the wiring diagram.
- AA80E condensed file.pdf
- AA80E 8-speed automatic condensed file
- (213.62 KiB) Downloaded 942 times
That looks like very good info. It may take me a little while to 'digest' it all properly, then I'll see what we can do with the current code, and what might need to be added.