1993 F150 4x4 - Trans Tooning
-
- Posts: 5121
- Joined: 2021 Feb 15, 12:23
- Location: Metairie, LA
- Vehicle Information: Work Truck
'19 F-150 3.3L
Re: 1993 F150 4x4 - Trans Tooning
That would be the slip ratio function that commands the tcc duty cycle during shift for controlled slippage.
-
- Posts: 5121
- Joined: 2021 Feb 15, 12:23
- Location: Metairie, LA
- Vehicle Information: Work Truck
'19 F-150 3.3L
Re: 1993 F150 4x4 - Trans Tooning
Added a 1st gear hold patch to keep her in 1st with the tcs. Just posted a newer XDF as well.
- Attachments
-
- efloth_240404a4b.bin
- (56 KiB) Downloaded 23 times
-
- Posts: 309
- Joined: 2021 Feb 15, 22:12
- Location: Sacramento CA
- Vehicle Information: 1991 F150 4.9L J1X 80lb Injectors E85
1995 F150 5.8L MOB1
Re: 1993 F150 4x4 - Trans Tooning
Nice! It works and is much cleaner code. It still freewheels on decel. It would be nice to have engine braking, but I can always put it in manual low if that is not possible. I believe b7_Ra2 this is the coast clutch bit but based on the clutch application chart it should already be applied.
Another final step is creating tcc lock/unlock points based on vss.
Code: Select all
91,80,a2 orb Ra2,80 B7_Ra2 = 1;
Another final step is creating tcc lock/unlock points based on vss.
-
- Posts: 5121
- Joined: 2021 Feb 15, 12:23
- Location: Metairie, LA
- Vehicle Information: Work Truck
'19 F-150 3.3L
Re: 1993 F150 4x4 - Trans Tooning
if its not locking the ccs on decel then you may have obfuscated some code as thats normal operation
tcc scheduling is pretty simple to do
tcc scheduling is pretty simple to do
-
- Posts: 309
- Joined: 2021 Feb 15, 22:12
- Location: Sacramento CA
- Vehicle Information: 1991 F150 4.9L J1X 80lb Injectors E85
1995 F150 5.8L MOB1
Re: 1993 F150 4x4 - Trans Tooning
I will double check. Here is the logic in KID2 with named addresses. I am trying to determine if the coast clutch is disengaged in this case.
Code: Select all
CCC_CST_CLTCH_CTL_COM1:
9308: b1,08,33 ldb R33,8 R33 = 8;
# TM_CS_DLY TIMER CONTROL
930b: 31,de,13 jnb B1,Rde,9321 if (FLG_FRST_CM = 1) { # (shift commanded)
930e: 9b,e8,cf,33 cmpb R33,[Re8+cf]
9312: d7,0d jne 9321 if (R33 = GR_OLD) {
9314: 99,06,d9 cmpb Rd9,6
9317: d7,08 jne 9321 if (GR_CM = 6) {
9319: b3,e2,d5,38 ldb R38,[Re2+d5] R38 = TMCSOD;
931d: c7,e8,fa,38 stb R38,[Re8+fa] TM_CS_DLY = R38; } } } # TM_CS_DLY = TMCSOD
# (delay coast clutch engagement
# in third gear to prevent two
# elements being on at once)
9321: 99,06,db cmpb Rdb,6
# TM_CS_ENG TIMER CONTROL
9324: d7,13 jne 9339 if (PDL = 6) { # (PRNDL = 3)
9326: 37,a2,10 jnb B7,Ra2,9339 if (B7_FLG_CS_CM_a2 = 1) { # (coast clutch commanded on)
9329: 3d,a2,0d jb B5,Ra2,9339 if (B5_FLG_CS_FRST_a2 = 0) { # (1st pass thru)
932c: b3,e2,d4,38 ldb R38,[Re2+d4] R38 = TMCSE3;
9330: c7,e8,fb,38 stb R38,[Re8+fb] TM_CS_ENG = R38; # (coast clutch will be engaged when timer expires)
9334: 91,20,a2 orb Ra2,20 B5_FLG_CS_FRST_a2 = 1; # (set first pass flag)
9337: 20,1e sjmp 9357 goto 9357; } } }
9339: 99,04,db cmpb Rdb,4
933c: df,05 je 9343 if (PDL != 4) {
933e: 99,02,db cmpb Rdb,2
9341: d7,14 jne 9357 if (PDL != 2) goto 9357; }
9343: 9b,e8,d9,33 cmpb R33,[Re8+d9]
9347: d7,0e jne 9357 if (R33 = PDL_LST) { # (4-2 or 4-1)
9349: 3d,a2,0b jb B5,Ra2,9357 if (B5_FLG_CS_FRST_a2 = 0) { # (first pass thru)
934c: b3,e2,d3,38 ldb R38,[Re2+d3] R38 = TMCSE2;
9350: c7,e8,fb,38 stb R38,[Re8+fb] TM_CS_ENG = R38; # coast clutch will be engaged when timer expires)
9354: 91,20,a2 orb Ra2,20 B5_FLG_CS_FRST_a2 = 1; } } } # (set first pass flag)
9357: 9b,e8,d0,33 cmpb R33,[Re8+d0]
# COAST CLUTCH OUTPUT CONTROL
935b: d7,05 jne 9362 if (R33 = GR_DS_TV) {
935d: 71,7f,a2 an2b Ra2,7f B7_FLG_CS_CM_a2 = 0; # (verifing a 3-4 upshift, de-energize Coast clutch)
9360: 20,27 sjmp 9389 goto 9389; }
9362: 9b,fd,e8,00,00 cmpb R0,[Rfc+e8]
9367: d7,08 jne 9371 if (CS_PDL_4 = 0) {
9369: 99,06,db cmpb Rdb,6
936c: d1,03 jleu 9371 if (PDL > 6) {
936e: 36,a6,15 jnb B6,Ra6,9386 if (B6_VSFMFLG_a6 = 0) goto 9386; } }
9371: 9b,e8,fa,00 cmpb R0,[Re8+fa]
9375: d7,0a jne 9381 if (TM_CS_DLY = 0) {
9377: 98,d9,33 cmpb R33,Rd9
937a: df,05 je 9381 if (R33 != GR_CM) { # GR_CM <> 4
937c: 91,80,a2 orb Ra2,80 B7_FLG_CS_CM_a2 = 1; # (energize coast clutch output)
937f: 20,03 sjmp 9384 goto 9384; } }
9381: 71,7f,a2 an2b Ra2,7f B7_FLG_CS_CM_a2 = 0; # (de-energize coast clutch output.
# Coast clutch is off hydraulically
# in 4th. Coast clutch is on
# hydraulically when PDL = 2 or 1)
9384: 20,03 sjmp 9389 goto 9389; }
9386: 71,7f,a2 an2b Ra2,7f B7_FLG_CS_CM_a2 = 0;
9389: 91,01,a2 orb Ra2,1 B0_Ra2 = 1;
INFER COAST CLUTCH ENGAGEMENT
938c: 3f,a2,07 jb B7,Ra2,9396 if (B7_FLG_CS_CM_a2 = 0) {
938f: 71,bf,a2 an2b Ra2,bf B6_FLG_CS_ENG_a2 = 0; # (coast clutch is hydraulically off)
9392: 71,df,a2 an2b Ra2,df B5_FLG_CS_FRST_a2 = 0;
9395: f0 ret return; }
9396: 9b,e8,fb,00 cmpb R0,[Re8+fb]
939a: d7,09 jne 93a5 if (TM_CS_ENG = 0) { # (timer expired)
939c: 9b,e8,fa,00 cmpb R0,[Re8+fa]
93a0: d7,03 jne 93a5 if (TM_CS_DLY = 0) {
93a2: 3e,df,09 jb B6,Rdf,93ae if (B6_FLG_PWR_df = 1) goto 93ae; } } # (power on)
93a5: 3c,df,09 jb B4,Rdf,93b1 if (B4_FLG_SFT_MDN_df = 1) return;
93a8: 3e,df,06 jb B6,Rdf,93b1 if (B6_FLG_PWR_df = 1) return;
93ab: 3f,4a,03 jb B7,R4a,93b1 if (B7_FLG_DEL_MDN_4a = 1) return; }
93ae: 91,40,a2 orb Ra2,40 B6_FLG_CS_ENG_a2 = 1; } } }
93b1: f0 ret return;
-
- Posts: 309
- Joined: 2021 Feb 15, 22:12
- Location: Sacramento CA
- Vehicle Information: 1991 F150 4.9L J1X 80lb Injectors E85
1995 F150 5.8L MOB1
Re: 1993 F150 4x4 - Trans Tooning
My brain hurts. I tried setting TM_CS_ENG to TMCSE3 and it's back to disengaging entirely on decel. Not sure if I'm up against the physical limitation of the transmission or my code is hosed. Either way mission accomplished so thanks for all the help.
-
- Posts: 309
- Joined: 2021 Feb 15, 22:12
- Location: Sacramento CA
- Vehicle Information: 1991 F150 4.9L J1X 80lb Injectors E85
1995 F150 5.8L MOB1
Re: 1993 F150 4x4 - Trans Tooning
Hold 1st patch worked out great towing today. She's got too much timing in her under light throttle above 2500 RPM. Started pinging pretty heavy so I pulled over and stuck it in low range and set wot threshold down to 250 for safety. Pulled fine the rest of the way enriched.
-
- Posts: 309
- Joined: 2021 Feb 15, 22:12
- Location: Sacramento CA
- Vehicle Information: 1991 F150 4.9L J1X 80lb Injectors E85
1995 F150 5.8L MOB1
Re: 1993 F150 4x4 - Trans Tooning
I used the development mandatory tcc lockup code to bypass the factory first gear tcc code. SW_MLK is now read from memory address 77e which is controlled by the patch code now. Lockup at 28 mph and unlock at 20 is hard coded but I made scalars to adjust as needed.
Code: Select all
794a: ef,27,28 call a174 Sub_a174 ();
794d: ff nop
794e: 39,42,0c jb B1,R42,795d if (B1_R42 = 0) {
Code: Select all
Sub_a150:
a150: 99,02,d9 cmpb Rd9,2
a153: d7,17 jne a16c if (Rd9 = 2) {
a155: b1,02,34 ldb R34,2 R34 = 2;
a158: 99,38,8d cmpb R8d,38
a15b: de,05 jlt a162 if (R8d >= 38) {
a15d: c7,ee,fe,34 stb R34,[Ree+fe] [77e] = R34;
a161: f0 ret return; }
a162: 99,28,8d cmpb R8d,28
a165: d6,04 jge a16b if (R8d < 28) {
a167: c7,ee,fe,00 stb R0,[Ree+fe] [77e] = 0; }
a16b: f0 ret return; }
a16c: b1,06,34 ldb R34,6 R34 = 6;
a16f: c7,ee,fe,00 stb R0,[Ree+fe] [77e] = 0;
a173: f0 ret return;
Sub_a174:
a174: 3f,e0,04 jb B7,Re0,a17b if (B7_Re0 = 0) {
a177: c7,ee,fe,00 stb R0,[Ree+fe] [77e] = 0; }
a17b: b3,ee,fe,42 ldb R42,[Ree+fe] R42 = [77e];
a17f: f0 ret return;
-
- Posts: 5121
- Joined: 2021 Feb 15, 12:23
- Location: Metairie, LA
- Vehicle Information: Work Truck
'19 F-150 3.3L
Re: 1993 F150 4x4 - Trans Tooning
why not just use the tcc lock and unlock functions?
-
- Posts: 309
- Joined: 2021 Feb 15, 22:12
- Location: Sacramento CA
- Vehicle Information: 1991 F150 4.9L J1X 80lb Injectors E85
1995 F150 5.8L MOB1
Re: 1993 F150 4x4 - Trans Tooning
I figured this was easier than trying to decipher The first gear tcc functions. I didn't dive into it much but it's very different than the other gears.