|
Title: NLS/LC B_gsch script workaround? Post by: redrum667 on April 10, 2025, 06:19:37 AM Hello,
I own a A3 3.2 V6 with DSG from 2004 (ME7.1.1). I've been looking around the forum and found the well-known PHP script. While reading the code i found that the script is looking for B_kuppl for the NLS but on my car i don't have a clutch pedal since it's DSG so the LC might work but not the NLS. Is there any workaround to use B_gsch instead? Regards <3 Title: Re: NLS/LC B_gsch script workaround? Post by: fknbrkn on April 10, 2025, 06:25:05 AM nls with dsg
is it joke? Title: Re: NLS/LC B_gsch script workaround? Post by: BlackT on April 10, 2025, 06:35:20 AM I think he want to make flames in neutral
Title: Re: NLS/LC B_gsch script workaround? Post by: redrum667 on April 10, 2025, 06:42:04 AM nls with dsg is it joke? No sorry i mean the logic behind NLS, to be precise the spark cut when the gear change. I said NLS because the script is called something like that but in my case it's a spark cut or you can maybe call it a DSG fart (which is not exactly that but the idea is here) Title: Re: NLS/LC B_gsch script workaround? Post by: fknbrkn on April 10, 2025, 09:02:24 AM No sorry i mean the logic behind NLS, to be precise the spark cut when the gear change. I said NLS because the script is called something like that but in my case it's a spark cut or you can maybe call it a DSG fart (which is not exactly that but the idea is here) if youre familiar with asm, just make some king of 'if (b_zwget) {tsrldyn = 0}' b_zwget fits better here as its an ignition intervention when shifting but it ends up with jerky shiftings as its always 100% intervention. probably some kind of flip-flop timer would be nice here idk try to force b_mdee and check redabmn (needs bit-shifting probably) for selective fuel-cut, the results could be better with this Title: Re: NLS/LC B_gsch script workaround? Post by: redrum667 on April 10, 2025, 09:47:28 AM if youre familiar with asm, just make some king of 'if (b_zwget) {tsrldyn = 0}' b_zwget fits better here as its an ignition intervention when shifting but it ends up with jerky shiftings as its always 100% intervention. probably some kind of flip-flop timer would be nice here idk try to force b_mdee and check redabmn (needs bit-shifting probably) for selective fuel-cut, the results could be better with this im quite familiar with asm yes okay ill check on it, i was looking after B_gsch because the few posts i saw here spoke about this one i mean yes i see the idea but im afraid my tuning experience is not good enough to play with REDBABMN and B_MDEE for the moment... ;D idk if you know about it but i should dump the full ECU and write on the MPC or the flash is good? Title: Re: NLS/LC B_gsch script workaround? Post by: prj on April 10, 2025, 12:24:10 PM You need to dump the uC as well. Many functions are there.
Title: Re: NLS/LC B_gsch script workaround? Post by: redrum667 on April 11, 2025, 12:25:17 AM You need to dump the uC as well. Many functions are there. Okay thanks, for the writing part i should write functions on the mpc? im wondering that because the script launch.php (NLS & LC) for ME7.X write everything into the flash if im not mistaking, no? Title: Re: NLS/LC B_gsch script workaround? Post by: fknbrkn on April 11, 2025, 12:47:15 AM attached cpu dumps as prj mentioned above, the first one should be yours.
you can write code anywhere as me7 doesnt have mpc region like modern ecus. personally i prefer 0x8C0000 (seg #230h) as its usually free Title: Re: NLS/LC B_gsch script workaround? Post by: redrum667 on April 11, 2025, 07:59:01 AM attached cpu dumps as prj mentioned above, the first one should be yours. you can write code anywhere as me7 doesnt have mpc region like modern ecus. personally i prefer 0x8C0000 (seg #230h) as its usually free thanks fknbrkn for the pointers and the CPU dumps, that helped clear things up a lot. Wasn’t sure if the whole “MPC region” thing applied here or not, you made it super clear. Would dropping a small routine at 0x8C0000 and jumping there from a nearby check make sense? And is there a known subroutine or pattern where B_gsch is evaluated during gear transitions that people usually hook into? Title: Re: NLS/LC B_gsch script workaround? Post by: fknbrkn on April 11, 2025, 09:38:46 AM you shoul aim at the variable you want to change
tsrldyn for example. personally i prefer to make a hook at the place the variable getting its value but tsrldyn a bit complex here therefore 2 or 3 different locations but youve already got a nice place from NLS script (movb rl4, ub iirc) replace stock code with 'calls' to your routine, dont forget to execute stock code which youre replaced with calls and 'rets' to return to stock routine, ALS routine perfect example for that ie movb rl4, ub -> calls #8Ch, #1234h ; (0x8C1234) ; DA 8C 34 12 8C1234: jnb b_gsch, loc_end movb tsrldyn, zeros loc_end: movb rl4, ub rets i might be wrong somewhere as i didnt check actual code but i hope you got the idea and again. shiftings would be really jerky with that code. b_gsch is a shifting event even without torque reduction, using it a bad idea at all b_zwget - torque reduction with ignition intervention is better but if you are really want to operate with tsrldyn, at least some kind of comparing with migs_w should be done imo Title: Re: NLS/LC B_gsch script workaround? Post by: prj on April 11, 2025, 11:35:38 AM attached cpu dumps as prj mentioned above, the first one should be yours. you can write code anywhere as me7 doesnt have mpc region like modern ecus. personally i prefer 0x8C0000 (seg #230h) as its usually free Uhmm... he wrote that he has a 2004 ME7.1.1 A3. That has a ST10F MCU with a large flashable uC part. Your 32kb roms do not apply here. Title: Re: NLS/LC B_gsch script workaround? Post by: fknbrkn on April 11, 2025, 01:36:29 PM ::)
a bit different story then Title: Re: NLS/LC B_gsch script workaround? Post by: redrum667 on April 11, 2025, 02:02:57 PM Title: Re: NLS/LC B_gsch script workaround? Post by: prj on April 11, 2025, 03:31:20 PM in a good way? ??? Dump your whole ECU, more than half the code is not in the extflash.Title: Re: NLS/LC B_gsch script workaround? Post by: redrum667 on April 11, 2025, 03:32:18 PM Some news ! :(
I extracted my original flash file from my ECU (using kess so not the full read). I used Me7Info to see the definitions (idk exactly what i should call them) and begin to work on a automated script to add the DSG-Farts-Spark-Cut I'm really surprised, i cannot find definitions for b_zwget neither b_gsch ??? HWNumber = {0261208088} SWNumber = {1037369383} PartNumber = {022906032CB } SWVersion = {5604} EngineId = {MOTRONIC ME7.1.} If someone want to check the .ecu file see attached Title: Re: NLS/LC B_gsch script workaround? Post by: redrum667 on April 11, 2025, 03:37:32 PM Dump your whole ECU, more than half the code is not in the extflash. I'll do that, what I was thinking when I read the launch.php script (NLS & LC ME7.X) is that the script adds functions in a “rather simple” way. I wanted to adapt it to simply add the ignition cutoff on gear change, but I couldn't find the definitions for b_gsch and b_zwget, they could be defined elsewhere in the MPC/uC for example? Title: Re: NLS/LC B_gsch script workaround? Post by: redrum667 on April 13, 2025, 01:20:12 PM UPDATES
To achieve what I want to do, I need to find the address where b_zwget will be stored at runtime. Using ME7info.exe I thought it was going to be easy (not at all ;D), I have neither the b_zwget variable nor B_GSCH so I can't write my function because I won't be able to “tell the ECU” what to do when b_zwget starts populating because I don't know where it is. I've tried to find .kp, .a2l, damos and others but I can't find any that answer my question, the only thing I've found is a golf 5 R32 damos that I pull out of I don't know where ??? (but which shares the same PartNumber = {022906032CB } as my car) and which tells me when I open it via WinOLS in the RAM folder that B_ZWGET is at address FDAA and B_GSCH is at F062C. The “problem” is that I'm not 100% sure of the info because even if the flags are at the same address between winols & the .ecu there are some differences... :-\ From now on, what I'm going to do is directly log the car and look for the address of this damned “b_zwget”, unless someone has the answer to my question and can provide me with the address, but in the meantime I'm going to work on it solo and keep on searching the forum for info because I won't have the car to hand for a few days. I'm writing this just for the record... Title: Re: NLS/LC B_gsch script workaround? Post by: redrum667 on April 14, 2025, 12:07:09 AM Here is my bin just in case
Title: Re: NLS/LC B_gsch script workaround? Post by: prj on April 14, 2025, 01:27:50 PM Look at the FR where it's used, find other variable located by ME7Info that is used "close" by tracing this variable you will find your bitfield.
Title: Re: NLS/LC B_gsch script workaround? Post by: rogerius on April 15, 2025, 01:18:28 AM Here is my bin just in case I think B_gshc is FD1A.9. Title: Re: NLS/LC B_gsch script workaround? Post by: BlackT on April 15, 2025, 05:33:53 AM UPDATES Post that A2L you have Then I can find what you are looking for in your fileTo achieve what I want to do, I need to find the address where b_zwget will be stored at runtime. Using ME7info.exe I thought it was going to be easy (not at all ;D), I have neither the b_zwget variable nor B_GSCH so I can't write my function because I won't be able to “tell the ECU” what to do when b_zwget starts populating because I don't know where it is. I've tried to find .kp, .a2l, damos and others but I can't find any that answer my question, the only thing I've found is a golf 5 R32 damos that I pull out of I don't know where ??? (but which shares the same PartNumber = {022906032CB } as my car) and which tells me when I open it via WinOLS in the RAM folder that B_ZWGET is at address FDAA and B_GSCH is at F062C. The “problem” is that I'm not 100% sure of the info because even if the flags are at the same address between winols & the .ecu there are some differences... :-\ From now on, what I'm going to do is directly log the car and look for the address of this damned “b_zwget”, unless someone has the answer to my question and can provide me with the address, but in the meantime I'm going to work on it solo and keep on searching the forum for info because I won't have the car to hand for a few days. I'm writing this just for the record... Title: Re: NLS/LC B_gsch script workaround? Post by: redrum667 on April 15, 2025, 01:06:34 PM Post that A2L you have Then I can find what you are looking for in your file Here is the V632.a2l Also the Damos_r32.ols (022906032CD) is the file i found where you can see the RAM in Winols. What i did was looking into Damos_r32.ols, some bits arent the exact same as mine but some are at the same RAM address when i crosscheck with my own .ecu file made with ME7INFO. Title: Re: NLS/LC B_gsch script workaround? Post by: rogerius on April 16, 2025, 02:24:32 AM I think B_gshc is FD1A.9. andI think B_zwget is FDAA.7 Title: Re: NLS/LC B_gsch script workaround? Post by: fknbrkn on April 16, 2025, 03:18:33 AM you can use migs_w for your routine aswell
Title: Re: NLS/LC B_gsch script workaround? Post by: redrum667 on April 16, 2025, 03:01:47 PM you can use migs_w for your routine aswell So you advise me to not bother using b_zwget and directly check migs_w? |