NefMoto

Technical => Tuning => Topic started by: sn00k on January 06, 2012, 08:21:51 PM



Title: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 06, 2012, 08:21:51 PM
So.. ive been testing a "wotbox" for a few days, and this thing is awesome..

..and so i came across a thread here where i found ppl have been able to implement these 2 functions into the me7.x.. now i find this REALLY interesting and i would love to learn how to do this, and also i would like to modify the function a bit to suite my needs for this car.

Im working on this me 7.5, 06A906032HN box, original bin attached.

now my knowledge in assembler is very rusty, but higher levels i have a better understanding of, so i went thru the routine that zetzi wrote, v2, and his pseudo code for this one, and that is pretty much what i want to accomplish.. except for a few minor tweaks.

i understand patching asm isnt really an easy task, and so ive been gathering info.


ive located unused space to place the new data for setting the conditions of this new function, the new variables added in setzis pseudo code, and placed them starting at 0x17E00:

SpeedThreshold: 0x17E00
LaunchRPM: 0x17E02
IgnitionCutDuration: 0x17E04
RPMThreshold: 0x17E06
AccPedalThreshold: 0x17E08


FTOMN is located at: 0x1A43D

then ive tried to locate the adresses of the RAM variables needed, and came up with this after some basic research:

tsrldyn: 0x380BB7
B_kuppl: 0x00FD4E
vfil_w: 0x381C0C
nmot_w: 0x00F89E
wped: 0x3809B1
B_brems: ??? - i cannot find this one atm, any help would be appreciated.


now the next step would be to dissassemble the image.. and ive been using IDA Pro.. using the siemens c166 family cpus, and more specific the c167, trying to dissasemble this into something understandable where i could fetch the adresses of needed variables, and where to link-in and put the code..

i have used an oem bin for reference and then one with launch control/NLS implemented.


skipping ahead to the new function.. i would eventually like to place it somewhere around A9C00, as this space seems to be free to use, from my limited understanding, as i cannot find any cross references to this area, pls correct me if im wrong.

it will take some tinkering to write the actual function in asm, and to assemble it with a c167 assembler, that im sure of..
(ive read setzis thread about code patching, and how to figure out where to place local variables etc.. many thanks for this info!)

any help in this will be greatly appreciated, this custom code-patching really opens up the potential of the me 7.x.  :)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 08, 2012, 07:50:12 PM
today ive been able to dissassemble the code and look at some functions and adresses.. i still cannot figure out how to fetch the names of the varibles and functions im seeing.. but perhaps i need to look in the actual RAM to fetch these..?

atleast now i know WHICH ones i will be needing, and where most of them are located =)

still missing the B_brems item.. if needed..

fairly sure i can manage to get the new function written in asm.. but it will take some time having to relearn everything from scratch.

now, can someone perhaps recommend an assembler for this c167?


also, ive been looking into the dissassembled source, and im fairly sure ive found the routine in which i need to call my NEW function, and it is located at: 0xA605C
when making changes to this routine(call function) my guess is im going to need to recompile it, and patch it in there again, correct?

any kind souls out there willing to aid in this project?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: createddeleted on January 08, 2012, 11:03:26 PM
today ive been able to dissassemble the code and look at some functions and adresses.. i still cannot figure out how to fetch the names of the varibles and functions im seeing.. but perhaps i need to look in the actual RAM to fetch these..?

atleast now i know WHICH ones i will be needing, and where most of them are located =)

still missing the B_brems item.. if needed..

fairly sure i can manage to get the new function written in asm.. but it will take some time having to relearn everything from scratch.

now, can someone perhaps recommend an assembler for this c167?


also, ive been looking into the dissassembled source, and im fairly sure ive found the routine in which i need to call my NEW function, and it is located at: 0xA605C
when making changes to this routine(call function) my guess is im going to need to recompile it, and patch it in there again, correct?

any kind souls out there willing to aid in this project?

I would love to help, but I am still lost in adding code. I'll read some more and see if I can provide any help.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 09, 2012, 11:45:18 AM
great, well here is todays news:

i think i have found a c167 assembler/compiler so i can soon start my code-tinkering.. aka brick the ECU  ::)

..and i have found B_brems, which in this ecu is actually named B_br, and located in a registry at: 0x00FD4E.A and the B_kuppl in the same registry at: 0x00FD4E.E


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Tony@NefMoto on January 09, 2012, 11:56:21 AM
This is the assembler I have used in the past: Keil uVision http://www.keil.com/uvision/ The free version limits the size of the file you can assemble, but you only need to assemble one function to make your change.

User setzi62 made the ME7Logger tool which can generate the variable RAM locations for you from your bin file.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 09, 2012, 02:24:51 PM
thank you tony for pitching in, i actually stumbled across that kiel one just now before i read your reply and managed to fetch me a trial version, as said, the function is very small, and the compiler is limited to 4kb of code in trial mode, so this will do =)

i had a look in the ecu definition file in setzis me7logger and ye, the variables are there, very good to know for future references :)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on January 10, 2012, 01:56:14 AM
I read this thread now but can not help cause i am confused a bit while reading the disassembled code.
Although i am familiar with C i still cant figure a way to implement the routine for those functions.
Its a matter of time  ;D





Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 11, 2012, 04:11:16 PM
Help needed to finish the function.. im really not used to compiling asm code  ???
i cannot seem to get it to work.. ive tried different compilers/assemblers, and i cannot figure out how to assemble just this small portion of code, placed on the right adresses.. what to do?  :'(


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Tony@NefMoto on January 11, 2012, 04:46:24 PM
You should contact user setzi62 and sweet talk him into getting involved in this forum thread.

Personally I would just try to take the block of compiled code that was already written by setzi, and then paste it into your file. Then just manually replace the different instructions referencing memory addresses.

Also, if you write your assembly code only using relative jumps, then the code should be safe to locate anywhere.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 11, 2012, 05:48:56 PM
You should contact user setzi62 and sweet talk him into getting involved in this forum thread.

Personally I would just try to take the block of compiled code that was already written by setzi, and then paste it into your file. Then just manually replace the different instructions referencing memory addresses.

Also, if you write your assembly code only using relative jumps, then the code should be safe to locate anywhere.

that is understood tony, i guess his compiled code could be altered.. as i can see allmost all adresses there in the hex.. but that would be a shortcut and we wouldnt really learn a thing from it imo.. i wanna know what im doing here.. =)

i did take a peek at setzis code, v2, dissassembled, to figure out all variables and adresses needed.
i have found all the adresses needed for this, and i have figured out where to put the code/variables without disturbing other functions..
i think i have managed to tinker me a new function, based on setzis code, with all the correct adresses..
so the rest should be pretty easy..

..BUT, i cannot seem to figure out how to work the c167 assembler to make this function into binary code..
and so i cannot compile the function.. or call it from the routine.. even tho its just a few lines need to alter and assemble.. stuck..!  :-\

it would be awesome to have setzis help with this, as im a big fan of his logger and coding skills, and if i ever get this thing compiled and running i would love to contribute here with a tutorial on how to add this functionality to the me7.x.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: gremlin on January 11, 2012, 09:59:07 PM
..and i have found B_brems, which in this ecu is actually named B_br, and located in a registry at: 0x00FD4E.A and the B_kuppl in the same registry at: 0x00FD4E.E

It's not correct.
There are both flags present.
b_brems is at 0x00FD4E.C - "brake pedal pressed"
And b_br is used for brake switch checking - "brake test pressed"


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 12, 2012, 05:55:51 AM
oh, thanks gremlin for that correction, that means in the M-box unit it should be located at: 0x00FD56.6 which would be bitmask 0x0040.. IF im correct.. that cleared some things up  ;D


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 12, 2012, 12:46:17 PM
update: loads of more tinkering.. and a strange binary produced.. in some strange way.. got the code.. patched it.. and now the NoLiftShift works 100%, it literally shifts like butter.. success!  ;D

But the launch still wont work.. and im beginning to question an adress in my code, or rather the format of the function fetching it..
in the 0x380xxx range the values are easily fetched using word_8xxx.. just cutting out the 0..
but the vfil_w value is located in the 0x381xxx range, so.. what would that fetch be? still word_8xxx? or word 1xxx?
im assuming this is the part where i screwed up.. the call to the new function works great, and all other params seem to work great, the dwelltime and all rpm functions included in the NLS..

..but this vfil_w is trouble.. anyone know what the correct "word_" fetch would be for an 0x381xxx adress?

im getting dizzy from looking at this asm code 24/7.. now i want to get this launch working!  :P


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: createddeleted on January 12, 2012, 01:48:36 PM
This is incredible!

I cant wait for this to come about. When you're done I would also like to see the method in patching this in if you could show how you did so. I still have trouble getting my head around everything.Please. :D



Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: gremlin on January 12, 2012, 02:36:25 PM
but the vfil_w value is located in the 0x381xxx range, so.. what would that fetch be? still word_8xxx? or word 1xxx?

Simple.
380000 ... 383FFF are remaped as 8000...BFFF


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 12, 2012, 02:43:40 PM
after looking into GPRs a bit more.. i find this one basically should start with a 9... as in 9C0C..(+08h) well i messed that one up for sure, thanks again gremlin  :)

lets tinker the new location in there and try to launch! brb.. ;D
..i hope..  ::)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 12, 2012, 04:06:22 PM
SUCCESS!!!!!!!!!

this thing is now shooting fireballs taking off from the parkinglot!  ;D
..and it flatshifts like theres no tomorrow!  :P

everything is working as intended..!

..well yeah.. except for the neighbors cat.. which was getting cosy under the car.. he must have snucked in there after my previous run.. it is -10degC outside and the catalysts were probably still warm..
..hopefully no permanent deafness, but i bet hes got a nice ringing in his ears atm.. sorries cat!  ::)

id love to write a tutorial/guide on how to do this, or perhaps write a small program that can implement the functions after you feed it all needed variables and locations.. and perhaps a guide on how to find the info needed.

i have a ton of notes, utils, dissassembled codes, assembled codes, functions, link-ins etc that i need to go thru to make this tho.. i think ive also found a way to implement setzis original code, which might not be as hard as this mess i managed to compile..  :-[
it is well written and gives the same functions in the end.. but if u have the asm code of the function you can customize it even more if needed, that is what i was after.

thanks setzi for rewriting and improving the original code, i used this one as a base, and thanks gremlin, tony and others who contributed with their knowledge to make this possible, now theres just one thing remaining.. throwing the wot-box out the window..! hehe  ;D


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: masterj on January 12, 2012, 04:16:25 PM
SUCCESS!!!!!!!!!

this thing is now shooting fireballs taking off from the parkinglot!  ;D
..and it flatshifts like theres no tomorrow!  :P

everything is working as intended..!

..well yeah.. except for the neighbors cat.. which was getting cosy under the car.. he must have snucked in there after my previous run.. it is -10degC outside and the catalysts were probably still warm..
..hopefully no permanent deafness, but i bet hes got a nice ringing in his ears atm.. sorries cat!  ::)

id love to write a tutorial/guide on how to do this, or perhaps write a small program that can implement the functions after you feed it all needed variables and locations.. and perhaps a guide on how to find the info needed.

i have a ton of notes, utils, dissassembled codes, assembled codes, functions, link-ins etc that i need to go thru to make this tho.. i think ive also found a way to implement setzis original code, which might not be as hard as this mess i managed to compile..  :-[
it is well written and gives the same functions in the end.. but if u have the asm code of the function you can customize it even more if needed, that is what i was after.

thanks setzi for rewriting and improving the original code, i used this one as a base, and thanks gremlin, tony and others who contributed with their knowledge to make this possible, now theres just one thing remaining.. throwing the wot-box out the window..! hehe  ;D

Please do write a full tutorial or small bin patcher or something :) I'm also interested in those features on my 1.8t passat :)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Zac on January 12, 2012, 04:26:32 PM
nicely done!


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Tony@NefMoto on January 12, 2012, 04:45:05 PM
Congrats on over coming the technical challenge! ;D

I'll send you a free NefMoto premium feature license if you take the time to post info for other people on how you implemented the launch-control and NLS in your ECU. ;)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: kenmac on January 12, 2012, 11:16:24 PM
Sounds wonderful!  I really want this on my 1.8T.  A writeup to help me along would be sweet. :)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 12, 2012, 11:53:03 PM
been writing and summarizing this for about 4h now.. its coming soon just need some illustrations.. and somehow to present it as it is ALOT of text.. still very much cleaned up from the original notes.. 

Tony, how much text can i force into one post? and how many files can i attach? ;D
(need to attach lots of small snippets of code, and some screenshots, nothing big)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: carlossus on January 13, 2012, 02:36:30 AM
been writing and summarizing this for about 4h now.. its coming soon just need some illustrations.. and somehow to present it as it is ALOT of text.. still very much cleaned up from the original notes.. 

Tony, how much text can i force into one post? and how many files can i attach? ;D
(need to attach lots of small snippets of code, and some screenshots, nothing big)

Well done mate!

You should post your write-up in the Wiki.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Tony@NefMoto on January 13, 2012, 02:33:32 PM
been writing and summarizing this for about 4h now.. its coming soon just need some illustrations.. and somehow to present it as it is ALOT of text.. still very much cleaned up from the original notes.. 

Tony, how much text can i force into one post? and how many files can i attach? ;D
(need to attach lots of small snippets of code, and some screenshots, nothing big)

You can post on the forum or on the wiki. The forum will accept 16 separate 16meg attachments if I recall. If it works better as a single document, you could create it as a MS Word doco or PDF.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 13, 2012, 04:24:49 PM
ive sent a PM to setzi asking him if it is ok to share his function and dissecting it in public.. lets hope for a positive answer, as his function is "clean" and position independent.. whilst mine uses coding language that of a 3 year old  ;D

i also need to summarize things into a pdf so it is more presentable.

now this launch is VERY agressive, and cuts the spark instantaneously when rpms rise over a given rpm.. but if i floor the pedal.. the rpms will bounce a bit, and the explosions in the exhaust is.. ALARMING.. the boost is allover the place.. and HIGH..
if i let go a little bit on the throttle, about 30%, then it is VERY smooth and builds a very stable boost at a stable RPM, and THIS is what i am after..

..and so ive thought about combining this spark-cut with a fuel-cut.. and perhaps set the fuel-cut about 25 rpms over this spark cut.. to make it kill the fuel supply and keep the explosions sane.. under controll..
any thoughts on this? how would i set this up to get a nice stable rpm whilst still building boost?
(or.. emulate the lesser pressed throttle situation.. while still having the throttle wide open)

also i find myself having to remove the EDL since this one is hammering away like crazy at the brakes when taking off from a standstill  ;D


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: ArgDub on January 14, 2012, 03:19:18 AM
Awesome work sn00k!  ;D

I think a mild launch control can be implemented combining spark-cut with fuel-cut like you said, but I think we have to cut fuel based on boost, not rpm. Something like, if launch control is active and boost is greater than some limit then cut fuel injection, what do you think?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on January 14, 2012, 04:29:03 AM
Thats awesome sn00k you made it :)

Cant wait to read the way you did it!


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 14, 2012, 09:10:34 AM
thanks!  :)
hmm.. that is actually a VERY good idea you have there argdub, this would make the launch boost fully
programmable.. it would still be very agressive and exploding the boost up there, but once it reaches your set boost it should stabilize.. i like the idea..  ;D
 

IF (tsrldyn == 0  && BoostPressureActual > "Programmable Boost value")
{
Also cut fuel(hmm.. how would we cut the fuel.. in the same way the soft launch does for fuel-cut 50rpm over revlimit?)
}

im thinking i would also want a fuel-cut about 50 rpm over the spark-cut, to better stabilize the rpms.. but that is just an idea i have.
ill look into it.. alltho my asm skills are terribly bad.. you would want setzi to add this to his original v2 function.. =)

as it is right now i am building 1.2 bar boost at 3000rpm pretty much instantaneously, and this is enough power to launch with all 4 tires spinning on tarmac.. alltho the car is pretty much stock.. using audi s3 clutch.. and its -5 degC outside, im sure everything is slipping ::)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 14, 2012, 06:45:05 PM
Added function to simulate the lower throttle situation..
now the launch can be adjusted from smooth to agressive.. and IF it overrevs due to too much boost, then fuel is cut 50rpm over the launch-RPM.. this works great and keeps everything under control.

the more agressive it is set, the more boost it builds, but at the same time it puts enormous pressures/stress into the turbo and exhaust..

currently im running spark-cut at 3930rpm, and the throttle is set to keep the rpms to 4000, while the fuel is cut at 4050 if the explosions make it over-rev.. this yields a fairly agressive yet smooth launch-control, and it still builds 1.2bar boost in no-time.

now all that remains is to make launch-boost adjustable.. for those situations when launching from max-boost kills thingys in the driveline..  ;D
..perhaps by cutting the fuel when actual boost is higher then set boost.. hmm..

this would be usefull in fwd cars.. if launching in 2nd gear at say 4000rpm and 0.5bar boost and keeping things there untill it reaches say 50km/h, where the launch dissengages and lets the full power to the ground.. but im thinking the motronic will interfere with this since actual boost will be lower then requested.. but this shouldnt be a problem to tune.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: createddeleted on January 14, 2012, 11:01:51 PM
Added function to simulate the lower throttle situation.. ....

Everytime I check this thread its getting better and better. Cant wait to figure out how to do this  :D


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 19, 2012, 05:31:17 AM
So, a first edition of a pdf has been scribbled down.. consisting of my notes on how to implement setzis v2 function of anti-lag & NLS.. i would love for someone to try this and report back in this thread with feedback and results.

The NLS cuts spark under given "conditions" when the clutch is pressed. (acclPedl threshold, time, rpm etc)
When conditions are correctly set this function makes the gearbox WOT-shift like butter..  :)

just an advice.. this anti-lag is cutting spark, so unburnt fuel will enter the exhaust manifold and "explode" in the turbine, making the EGTs skyrocket and the turbo spool in an instant.. while this is somewhat effective to build boost on the line, it poses a great threat to an OEM catalytic converter.

In my own function ive implemented throttle control and fuel-cut to keep things "under control", but this function is not yet position independent and will require some real work before it is finished and later released.. so in the meanwhile, enjoy this nice implementation by setzi, and try not to kill the drivetrain.. if possible..  ;D




Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: carlossus on January 19, 2012, 07:16:19 AM
It's easy to see how much time you've put in here. It's also a good intro to general patching. Nice one - have some Karma.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: kenmac on January 19, 2012, 08:53:32 AM
Thank you!  I will be working on this over the coming days and I'll report back with my feedback.  You really spent a considerable amount of time on this and it's greatly appreciated.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Giannis on January 19, 2012, 09:16:22 AM
Really nice topic you made a big effort for all of us like me who want this and do not have a clue about dissasebling. Thank you.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Tony@NefMoto on January 19, 2012, 12:36:13 PM
Great work. Thanks for taking the time to write this up. Many people underestimate the amount of time it takes to write an informative document.

If you send me your FTDI info, I'll send you a NefMoto premium features license. ;D


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on January 19, 2012, 01:26:02 PM
That is just brilliant!

Thank you and setzi for your time and for sharing such detailed info!!!

I would definitely try this and i ll report back (probably not in few days but i ll report for sure).


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: nyet on January 19, 2012, 01:29:31 PM
HOT DAMN


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 19, 2012, 02:59:07 PM
thanks for the positive response guys, lets hope someone actually manages to implement the functions following my quick "guide"   ::)

i wasnt really sure on which level of detail i should describe this first relatively "simple" method.. but i tried to stick to a level that most people, who have enough knowledge to make their own stage 1 tune, should be able to comprehend, since this could be a nice addition and perhaps the next small step forward in evolving their tune..

Tony: let me get back to you on that FTDI info, i have a 232RT based cable in the car i think, which should be compatible, and i would love for the flashing to be quicker.. since i do alot of reaserching based on the trial'n'error principle  ;)


come on ppl, lets see who is the first one to verify that this method works  ;D


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: rob.mwpropane on January 19, 2012, 04:16:45 PM
WOW. Awesome write up! Really gives a lot of information to process. It's really nice to see it dissected like that! Really did a thorough job.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Nosbeui on January 19, 2012, 04:52:17 PM
Will this work with a 400bb ECU?  I'm working on a 4B0 906 019 P  400bb 2000 Audi A4 1.8t Manual.
What's the reason 8 is added to the address when calling the new function?

I flashed a file already with the code implemented but there was no launch control limiter.

Seriously thanks for taking the time to write this up!


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: createddeleted on January 19, 2012, 08:36:42 PM


come on ppl, lets see who is the first one to verify that this method works  ;D

Im off for the next few days, lets see if I can make things work :D

THANK YOU FOR THIS!!


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: ArgDub on January 19, 2012, 09:46:16 PM
I'm working on a mild version that also cuts injection in the same way as the soft AL. I wrote a function that set bit B_nmaxd and therefore makes minmx_w = 0, looks promising but I had little time to test before the intense pressure separate a clamped union in the exhaust. Tomorrow I'm going to reassemble the joint with exhaust glue and try again.

Here is the fuel cut function code:
Code:
function_AL_NLS_fuel_cut:
jnb      B_kuppl, ret_AL_NLS_FCut
mov    r4, vfil_w
exts    #(PARAM_SEG), #1
mov    r5, SPEED_THRESHOLD
cmp    r4, r5
jmpr    cc_UGE, ret_AL_NLS_FCut
;movb   rl4, tsrldyn
;jmpr    cc_NZ, ret_AL_NLS_FCut
mov    r4, pvdks_w
exts    #(PARAM_SEG), #1
mov    r5, BOOST_LIMIT
cmp    r4, r5
jmpr    cc_ULE, ret_AL_NLS_FCut
bset    B_nmaxd

ret_AL_NLS_FCut:
mov     r4, ngfil_w
rets


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 20, 2012, 02:47:26 AM
Will this work with a 400bb ECU?  I'm working on a 4B0 906 019 P  400bb 2000 Audi A4 1.8t Manual.
What's the reason 8 is added to the address when calling the new function?

I flashed a file already with the code implemented but there was no launch control limiter.

Seriously thanks for taking the time to write this up!

Im thinking the calls instruction use the full address to a location in the ecu ROM, which starts at 0x800000, but when reading the ROM with the nefmoto program, that 0x800000 becomes the first address, 0x00000, in our .bin file, correct me if im wrong =)

i think you can make this function work on a 400BB ecu, but you will have to read up on some addresses.. BUT, im not sure that an ecu using the 400BB memory would have the later ignitioncoil driver.. which could result in blown coils, drivers or fuse.. = BAD.. someone will have to test this.


ArgDub: Nice, if youve read my previous posts here youll notice im also looking at this with fuel-cut and throttle control to keep things smooth while building boost.. ive got it running pretty nice atm..

im also thinking we could alter setzis v2 function to cut fuel instead of spark to make a "soft version" that can be implemented just the same way as this spark-cut version.. for those using OEM catalytic converters in their daily drivers etc..  :)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Giannis on January 20, 2012, 11:46:17 AM
is it too much to ask the original file plus the original with nls and flat shift? It should be more helpful this way.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: ArgDub on January 20, 2012, 07:44:37 PM
Although injection cut makes it less violent, it is not yet even close to anything you can use often without breaking something. I think we also need to reduce air charge.

sn00k: Nice, could you explain from where you are linking the throttle control?
About flash, it isn't mapped to a particular address because it uses BUSCON0, so you can access flash at 0x200000 for example.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 20, 2012, 08:57:26 PM
wow, i just noticed that i have managed to forget the actual spark-cut function of the LC.. sorries!  ::)

ive updated the pdf in the first post(page 3) to rev001, which contains an additional adress at line 3 of the function, ive marked it in yellow with "UPDATE!!".. damn these pdfs are not easy to edit.. now it changed my font and everything.. but you can still read it, ill clean it up once we know this works.

thanks Nosbeui for bringing this to my attention!  :)

argdub: ill try to complete my new routine and then release it with info on the additional functions and how to implement it.. and yes, you are very correct in that we do need to reduce air charge to control this  ;)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 20, 2012, 09:14:21 PM
is it too much to ask the original file plus the original with nls and flat shift? It should be more helpful this way.

well, i implemented this to my own stage 1 tune right away, so id have to add it to the original HN-file first.. but its right there in the thread where setzi posted the v2 function for the M-box, just compare that file to a std M-box .bin and you can see all the changes made  :)



Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Nosbeui on January 20, 2012, 11:10:31 PM
Success!! Well mostly... 4B0906018P 400bb 2000 Audi A4 1.8t Manual.  Thanks to sn00k's kind help the launch control works perfectly at low  throttle positions.  However at higher throttle position engine RPM continues to rise beyond the limiter.  Should I be looking at lengthening the ignition cut duration?

I'm also all for a less aggressive launch control routine that utilizes some throttle cut.  Looking forward to that being written.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: setzi62 on January 21, 2012, 12:26:48 AM
Success!! Well mostly... 4B0906018P 400bb 2000 Audi A4 1.8t Manual.  Thanks to sn00k's kind help the launch control works perfectly at low  throttle positions.  However at higher throttle position engine RPM continues to rise beyond the limiter.  Should I be looking at lengthening the ignition cut duration?

No!!! You should not lengthen the ignition cut duration!

Log your battery voltage (ub) with ME7Logger while you perform the ignition cut and you will see that
it drops heavily due to very high current in the ignition driver stage.
Your ECU does not support the simple hack to set closing time to zero - this could blow some fuse
or even burn your coilpacks I asume.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 21, 2012, 06:16:03 AM
it shouldnt rise that far past the limiter.. but the explosions in the exhaust should be stronger and less frequent at higher throttle.. as said, not sure that the 400BB ecus have the new IGN-driver needed for this.. strange that it seem to work at lower throttle positions tho..?

setzi, you know if there is a good way to tell if an ECU have the later "compatible" IGN-driver?



the ignition cut duration is for the NLS and not the LC.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: kenmac on January 21, 2012, 11:53:21 PM
I assume by implementing this, one should get rid of the "rudimentary" launch control method documented on the s4wiki.  I'd imagine they can't coexist.

http://s4wiki.com/wiki/Tuning#Launch_control


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: kenmac on January 22, 2012, 02:03:27 AM
sn00k, first let me thank you for an extremely easy to follow guide.  There is one step that has confused me.  In step 6, you advise the reader to consider the address mapping to 8xxx as we've seen in other 0x38xxxx addresses.  The address in the example, 0x384FF0, you would expect to receive this treatment, where you add 8 to the first digit in 4FF0.  This would normally give you CFF0, wouldn't it?  But your end result just switches the two bits around from 4FF0 to "F0 4F".  So was this address actually mapped?

Line 6, here we find the NLScounter, which setzi originally placed at 0x384FF0 in the RAM, remember? you should allready have found a free adress for this earlier looking into your .ecu file, so go ahead and alter this one located at bit 7-8, in form of "F0 4F" which in reverse becomes 4FF0.. remember the above about these 0x38xxxx adresses becoming remapped as 8xxx, keep this in mind! line 6 done.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 22, 2012, 04:35:53 AM
ah, in the code there is a pointer to the RAM, 0x38 at that place, so you would really just use the 4FF0 for adress 0x384FF0.

"exts    #38h, #1"

i need to change that so ppl dont get confused, ty for noticing this :)


regarding the other form of LC, yes, actually they can co-exist, i earlier used this "rudimentary" LC for some experiments in where to place the fuel-cut, and throttle control, so it can be used simultaneously, BUT, it needs to be properly calibrated to this spark-cut.
ie setting the rudimentary to 4500rpm(throttle controlled), and then fuel-cut 50 rpms over this, and now this new spark-cut to 4300-4500..
ive found 4300 gives huge "explosions" in the exhaust and builds a TON of boost, but not very controlled.. whilst closing in on 4500 this gives a milder LC, but doesnt build as much boost.. still WAY more then the "rudimentary" LC.
4435-4445 seem to build boost very nicely, and shooting a constant blue flame out the exhaust.. it is very agressive, as in many small explosions.. 4500rpm was just an example, any value can be set.. so basically this is how i calibrated the new routine i wrote.




Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 22, 2012, 05:11:31 AM
Updated the pdf in the first post(page 3) to rev002, with changes made to the text regarding line 6 in the function: as there is a pointer to the RAM, 0x380000, in the code here, the NLS-counter is not remapped according to previous "rules".


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: kenmac on January 22, 2012, 11:30:55 PM
Success!  Couldn't have done it without your PDF.  Thanks again.  I just forgot to update my checksums, so now I'm dealing with a bricked ECU that I need to put on the bench.  But the first run before it bricked was a lot of fun!  Should be back in action tomorrow.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 23, 2012, 04:48:41 AM
nice! you mind sharing here which car, modelyear and ecu code you managed this on?  ;D


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: rob.mwpropane on January 23, 2012, 06:42:25 AM
I really enjoyed the write up. Pretty easy to follow, and written so someone who has no knowledge of assembling code can get the idea. I've posted a file that has what I've worked out. I'm pretty confident that it is correct, but if someone has time to have a look I'd appreciate it. I have not implemented this on my car yet, but hope to if things are validated. Thanks sN00k, really great job!!

Edit: Added a bin file with the code implemented, it has NOT been tested on a real car! This is for a 2001 Audi A4 1.8tqm.

Edit2: File has been fixed upon sn00k pointing out 2 errors on my behalf. Thanks sn00k!! File SHOULD be good to go. Just set FTOMN to 0.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: kenmac on January 23, 2012, 07:09:58 AM
nice! you mind sharing here which car, modelyear and ecu code you managed this on?  ;D

Sure, here's my scratchpad.  Currently trying different launch RPMs, but it is LOUD.  Also, one time I disappeared in a black cloud of smoke from the exhaust. :P

Code:
Implementation of NLS & LC Function 
 on 06A906032PL - 2003 VW 1.8T GTI (20th anniversary)
------------------------------------------------------

Function Location: B3000
Variables: 17E00

RAM Variables:
-------------
tsrldyn         0x380BE0    0BE0 -> 8BE0 -> E0 8B
B_kuppl         0x00FD4C.7  4C -> 26
vfil_w 0x381C6C    1C6C -> 9C6C -> 6C 9C
nmot_w 0x00F8A4
wped 0x3809BC    09BC -> 89BC -> BC 89
B_brems 0x00FD4C.5
counter_NoLiftShift: 0x384FF0


Function Parameters:
-------------------
SpeedThreshold: 0x17E00 size 2, 16bit LSB
LaunchRPM: 0x17E02 size 2, 16bit LSB
IgnitionCutDuration: 0x17E04 size 2, 16bit LSB
RPMThreshold: 0x17E06 size 2, 16bit LSB
AccPedalThreshold: 0x17E08 size 1, 8bit LSB

Revised Function:
----------------
9A 26 13 70 F2 F4 6C 9C D7 00 81 00 F2 F9 00 7E
40 49 9D 0B F2 F4 A4 F8 D7 00 81 00 F2 F9 02 7E
40 49 FD 03 F7 8E E0 8B 0D 2F 9A 26 29 70 8A 26
22 50 F2 F4 A4 F8 D7 00 81 00 F2 F9 06 7E 40 49
FD 1A C2 F4 02 8B D7 00 81 00 C2 F9 08 7E 40 49
FD 12 D7 00 38 00 F2 F4 F0 4F D7 00 81 00 F2 F9
04 7E 40 49 9D 11 F7 8E E0 8B 08 41 D7 00 38 00
F7 F8 F0 4F 0D 09 D7 00 38 00 F6 8F F0 4F 0D 04
D7 00 38 00 F6 8E F0 4F F3 F8 A8 89 DB 00 FF FF


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on January 23, 2012, 10:27:24 AM
Sure, here's my scratchpad.  Currently trying different launch RPMs, but it is LOUD.  Also, one time I disappeared in a black cloud of smoke from the exhaust. :P

Code:
Implementation of NLS & LC Function 
 on 06A906032PL - 2003 VW 1.8T GTI (20th anniversary)
------------------------------------------------------

Function Location: B3000
Variables: 17E00

RAM Variables:
-------------
tsrldyn         0x380BE0    0BE0 -> 8BE0 -> E0 8B
B_kuppl         0x00FD4C.7  4C -> 26
vfil_w 0x381C6C    1C6C -> 9C6C -> 6C 9C
nmot_w 0x00F8A4
wped 0x3809BC    09BC -> 89BC -> BC 89
B_brems 0x00FD4C.5
counter_NoLiftShift: 0x384FF0


Function Parameters:
-------------------
SpeedThreshold: 0x17E00 size 2, 16bit LSB
LaunchRPM: 0x17E02 size 2, 16bit LSB
IgnitionCutDuration: 0x17E04 size 2, 16bit LSB
RPMThreshold: 0x17E06 size 2, 16bit LSB
AccPedalThreshold: 0x17E08 size 1, 8bit LSB

Revised Function:
----------------
9A 26 13 70 F2 F4 6C 9C D7 00 81 00 F2 F9 00 7E
40 49 9D 0B F2 F4 A4 F8 D7 00 81 00 F2 F9 02 7E
40 49 FD 03 F7 8E E0 8B 0D 2F 9A 26 29 70 8A 26
22 50 F2 F4 A4 F8 D7 00 81 00 F2 F9 06 7E 40 49
FD 1A C2 F4 02 8B D7 00 81 00 C2 F9 08 7E 40 49
FD 12 D7 00 38 00 F2 F4 F0 4F D7 00 81 00 F2 F9
04 7E 40 49 9D 11 F7 8E E0 8B 08 41 D7 00 38 00
F7 F8 F0 4F 0D 09 D7 00 38 00 F6 8F F0 4F 0D 04
D7 00 38 00 F6 8E F0 4F F3 F8 A8 89 DB 00 FF FF

I think this code isnt correct at line 5.


Line 5:  FD 1A C2 F4 02 8B D7 00 81 00 C2 F9 08 7E 40 49

should be

Line 5:  FD 1A C2 F4 BC 89 D7 00 81 00 C2 F9 08 7E 40 49


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 23, 2012, 10:42:23 AM
professor: thats right, so his NLS should not be seeing the WPED, the signal from the accelerator pedal position.. fix it! ..or you will be grinding gears the first time you try to WOT-shift.. and thats not a nice experience..  ;D


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on January 23, 2012, 11:07:39 AM
professor: thats right, so his NLS should not be seeing the WPED, the signal from the accelerator pedal position.. fix it! ..or you will be grinding gears the first time you try to WOT-shift.. and thats not a nice experience..  ;D

LOL that's an awful experience as far as i remember with the wot box at first tries ;D

Damn i have my file ready but my ecu is broken. I must go home to figure out how to replace it, cause i cant wait to anti-terror  a bit  :)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 23, 2012, 11:14:49 AM
I really enjoyed the write up. Pretty easy to follow, and written so someone who has no knowledge of assembling code can get the idea. I've posted a file that has what I've worked out. I'm pretty confident that it is correct, but if someone has time to have a look I'd appreciate it. I have not implemented this on my car yet, but hope to if things are validated. Thanks sN00k, really great job!!

Edit: Added a bin file with the code implemented, it has NOT been tested on a real car! This is for a 2001 Audi A4 1.8tqm.

ive had a peek at your function, and you have most things right, the call, places, and most of the function, BUT, line 5 and 7 are not correct..

in line 5 you have "A8 09" instead of the correct "A8 89" for the wped.

and in line 7 you have "A4 0B" instead of the correct "A4 8B" for the tsrldyn.

go fix..!  ;)

..and dont forget to set FTOMN to 0.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 23, 2012, 11:27:57 AM
Updated the pdf in the first post(page 3) to rev003: minor change to bit-numbers, nothing really worth mentioning.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on January 23, 2012, 12:00:11 PM
Well i overlooked again the hole function and i have one question.

The ignitioncutduration is the time of ignition cut while holding steady rpms and pressure for launch control.

How the time of ignitiongutoff while wot shifting is adjusted?

I see on setzi's no-lift that there is a TimeDuration function which enables and configures the working time of a wot shift ignitioncutduration.

Probably i am missing something cause i haven't sleep well today.

Also if the launch control of this type,

CWNMAXMD    VNMX  DNMAXH  ITNMXH  NMAX  NMAXOG  TMOTNMX  TNMXH 
 
is present at the file would be a problem?






Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: kenmac on January 23, 2012, 12:07:30 PM
Oh, thank you professor and sn00k!  Not sure how I overlooked that.  It is funny though, when I tried the NLS it seemed to work... no grinding.  And there was definitely spark cut because when I'd press the clutch, I'd hear a couple pops before I engaged the gear. 

I did notice that the rpms did seem to rise when I pressed the clutch though, which I thought was odd, but I figured I had to increase the duration.

Thanks for finding this!  Need to correct it.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 23, 2012, 01:11:03 PM
Well i overlooked again the hole function and i have one question.

The ignitioncutduration is the time of ignition cut while holding steady rpms and pressure for launch control.

How the time of ignitiongutoff while wot shifting is adjusted?

I see on setzi's no-lift that there is a TimeDuration function which enables and configures the working time of a wot shift ignitioncutduration.

Probably i am missing something cause i haven't sleep well today.

Also if the launch control of this type,

CWNMAXMD    VNMX  DNMAXH  ITNMXH  NMAX  NMAXOG  TMOTNMX  TNMXH  
 
is present at the file would be a problem?

originally setzi placed the ignitioncutduration condition for the NLS at 0x17E04, there is none for the LC, since the LC cuts ignition as soon as rpms rise over threshold.. i think setzi somewhere mentioned that it cuts for 50ms tho.. but im not sure how/where that time is controlled.


this is how 0x17E04 is explained in setzis xdf:

"This sets the time for which the ignition is cut while clutch is pressed (NoLiftShift), if also the following conditions are fulfilled:
- Brake is not engaged
- Engine speed is higher than RPMThreshold
- Accel Pedal is engaged more than AccPedalThreshold

Set IgnitionCutDuration to zero to disable the NoLiftShift function."


about the other form of launch-control, please go back to page 4 of the thread and read my reply there, this CAN be used simultaneously and with very good results if properly set up.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: rob.mwpropane on January 23, 2012, 04:55:41 PM
ive had a peek at your function, and you have most things right, the call, places, and most of the function, BUT, line 5 and 7 are not correct..

in line 5 you have "A8 09" instead of the correct "A8 89" for the wped.

and in line 7 you have "A4 0B" instead of the correct "A4 8B" for the tsrldyn.

go fix..!  ;)

..and dont forget to set FTOMN to 0.

Thanks, fixed my ori post to have these set right. Just to verify, if I leave FTOMN stock, this entire function is "off"? And FTOMN set to 0 would be "on"? Thanks sn00k, awesome write up!


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 23, 2012, 06:52:41 PM
hmm.. im not sure if it affects the dwelltime when left at its original value.. since FTOMN is the MINIMUM permissable dwelltime.. and the function tries to lower this to 0.. but, it can NOT cut the spark.

0 will be "on" tho..  :)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Aragorn on January 24, 2012, 05:48:12 AM
There was a lot of chat in the original 2.7T thread regarding blown coil packs and fuses when using this on 1.8T ME7.5 ECU's, and some suggestion that things need done differently on 1.8T ME7.5 due to the different ignition driver code, yet this thread seems to be suggesting that setzi's original function works fine?

Can anyone explain what was going on with the melted coils if this code does infact work fine?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: createddeleted on January 24, 2012, 07:54:35 AM
Help finding FTOMN in LP and HS files anyone?  ???

Thats whats holding me back. I have that defined in my HN file, but none of my others.



Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on January 24, 2012, 10:00:31 AM
In LP the FTOMN is located at 0x1A4EA if i am correct.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: createddeleted on January 24, 2012, 10:43:13 AM
In LP the FTOMN is located at 0x1A4EA if i am correct.

Thank you. I will look that up later today and then continue calculations for my coding lines. I want to make sure I get this from cover to cover.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on January 24, 2012, 10:51:46 AM
Welcome.

I small question from me:
B_brems at my file has bitmask 0x0400. I insert to code the 0A or A0 (10 -> A0 or 0A)?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: ArgDub on January 24, 2012, 02:35:15 PM
Welcome.

I small question from me:
B_brems at my file has bitmask 0x0400. I insert to code the 0A or A0 (10 -> A0 or 0A)?

For JB and JNB instructions, A0 is right.

Edit: to check bitmask to bit
2^10 = 1024 = 0x400
or
With the windows calculator in hex:
1 (Lsh) 0xA = 0x400


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 24, 2012, 02:56:41 PM
There was a lot of chat in the original 2.7T thread regarding blown coil packs and fuses when using this on 1.8T ME7.5 ECU's, and some suggestion that things need done differently on 1.8T ME7.5 due to the different ignition driver code, yet this thread seems to be suggesting that setzi's original function works fine?

Can anyone explain what was going on with the melted coils if this code does infact work fine?

on the older me7.5 ecus(pre YM -01) you have the old ignitorcoil driver that wont like this "hack" of setting the dwelltime to 0, it interprets this as an invalid signal, and so high currents will build up and blow either the coil or the fuse..

..after some testing it seems this driver is changed around the time the 7.5 got the 1024kbit memory(YM -01), i cannot say this beeing 100% certain, BUT, all 1024kb ecus of year -01 and up = 100% success, so far.

this is why i want everyone who have implemented this function to post their ecu letters and modelyear here in this thread.. so we can investigate this further.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on January 25, 2012, 08:15:33 AM
For JB and JNB instructions, A0 is right.

Edit: to check bitmask to bit
2^10 = 1024 = 0x400
or
With the windows calculator in hex:
1 (Lsh) 0xA = 0x400

Thanks appluaded   :)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Aragorn on January 25, 2012, 10:40:17 AM
on the older me7.5 ecus(pre YM -01) you have the old ignitorcoil driver that wont like this "hack" of setting the dwelltime to 0, it interprets this as an invalid signal, and so high currents will build up and blow either the coil or the fuse..

..after some testing it seems this driver is changed around the time the 7.5 got the 1024kbit memory(YM -01), i cannot say this beeing 100% certain, BUT, all 1024kb ecus of year -01 and up = 100% success, so far.

this is why i want everyone who have implemented this function to post their ecu letters and modelyear here in this thread.. so we can investigate this further.


Thanks for that.

The ECU i have is an 032HN box thats dated 13-04-2002, which presumably means it will be fine.

I really need to pull my finger out and get the rest of the parts together to convert the car to ME7.5, then i can see about getting this done!


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 25, 2012, 11:00:33 AM
yes, the HN-box has been tested with 100% success! ;D


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: kenmac on January 29, 2012, 09:01:23 PM
How are you guys adding the code to the bin file?  I've been using WinOLS since Day 1, which started with a stock file, and I've been producing new versions as I tune without difficulty.  Recently, I've been having an issue with "DTC 16985 - Internal Control Module: Memory Check Sum Error" which I have to keep manually clearing from the 95040.  Simply added the function code, the function call, and the parameters.  I assumed WinOLS would automatically update any checksums, but perhaps it's not doing that.  The strange part of this is that I don't see the checksum error until I've started the car about 4-5 times.  Are you guys doing something differently for checksums?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on January 30, 2012, 05:55:56 AM
personally im using an advanced editor called "010 editor" to add the code.. ive been working with this one for other projects since many years back, so it is my editor of choice.. but any hex-editor will do.

after code is added i use tunerpro and the MTX me7-2002 plugin for checksums.. this ones does update the checksums needed, im not sure if winols does.. there are a few more tools out there for updating the checksums tho.. perhaps someone can help you correct your sums once the actual function is implemented, and then you can use this corrected bin in your tunes from there on? =)

problem is some checksum progs/plugins dont calculate ALL the sums.. and we are adding custom code that may be located outside the range of the checksum calculator.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on February 08, 2012, 04:33:41 PM
..so who got this implementation working? =)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: 99pwr on February 09, 2012, 04:26:18 AM
Yes, it works very well, thank you !


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: masterj on February 09, 2012, 07:22:40 AM
I have one interesting suggestion... Since function implementation is already known, why don't we try something more interesting like map switching on the fly (if it is possible).

For example if ECU has variable to check if traction control is enabled or disabled, then we could do something like this:

if (ASRDisabled) then

enable launch-control;
enable NLS;

else

disable launch-control
disable NLS

endif


what do you think? It is doable or not?

Same way it would be possible to do RACE and normal maps... like different KFMIOP/KFMIRL versions depending on your Traction Control button


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on March 01, 2012, 08:27:59 AM
sn00k i pm'ed you


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: NOTORIOUS VR on March 01, 2012, 09:01:11 AM
someone is already working on map selection here: http://nefariousmotorsports.com/forum/index.php?topic=1556.0title=

I'm surprised other devs aren't jumping on it


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: marcello7x on March 01, 2012, 12:57:29 PM
Read through the entire PDF, very informative. I can't wait to try it, but i have alot more to learn, and need to work on simple tuning first. Every time im ready to dive in, i tend to get sidetracked for atleast a month.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on March 01, 2012, 01:00:26 PM
sn00k i pm'ed you

hmm.. i didnt recieve your PM..?   :-\


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on March 01, 2012, 01:03:44 PM
hmm.. i didnt recieve your PM..?   :-\
I 've sent it again now


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Zac on March 03, 2012, 02:29:55 PM
sn00k, got this working on HS (02 gti 5mt) by following your guide. Good work on this!


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on March 04, 2012, 03:20:18 AM
Zac: thanks, another one added to the list of working boxes! :)

professor: i got your PM, i will have a look at it when i got some time to spare.. busy days.. =/



Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Giannis on March 06, 2012, 06:39:32 AM
I'm also triyng this in a 032MJ ecu for some time. Launch seams to work fine but i did't see some stable boost. In the NLS thought i have problem as my car keeps reving although i press the clunch. Should i change speed threshold  to a lower value? Because if i am right it has 300something as value in the given examble. This is aswesome stuff posted in this forum thanks again.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on March 06, 2012, 07:10:54 AM
Giannis: please verify that everything in the code is altered as per the PDF-file posted.. i am 99% sure that you have missed something.

if you can post a list of your variables as per the M-box-adresses file.. and your function code for reference, people here can quickly verify it for you, or pm it to me.


as for the conditions: ignition cut duration, rpm threshold and acceleratorpedal threshold are the 3 things you set for NLS.

cut duration is in milliseconds and somewhere around 300ms by default, after this time it ignites again, this timer OR when the clutch is engaged again(switch).

rpm threshold is the lowest rpm at which the NLS will engage, set this up high so it doesnt interfere with normal driving.. you will only be using the NLS at full WOT runs anyways, and then you shift at high rpms.. i.e 5000rpm>.

acc pedal threshold is how much throttle, in percent, you need to have the NLS engage..
set this to 95% or something similar for the NLS not to interfere with normal driving conditions.

with things setup this way the NLS will ONLY engage when shifting at 5000+ rpms when you are keeping the acceleratorpedal mashed to the floor.

the NLS works wonders, but i find it with a good stage 1 tune and OEM clutch it will sometimes slip when engaging the next gear at lower rpms, <4000.. this due to full boost and bad grip in the OEM clutch-disc.. shifting at higher rpm doesnt cause this slippage as torque is dropping of really bad in these engines.. =)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on March 06, 2012, 07:24:45 AM

professor: i got your PM, i will have a look at it when i got some time to spare.. busy days.. =/


Ok i am waiting!   :)

I'm also triyng this in a 032MJ ecu for some time. Launch seams to work fine but i did't see some stable boost. In the NLS thought i have problem as my car keeps reving although i press the clunch. Should i change speed threshold  to a lower value? Because if i am right it has 300something as value in the given examble. This is aswesome stuff posted in this forum thanks again.

Post the function code for checking  :)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Giannis on March 06, 2012, 12:00:11 PM
Thank you very much for the fast answer and for the help. The PDF is VERY helpful and i don't think i have any errors. I posted my code and the adresses file for comparison.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on March 06, 2012, 01:25:55 PM
Giannis same (http://nefariousmotorsports.com/forum/index.php?topic=1363.msg13633#msg13633) problem was solved (http://nefariousmotorsports.com/forum/index.php?topic=1363.msg13622#msg13622) by double checking and correcting the wped position in Line5 of the function.
Your wped is located at 0x389B1?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Giannis on March 06, 2012, 01:32:56 PM
i'm not sure i have the correct factor fot those values. Yes dnmaxh was at 30rpm now i will set it to 80 to 100. Speedthreshold was originally at about 330 something in the PDF and i found this a little bit strange.. That's why i think my factors are wrong. And i didn't do more testing, i prefer to ask for help because i am afraid of breaking something. Thanks for the answer though.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on March 06, 2012, 01:41:52 PM
Answer edited before you answer and edited again. Pls reply to this.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Giannis on March 06, 2012, 02:17:33 PM
no it is wped:0x3809B1 8xxxx so b1 89 in the function


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: corradovolksb on March 10, 2012, 02:44:47 PM
Im running the mbox version of the als and nls and it is awesome. thought I would post a few videos of my s4 testing the als and nls. the first is the ALS and the second is a 2nd to 3rd gear shift using NLS you can hear the engine stop revving and a slight backfire when the clutch is let out. enjoy

http://www.youtube.com/watch?v=Rket-MkubQI

http://www.youtube.com/watch?v=A6BZ7UWaVpg


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: nautica on March 16, 2012, 06:30:13 PM
Why thread name is implementation of HN but tutorial is based on M-box? Can anyone put all functions like kenmac one?
And where FTOMN is located on HN? Thanks

Code:
Implementation of NLS & LC Function 
 on 06A906032PL - 2003 VW 1.8T GTI (20th anniversary)
------------------------------------------------------

Function Location: B3000
Variables: 17E00

RAM Variables:
-------------
tsrldyn         0x380BE0    0BE0 -> 8BE0 -> E0 8B
B_kuppl         0x00FD4C.7  4C -> 26
vfil_w 0x381C6C    1C6C -> 9C6C -> 6C 9C
nmot_w 0x00F8A4
wped 0x3809BC    09BC -> 89BC -> BC 89
B_brems 0x00FD4C.5
counter_NoLiftShift: 0x384FF0


Function Parameters:
-------------------
SpeedThreshold: 0x17E00 size 2, 16bit LSB
LaunchRPM: 0x17E02 size 2, 16bit LSB
IgnitionCutDuration: 0x17E04 size 2, 16bit LSB
RPMThreshold: 0x17E06 size 2, 16bit LSB
AccPedalThreshold: 0x17E08 size 1, 8bit LSB

Revised Function:
----------------
9A 26 13 70 F2 F4 6C 9C D7 00 81 00 F2 F9 00 7E
40 49 9D 0B F2 F4 A4 F8 D7 00 81 00 F2 F9 02 7E
40 49 FD 03 F7 8E E0 8B 0D 2F 9A 26 29 70 8A 26
22 50 F2 F4 A4 F8 D7 00 81 00 F2 F9 06 7E 40 49
FD 1A C2 F4 02 8B D7 00 81 00 C2 F9 08 7E 40 49
FD 12 D7 00 38 00 F2 F4 F0 4F D7 00 81 00 F2 F9
04 7E 40 49 9D 11 F7 8E E0 8B 08 41 D7 00 38 00
F7 F8 F0 4F 0D 09 D7 00 38 00 F6 8F F0 4F 0D 04
D7 00 38 00 F6 8E F0 4F F3 F8 A8 89 DB 00 FF FF


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on March 17, 2012, 03:40:56 AM
FTOMN is located at 1A43D in HN.

The reason for the naming of the thread was ME wanting to learn how to implement this into one of my HN boxes.. and after about 5 days i was successfull in doing so.
later i worked out a pattern, and put some time into summarizing my notes and creating a PDF-guide for ANYONE out there who might want to add these functions to their own tune.

the tutorial is based on both me7.5 HN and the me7.1 M-box, BUT the original function was written in assembler for the M-box by a coder here in the community named setzi.
my first goal was to alter his code and make it adaptable for other boxes, with his approval ofc.

its not supposed to be cut and paste, what would you learn from that?
everything you need to know is in that guide, and many ppl have completed it successfully on their own, altering/patching binary code for the C167 cpu.

just cutting and pasting the code onto an ecu can destroy your engine in an instant, or if youre lucky you just brick the ECU.. you NEED to know what you are doing here.. so, just follow the guide.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on March 19, 2012, 10:58:59 AM
NLS is working very well on 06A906032RP Ecu.

Just tested this function on my car. Big flames great gear shifts :D. Thanks for sharing it once more.

http://www.youtube.com/watch?v=e8CC6nkWkjM

Cant get LC to work properly probably something wrong in configuration.
Code:
SpeedThreshold:		      3.3km/h		
LaunchRPM:         4300rpms
IgnitionCutDuration:    160ms (guess this can work well at 140ms too for a bit faster shifting)
RPMThreshold:          4550rpms
AccPedalThreshold:             90.2%
NMAX:                          4500rpms
DNMAX:                               50rpms
Car while standing still revs up to 4500rpm without building boost. Looks like the throttle pedal controlled LC is only active. Its not an priority to make it work jfyi.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on March 19, 2012, 04:25:02 PM
Hi professor! :)

ive finally had a look at your function and made some corrections, but other than this i cant see anything wrong.. doublechecked link-in, adresses, code etc.. the only thing i need you to check is line 9.

im also wondering if FTOMN is set to 0?

it SHOULD make some noise now at 4300.. so why doesnt it.. hmm.. please answer the questions in my PM.. i hope you dont have one of the incompatible ECUs for this "hack".. if so you risk killing the ignitorcoils or fuses.. not good at all..


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on March 20, 2012, 08:41:05 AM
Hello sn00k!

I am pretty sure you are right about something wrong in Line 9, please check your pm and reply!


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: nautica on March 20, 2012, 09:45:55 AM
Anyone tell me please where FTOMN is located on HS


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on March 20, 2012, 11:32:04 AM
Anyone tell me please where FTOMN is located on HS

Should be at 0x1A3D9.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: nautica on March 20, 2012, 12:06:49 PM
should be or 100%?  :)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on March 20, 2012, 12:32:36 PM
should be or 100%?  :)
Let me rephrase it a bit: If it was my car i ll used FTOMN located at the address i wrote.
More validators are welcome to your question.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: nautica on March 20, 2012, 02:46:18 PM
Yes you right, it's 1A3D9. Thank you


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on March 21, 2012, 06:24:40 AM
You are welcome.

A quick question looking for a correct fast answer pls:

0x381C00 ---->    9C 00  -> 00 9C which is correct.

0x0AB600 ----> ???? 00 B6?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on March 21, 2012, 08:25:16 AM
DA 8A 00 B6


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on March 21, 2012, 02:26:13 PM
So this was correct eventually.

For now NLS works on 06A906032RP very well but LC with antilag does not.
Here are my parameters with its values:

Antilag LC
Code:
SpeedThreshold:		5km/h
LaunchRPM: 4400rpms
IgnitionCutDuration: 160ms
RPMThreshold: 4550rpms
AccPedalThreshold: 90.2%

Soft LC
Code:
VNMX             2.5km/h
DNMAXH         50rpms     
ITNMXH          0
NMAX           4500rpms
NMAXOG        7350rpms
TMOTNMX          0 oC
TNMXH            655.3500  sec
CWNMAXMD     1

FTOMN is 0

Does any parameter conflicts? Soft LC is working.
I ll prepare a file without soft LC implemented, and parameters of it to its defaults values, to check the Hard (spark - cut) LC behavior, if it ll work..


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on March 29, 2012, 12:41:39 AM
 ;D ;D ;D

well you guess well i am smiling cause finally made LC with antilag work.
A mistake on b_brems bitmask and two days of overlooking the whole code/function were the cause and effect.
My westie after hearing the bam boom starts barking the car and havent stop yet...


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on March 29, 2012, 05:23:13 AM
hehe, so you got it working, awesome! ;D

what was wrong in your function? the b_brems bitmask? i only had a quick look, but im fairly sure this one was correct..?

now try setting the soft launch to 50-70 rpms above the spark cut LC.. with the same conditions for speed etc.. =)
(start at 50.. and increase if need more boost built..)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on March 29, 2012, 06:32:47 AM
Well on 032RP b_brems is not -2 bits but -4. So if b_kuppl is .10 b_brems is .6.
I dont use N75 valve, i use apexi avcr so i cant built boost. But it reaches vacuum limits and builts 0.05-0.1bar which its the best for FWD (cant hide that with soft LC the car accelerates faster since wheel spinning is less, that why HLC and SLC coexists right?  ;D).
I set soft LC 120rpm higher and bam boom bam boom bam boom ... etc...


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on March 29, 2012, 03:53:54 PM
ok, that is noted =)

but you have tried lower numbers? i.e below 120rpms? since the lower you get the more rapid the "bang boom bam poof" sounds will get.. and sound more aggressive and even while still building approx the same boost.. i found 50 rpms to be optimal on my unmodified audi a3tq.. very rapid LC and full boost in this case =)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Aragorn on March 31, 2012, 01:50:07 PM
Whats this Soft LC?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: catbed on May 19, 2012, 01:57:27 PM
Bringing this thread back to see if I can get some help. I am trying to get this to work on a 4B0906018CH 01 1.8t.  I went through sn00k's guide, and I think my function/coding if correct, but I tried NLS today and ground 2nd.

EDIT: NLS works now, the problem is I swapped in an Auto engine harness, and they do not have clutch switch wiring. Added the wiring and NLS now works brilliantly. LC does no and I think it is a b_brems bitmask issue.

 My function looks like:

Code:
9A 26 13 20 F2 F4 40 9C D7 00 81 00 F2 F9 00 7E 
40 49 9D 0B F2 F4 9E F8 D7 00 81 00 F2 F9 02 7E
40 49 FD 03 F7 8E A4 8B 0D 2F 9A 26 29 20 8A 26
22 00 F2 F4 9E F8 D7 00 81 00 F2 F9 06 7E 40 49
FD 1A C2 F4 A8 89 D7 00 81 00 C2 F9 08 7E 40 49
FD 12 D7 00 38 00 F2 F4 F0 4F D7 00 81 00 F2 F9
04 7E 40 49 9D 11 F7 8E A4 8B 08 41 D7 00 38 00
F7 F8 F0 4F 0D 09 D7 00 38 00 F6 8F F0 4F 0D 04
D7 00 38 00 F6 8E F0 4F F3 F8 9C 89 DB 00 FF FF


Addresses:

Code:
B5A40 – Pure FF address/Function address
17E00 – conditions

Tsrldyn 380BA4
B_kuppl 00FD4C.2 – 0004
Vfil_w – 381C40
Nmot_w – 00F89E
Wped – 3809A8
B-brems 00FD4C.0

RAM Address 384FF0

link-in: 9DDCO -> original line: 0D 03 F0 49 F7 F8 A4 8B F3 F8 9C 89 D7 40 06 02...03 F8 on the next row.
                         edited line: 0D 03 F0 49 F7 F8 A4 8B DA 8B 40 5A D7 40 06 02...03 F8


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on May 20, 2012, 03:05:02 PM
so both lc and nls now works on your 4B0906018CH ecu?  :)
if so ill add it to my list of compatible ecus..


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: catbed on May 27, 2012, 11:16:34 AM
so both lc and nls now works on your 4B0906018CH ecu?  :)
if so ill add it to my list of compatible ecus..

NLS shift works flawlessly, but the LC doesn't work at all. If I had to guess, I would assume there is a problem with the b_brems variable. Any way I can find the address without guessing?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on May 27, 2012, 11:22:22 AM
Post you .ecu and your function to try to help you, if you like :)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: catbed on May 27, 2012, 01:02:06 PM
Post you .ecu and your function to try to help you, if you like :)

My function looks like:

Code:
9A 26 13 20 F2 F4 40 9C D7 00 81 00 F2 F9 00 7E 
40 49 9D 0B F2 F4 9E F8 D7 00 81 00 F2 F9 02 7E
40 49 FD 03 F7 8E A4 8B 0D 2F 9A 26 29 20 8A 26
22 00 F2 F4 9E F8 D7 00 81 00 F2 F9 06 7E 40 49
FD 1A C2 F4 A8 89 D7 00 81 00 C2 F9 08 7E 40 49
FD 12 D7 00 38 00 F2 F4 F0 4F D7 00 81 00 F2 F9
04 7E 40 49 9D 11 F7 8E A4 8B 08 41 D7 00 38 00
F7 F8 F0 4F 0D 09 D7 00 38 00 F6 8F F0 4F 0D 04
D7 00 38 00 F6 8E F0 4F F3 F8 9C 89 DB 00 FF FF


Addresses:

Code:
B5A40 – Pure FF address/Function address
17E00 – conditions

Tsrldyn 380BA4
B_kuppl 00FD4C.2 – 0004
Vfil_w – 381C40
Nmot_w – 00F89E
Wped – 3809A8
B-brems 00FD4C.0

RAM Address 384FF0

link-in: 9DDCO -> original line: 0D 03 F0 49 F7 F8 A4 8B F3 F8 9C 89 D7 40 06 02...03 F8 on the next row.
                         edited line: 0D 03 F0 49 F7 F8 A4 8B DA 8B 40 5A D7 40 06 02...03 F8

I included the .ecu and the .bin of my ECU. The file is 4B0906018CH rev. 360101.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on May 27, 2012, 02:53:26 PM
B-brems is 00FD4C.14 (B_br            , {CondBrakePedalSwitch}            , 0x00FD4A,  2,  0x4000 )
So change B_br bitmask from 0 to 14 (in HEX from 00 to 0E) inside function Line 4 bit 1 and let us know.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: catbed on May 27, 2012, 06:11:53 PM
B-brems is 00FD4C.14 (B_br            , {CondBrakePedalSwitch}            , 0x00FD4A,  2,  0x4000 )
So change B_br bitmask from 0 to 14 (in HEX from 00 to 0E) inside function Line 4 bit 1 and let us know.


I see what you're saying, but I thought b_br and b_brems were different? And if the bitmask is 14, shouldn't line 4 bit 1 read E0, not 0E?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: matchew on May 27, 2012, 07:54:13 PM
If the bitmask is 14, shouldn't line 4 bit 1 read E0, not 0E?

Yep


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on May 27, 2012, 11:56:27 PM
Yes E0 not 0E  :)
B_br == B_brems


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: catbed on May 28, 2012, 01:02:07 AM
Yes E0 not 0E  :)
B_br == B_brems

Why is it located at a different address than B_kuppl? FD4A for B_br and FD4C for B_kuppl? I am not doubting you just trying to understand.

Gremlin also posted this on the front page:
It's not correct.
There are both flags present.
b_brems is at 0x00FD4E.C - "brake pedal pressed"
And b_br is used for brake switch checking - "brake test pressed"


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on May 28, 2012, 01:15:02 AM
Why is it located at a different address than B_kuppl? FD4A for B_br and FD4C for B_kuppl? I am not doubting you just trying to understand.

Gremlin also posted this on the front page:
Its good to ask.
I am not in position to doubt what gremlin says.
I had the same questions while was looking how to implemented those featues on my car and i end up finding what i told you.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: catbed on May 28, 2012, 01:17:33 AM
Its good to ask.
I am not in position to doubt what gremlin says.
I had the same questions while was looking how to implemented those featues on my car and i end up finding what i told you.

So the only part I should have to change is the bit in line 4 for the bitmask? Leave the 26 for FD4C in the line before? Or change that to 25?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on May 28, 2012, 01:27:43 AM
So the only part I should have to change is the bit in line 4 for the bitmask? Leave the 26 for FD4C in the line before? Or change that to 25?

The function points where b_br, b_kuppl etc are located. So must point them correctly.
Yes since b_br is located on 0x00FD4A -> 4a == 25


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: lulu2003 on June 27, 2012, 12:45:31 AM
regarding NLS only: did you notice that B_Kuppl seems to be a bit laggy or at least not in the right position of the clutch pedal point de/press?? Is ME7 trying to set it software like gear?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Giannis on June 27, 2012, 11:16:03 PM
yes i also noticed that it cut too early when pressing the clunch and is a little bit laggy when depressing the clunch. But it is awesome i like it a lot.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: lulu2003 on July 01, 2012, 02:10:23 AM
but you did not try to alter the location of the switch?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Giannis on July 01, 2012, 07:05:56 AM
Not yet this is still a work in progress. But thanks for the idea.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: azaiats on July 01, 2012, 09:57:33 AM
Hi!

I guess I patched well my 06A906032HP binary. The first try and I can hear "bang boom bang bang" when pressing the clutch stopped. But the thing is: I tried to turn off and on again and the car won't started. Need to flash another version without the patch to make the car start again.

Question: did all patch inside WinOLS, so the checksum won't be auto corrected? And me7check saying that my file is OK.

Anybody can point me a clue? Thanks.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: azaiats on July 01, 2012, 09:59:30 AM
Here's the binnary attached. If someone can help me out with this.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Giannis on July 01, 2012, 10:41:03 AM
Your checksum is wrong my friend.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: azaiats on July 01, 2012, 10:48:24 AM
How can I fix it? Wich tool can fix this?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Giannis on July 01, 2012, 10:52:56 AM
some flashers or bin editors. i don't know if i can post here the names.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: azaiats on July 01, 2012, 11:36:14 AM
My ECU addresses:

tsrldyn: 0x380bb5
b_kuppl: 0x00FD4e - 0x0008
vfil_w: 0x381bf4
nomt_w: 0x00f89e
wped: 0x3809b1
B_br: 0x00fd4c - 0x8000

Function at: 009b00
Variables at: 17e70

Original call/address: F3 F8 9D 89

My code:
9A 27 13 30 F2 F4 F4 9B D7 00 81 00 F2 F9 70 7E
40 49 9D 0B F2 F4 9E F8 D7 00 81 00 F2 F9 72 7E
40 49 FD 03 F7 8E B5 8B 0D 2F 9A 27 29 30 8A 26
22 F0 F2 F4 9E F8 D7 00 81 00 F2 F9 76 7E 40 49
FD 1A C2 F4 B1 89 D7 00 81 00 C2 F9 78 7E 40 49
FD 12 D7 00 38 00 F2 F4 F0 4F D7 00 81 00 F2 F9
74 7E 40 49 9D 11 F7 8E B5 8B 08 41 D7 00 38 00
F7 F8 F0 4F 0D 09 D7 00 38 00 F6 8F F0 4F 0D 04
D7 00 38 00 F6 8E F0 4F F3 F8 9D 89 DB 00 FF FF

Can someone check if this is ok? Sometimes the car start, sometimes the car won't. Double checked and my checksum is OK, without DTC's.
Some help are appreciated.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on July 01, 2012, 03:02:23 PM
@azaiats
Upload also the original file of your ecu for the check.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: azaiats on July 01, 2012, 03:05:35 PM
Here, original binary without any mod.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: rob.mwpropane on July 02, 2012, 12:00:48 PM
Here, original binary without any mod.

I have had conversations with others on this forum that have seen earlier versions of WinOLS not correct the checksums for the specified area where code is added. They have also said Tunerpro plugin works. For ~13$ or so USD it's worth a shot;) Just a thought.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: azaiats on July 02, 2012, 02:40:06 PM
The problem ins't the checksums... The car is trying to start but for the sounds and pops I hear on the exhaust I guess the clutch address/mask is invalid and didn't recognizing that I'm not pushing  the clutch when I try to start it. So it's flooding with gas when ignition cuts on low rpms... Sometimes when I pump the gas pedal like crazy the exhaust pops and the car start...

ECU isn't giving any DTC's.

Maybe someone with HP ECU want to help me out to make this work on our cars... I'll try to fix this again on the weekend.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: RS-MAD on October 01, 2012, 09:49:25 AM
I need help with make it on 1.8T 512kb ECU , someone did it ?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Giannis on October 01, 2012, 11:01:36 PM
The problem ins't the checksums... The car is trying to start but for the sounds and pops I hear on the exhaust I guess the clutch address/mask is invalid and didn't recognizing that I'm not pushing  the clutch when I try to start it. So it's flooding with gas when ignition cuts on low rpms... Sometimes when I pump the gas pedal like crazy the exhaust pops and the car start...

ECU isn't giving any DTC's.

Maybe someone with HP ECU want to help me out to make this work on our cars... I'll try to fix this again on the weekend.
i dont think that is the clunch address the problem. I doesn't matter until it reaches the rpm thersold. I think the rpm address is wrong.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: nyet on October 02, 2012, 06:54:26 PM
Matchew provably knows what he is doing. You? Not so much.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: rob.mwpropane on October 03, 2012, 11:40:14 AM
matchew is actually VERY informative and helpful.

I agree. Just because he's not willing to wipe ones ass when they need help with their shit, doesn't make him a douche. I'm actually surprised (and grateful) he's willing to share as much as he does. He doesn't get paid for the stuff he posts, and clearly he does something along these lines for a living. So really, he's working for free....

To RS-MAD,

If you posted and said "I did A,B, and C, but I just can't seem to get it, you most likely would have been met with warmer responses. No offense, but most people on here are more than willing to help if they see personal effort.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: k0mpresd on October 03, 2012, 11:43:13 AM
yes, matchew is a good guy. ive talked to him on msn a few times. always willing to share. not spoon feed though.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: RS-MAD on October 03, 2012, 11:49:26 AM
I agree. Just because he's not willing to wipe ones ass when they need help with their shit, doesn't make him a douche. I'm actually surprised (and grateful) he's willing to share as much as he does. He doesn't get paid for the stuff he posts, and clearly he does something along these lines for a living. So really, he's working for free....

To RS-MAD,

If you posted and said "I did A,B, and C, but I just can't seem to get it, you most likely would have been met with warmer responses. No offense, but most people on here are more than willing to help if they see personal effort.


Ok , sorry for this !
Im trying to make it work on 1.8T 512kb ECU , I understand how the routine works in 1MB ECU , my problem is how to locate single values that I need it to make it work ?
ME7tool that make addresses for 1MB ecu , is this work also with older type ECUs (512kb)   ?
Maybe not ...
So first I must locate wped , tsrldyn and so ......

Thanks again ....

P.S. To Matchew , sorry didnt want to be rude , accept my apologies. !


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Bische on October 03, 2012, 12:04:31 PM
Everybody here is helpful , first question HOW YOU WILL PAY :) Very helpful :P

I can be helpful too , if I cant disasemble dont mean I cant tune cars ... if noone wants to help , then the way is clear , read , test then
test and read and things will go clearly . If I wanted to pay , here is not the place ... I though this was place to share knoledge not bank accounts ...

Greetings ...



Ofcourse, but doing someone else's job/work/tune for them does not equal sharing unfortunatly.

I can only speak for myself, but I have spent COUNTLESS of hours reading the FR and staring at the code in these binarys, I dont even want to know how much time I have laid down.. Hell, I have been online on this forum alone, reading for over 5days.

And I only know a fraction compared to other members on here, and I sure as hell dont feel like doing someone elses work for them, just because I happen to know how to do it. Im more than willing to help where I can, but I still have alot to learn before I would feel comfortable pointing others in the right direction.

Im trying to contribute by documenting the problems/solutions I stumble upon on this forum, hopefully helping others searching for answers.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: prj on October 03, 2012, 01:04:22 PM
Ok , sorry for this !
Im trying to make it work on 1.8T 512kb ECU , I understand how the routine works in 1MB ECU , my problem is how to locate single values that I need it to make it work ?
ME7tool that make addresses for 1MB ecu , is this work also with older type ECUs (512kb)   ?
Maybe not ...
So first I must locate wped , tsrldyn and so ......

Thanks again ....

P.S. To Matchew , sorry didnt want to be rude , accept my apologies. !

Yes, ME7Logger will find addresses on 512k ECU as well.
And the rest that it does not find, search in ASM by first finding it in the 1MB ECU, finding what functions access these variables and then search for the same function in the 512k ECU.
This will give you the location of the variables in the 512k ECU.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: RS-MAD on October 03, 2012, 03:15:18 PM
Yes, ME7Logger will find addresses on 512k ECU as well.
And the rest that it does not find, search in ASM by first finding it in the 1MB ECU, finding what functions access these variables and then search for the same function in the 512k ECU.
This will give you the location of the variables in the 512k ECU.
When I try with my file program says : findfirst in illegal range 00008395 - 000083D5
What that mean ?

Thanks ...


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: prj on October 04, 2012, 04:40:58 AM
I don't know what that means, but are you sure your binary is OK?
I have used ME7Logger with many 512k binaries and never had problems...


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: RS-MAD on October 04, 2012, 07:56:22 AM
I don't know what that means, but are you sure your binary is OK?
I have used ME7Logger with many 512k binaries and never had problems...
Im tryind it on two different ECU's and got same error . Both of them very early motronics. 0261204900 and 0261206797 , and yes I double check the binarys.

I will post the whole routine with adres from ME7Logger but nothing happens.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: aef on October 06, 2012, 11:25:28 AM
Hello,

im trying to implement this into a 8L0906018N.

Right now im stuck at the point to find FTOMN.
FTOMN is located at 1A43D in HN. So i opended a HN file with the hexeditor and there is "3C" resp. "<" located.
Before and after this it looks like:

1A43C 1A43D 1A43E
 3A       3C       3E
  :         <         >

If i search ":<>" in my 8L0N file i cant find anything.

Am i on the right way or is there something basically wrong?
I am new to this and english isnt my native language. So please be nice  :)

edit: I have definitions for 8L0CB and 8L0F File here and it says 1A2EB and 1633B but there is nothing in my 8L0N file.



Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: aef on October 07, 2012, 01:28:59 PM
Can someone confirm FTOMN is at 0x1636C within 1037354092 SW?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: eazydaz on October 12, 2012, 07:26:25 AM
can you anyone helped me with launch control? I try launch control from this link,but I can most agressive launch control..

I have have 032HN with K04..

http://nefariousmotorsports.com/forum/index.php?action=printpage;topic=151.0 (http://nefariousmotorsports.com/forum/index.php?action=printpage;topic=151.0)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: automan001 on October 18, 2012, 02:55:15 AM
ME7.x_LC_NLS_rev003.pdf
Concerning translation of GPR's ram addresses FD00..FDFF from .ecu file for b_ flags. I've read snook's ME7.x_LC_NLS_rev003.pdf and discovered that there is no magic with even bits of GPRs as described there, and there is no need in that dummy translation table. Everything is more simple.
For example you want to translate B_kuppl for M-box from *.ecu file into the code. In corresponding .ecu file you find
B_kuppl, {CondClutchPedalSwitch}, 0x00FD56, 2, 0x0100, {}, 0, 0, 1, 0, {Bedingung Kupplung betдtigt}
Address of register is calculated as follows:
Take address 0x00FD56 remove leading 0x00FD, you will get 56, dividde by 2 in hex mode will get 2B
Bit address is calculated in following way:
Take mask 0x100 from .ecu, whih represents power of 2 in hex mode: 2^x, you need to find x
Just write log(0x100)/log(2) in Google search or use calculator and it will give you exact result.
In our case we get = 0x8.
Then you need to substitute these values into conditional jumps which have format like this:
9A QQ rr q0
Here 9A is JNB command, QQ we calculated = 2Bh, q was calculated = 8h
When you substitute you will get something like
9A 2B 13 80
Which in assembler code means
JNB      2BH.8,002AH ; B_kuppl, 0x00FD56, 0x0100
Note, format for bit address is q0 which in our case 80, but not 0q or 08


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Skibum513 on December 06, 2012, 09:38:24 PM
Hey working on this right now but I'm stuck on number 15 on the pdf. I cant figure out how to make the winols references? speedthreshold etc.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: catbed on December 06, 2012, 10:42:38 PM
Hey working on this right now but I'm stuck on number 15 on the pdf. I cant figure out how to make the winols references? speedthreshold etc.

Right click on the hex dump, Go to address -> 17E00, Press 'K', then fill in the conversion factor, LSB, etc for all.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Skibum513 on December 06, 2012, 10:51:07 PM
Right click on the hex dump, Go to address -> 17E00, Press 'K', then fill in the conversion factor, LSB, etc for all.


^ Thank you very much!   :D


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: ibizacupra on December 17, 2012, 10:10:32 AM
So this was correct eventually.

For now NLS works on 06A906032RP very well but LC with antilag does not.
Here are my parameters with its values:

Antilag LC
Code:
SpeedThreshold:		5km/h
LaunchRPM: 4400rpms
IgnitionCutDuration: 160ms
RPMThreshold: 4550rpms
AccPedalThreshold: 90.2%


may I ask what you used in the map setting properties to get these units to be human readable?

thankyou

I found the pdf and think I answered my own question..
posted below in case anyone else is looking for the same info.. ans search might show this.



Quote
Make your xdf/winols references like this, using setzis 17E00 for example: (enter your choosen adress for conditions instead)

SpeedThreshold: 0x17E00 size 2, 16bit LSB, conversion: X * 0.0078125 (km/h)
LaunchRPM: 0x17E02 size 2, 16bit LSB, conversion: X * 0.25 (rpm)
IgnitionCutDuration: 0x17E04 size 2, 16bit LSB, conversion: X * 20 (ms)
RPMThreshold: 0x17E06 size 2, 16bit LSB, conversion: X * 0.25 (rpm)
AccPedalThreshold: 0x17E08 size 1, 8bit LSB, conversion: X * 0.392157 (%)

FTOMN: find this adress in your damos/xdf, 8bit LSB, conversion: X / 10 (ms)


thanks guys



Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Gizmo20VT on December 19, 2012, 08:14:49 AM
Hi Peeps

Fantastic thread and great respect for those who have done it successfully with the PDF.

Thank you to Setzi and Snook aswell for the time taken on the Information and sharing.

I wonder if someone could perhaps assist me with adding NLS and LC to my current File 1.8T AMK 8N0906018A.

I have located my maps but I cant figure out how to calculate my new function in my file, im using 010 hex editor, I have located space in the original code at address 1:7CE0h - 1:7D60h. Address supplied below.

tsrldyn 0x380B96  ->
B_kuppl 0x00FD4C 0x0008 ->
vfil_w 0x381BC8 -> 
nmot_w 0x00F89C ->
wped 0x38099C  ->
B_brems 0x00FD4A 0x8000 ->
counter_NoLiftShift: 0x3839FE ->

I know I can take the last two digits of the address and divide them by 2 in hex calculator but I still missing two piece of code per address no?

Another question, where Do I find the line for step 13? Does the line "D7 40 06 02 03 F8" work for my ecu as well?

"13. Now to locate the correct routine and call the new function:
in your hex editor, go to the end of file and search upwards for: "D7 40 06 02 03 F8" and you should be in the right place."







Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Gizmo20VT on December 25, 2012, 12:02:26 AM
Alright, I think I have most of my code correct. Perhaps my conditions are not inline, as when I engauge the clutch and rev there a pops and bangs but it doesnt sound correct, also my RPM is doesnt limit, it just build slow.

This is what I have done.

Condition Variables Located at 0x17EC0

tsrldyn 0x380B96  -> 96 8B
B_kuppl 0x00FD4C.3 0x0008 -> 30 4c ->26
vfil_w 0x381BC8 -> C8 9B
nmot_w 0x00F89C -> 9C F8
wped 0x38099C 899C -> 9C 89
B_brems 0x00FD4A.15 0x8000 -> 15:F0 4A -> 25
counter_NoLiftShift: 0x3839FE -> FE 39

My Code

(http://i435.photobucket.com/albums/qq71/tpietersen123/code.jpg)
Values in TunerPro

Ignition Cut set to 160.00
LaunchRPM 4545.25
RPMThreshold 4650.75
AccPedalThreshold 90.20
SpeedThreshold 305.75

What Am I overlooking :(


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Gizmo20VT on December 27, 2012, 11:44:28 AM
Also does anyone know where I can locate FTOMN on a AG ecu?

Just a Edit, I found 1 typing errors in my code which I have corrected. Going to test the new bin and see if LC works :D!

Edit again, Could FTOMN be located at 01A2D0 byte 12?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: littco on December 27, 2012, 02:54:51 PM
Alright, I think I have most of my code correct. Perhaps my conditions are not inline, as when I engauge the clutch and rev there a pops and bangs but it doesnt sound correct, also my RPM is doesnt limit, it just build slow.

This is what I have done.

Condition Variables Located at 0x17EC0

tsrldyn 0x380B96  -> 96 8B
B_kuppl 0x00FD4C.3 0x0008 -> 30 4c ->26
vfil_w 0x381BC8 -> C8 9B
nmot_w 0x00F89C -> 9C F8
wped 0x38099C 899C -> 9C 89
B_brems 0x00FD4A.15 0x8000 -> 15:F0 4A -> 25
counter_NoLiftShift: 0x3839FE -> FE 39

My Code

(http://i435.photobucket.com/albums/qq71/tpietersen123/code.jpg)
Values in TunerPro

Ignition Cut set to 160.00
LaunchRPM 4545.25
RPMThreshold 4650.75
AccPedalThreshold 90.20
SpeedThreshold 305.75

What Am I overlooking :(

Ignition cut needs to be between 200-500. Depending on turbo you need to adjust. Also 305.75 for speed threshold? Not sure you got he conversion right! Needs to be around 1mph.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Gizmo20VT on December 27, 2012, 03:11:47 PM
Thanks Littco, that is noted. So my Speedthreshold should be set alot lower instead of higher, I thought it limited the speed that NLS would be active to its target, so anything under "300" it would still be active.

Do you perhaps know if I could be right with FTOMN?



Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: littco on December 27, 2012, 03:23:02 PM
Thanks Littco, that is noted. So my Speedthreshold should be set alot lower instead of higher, I thought it limited the speed that NLS would be active to its target, so anything under "300" it would still be active.

Do you perhaps know if I could be right with FTOMN?


speed threshold is the speed BELOW which launch is active, above it Ecu runs normally, below limiter is active.

1a2dc...not tough really!! :-)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Gizmo20VT on December 27, 2012, 03:36:51 PM
Thank you so much for the response Littco. Much Appriciated.

Still alot of learning to do on HEX  :-X.

So keen to test now, will post result in the morning. 


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Gizmo20VT on December 28, 2012, 04:14:30 PM
Alright no luck as yet, need to go over my work and see where I made a mistake, both LC and NLS are not working.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Gizmo20VT on December 28, 2012, 10:04:43 PM
 ;D ;D ;D Alright, got My LC working.


Faults I have made so far, didnt tick LSB in my XDF on the created addresses, rescanned my code and I have a question. I used the ME7.XX PDF and professors updated PDF for his 032KP.

Now my question is does Line 3 have to have B_br swapp with B_Kuppl as in Snook's pdf Quote below or should my line be the same as Professors PDF and have B_br and B_Kuppl?

40 49 FD 03 F7 8E AC 8D 0D 2F 9A 2B 29 80 8A 2B

"Line 3, first we have the tsrldyn located at bits 6-7, as "AC 8D",which reversed is 8DAC as in 0x380DAC, switch this for your own. remember those "jnb"(9A) and "jb"(8A)functions i mentioned we would run into earlier, well here we have them. you recognize the value after 9A? yes, that is the value you calculated earlier, and the same B_kuppl,swap it for the same adress as you did earlier.. and remember to also correct the bitmask like earlier which is stored in that 80. now wait, there is an 8A here.. followed by another 2B.. this is the B_brems you are seeing, and as it is located in the same registry, swap this adress to the same as B_kuppl, BUT remember to enter the correct bitmask!(see Line 4)"

Professor's PDF

(http://i435.photobucket.com/albums/qq71/tpietersen123/ProfessorPDF.jpg)


This is my Coding so far.

tsrldyn         0x380B96    0b96 -> 8B96 -> 96 8B
B_kuppl         0x00FD4C.3  0X0008 -> 30 4C -> 26
vfil_w      0x381BC8    1BC8 -> 9BC8 -> C8 9B
nmot_w      0x00F89C    F89C -> 9C F8
wped      0x38099C    099C -> 899C -> 9C 89
B_brems      0x00FD4A.15 0X8000 -> 15:F0 4a - 25
counter_NoLiftShift:    0x383A0A A0 3A


Function Parameters:
-------------------
SpeedThreshold:      0x17EC0 size 2, 16bit LSB
LaunchRPM:       0x17EC2 size 2, 16bit LSB
IgnitionCutDuration:   0x17EC4 size 2, 16bit LSB
RPMThreshold:       0x17EC6 size 2, 16bit LSB
AccPedalThreshold:    0x17EC8 size 1, 8bit LSB

Revised Function:
----------------
9A 26 13 30 F2 F4 C8 9B D7 00 81 00 F2 F9 C0 7E
40 49 9D 0B F2 F4 9C F8 D7 00 81 00 F2 F9 C2 7E
40 49 FD 03 F7 8E 96 8B 0D 2F 9A 26 29 30 8A 26
22 F0 F2 F4 9C F8 D7 00 81 00 F2 F9 C6 7E 40 49
FD 1A C2 F4 9C 89 D7 00 81 00 C2 F9 C8 7E 40 49
FD 12 D7 00 38 00 F2 F4 A0 3A D7 00 81 00 F2 F9
C4 7E 40 49 9D 11 F7 8E 96 8B 08 41 D7 00 38 00
F7 F8 A0 3A 0D 09 D7 00 38 00 F6 8F F0 4F 0D 04
D7 00 38 00 F6 8E A0 3A F3 F8 90 89 DB 00 FF FF

My Call 8A 00 9C

Function: 0xA9C00



Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: littco on December 29, 2012, 03:12:09 AM
Why change the NLS counter?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Gizmo20VT on December 29, 2012, 03:19:39 AM
From my previous code or from the PDF's 0x384FF0?

I cant find a 0x384FF0 in my .ecu file, and I just redid the entire coding for a fresh start.

From what I understand in the PDF one can substitute the 0x384FF0 for any clean address found in the .ecu file?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: littco on December 29, 2012, 03:23:11 AM
Yeah, if the address isn't in the .ecu file then its a clean address. No need to change really.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on December 29, 2012, 04:39:48 AM
Quote
Now my question is does Line 3 have to have B_br swapp with B_Kuppl as in Snook's pdf Quote below or should my line be the same as Professors PDF and have B_br and B_Kuppl?

B_br is NOT to be used at all, its B_brems you should be using, which usually is located in the same registry as B_kuppl.

you have them listed in different registrys as in:

Quote
B_kuppl         0x00FD4C.3  0X0008 -> 30 4C -> 26
B_brems      0x00FD4A.15 0X8000 -> 15:F0 4a - 25

looking at your code, you still use the FD4C.15 adress in line 3 to reference B_brems.. but im thinking this is your B_br found in .ecu file.. right?


the NLS-counter can be placed at any FREE adress, just make sure it is just that, free.
if you could find the adress in your .ecu where you placed the counter, then it isnt free, 384FF0 usually is.




Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Gizmo20VT on December 29, 2012, 04:43:59 AM
So B_br does not = B_brems?  ???

I misunderstood this then?

Yes E0 not 0E  :)
B_br == B_brems

B_br is NOT to be used at all, its B_brems you should be using, which usually is located in the same registry as B_kuppl.

you have them listed in different registrys as in:



the NLS-counter can be placed at any FREE adress, just make sure it is just that, free.
if you could find the adress in your .ecu where you placed the counter, then it isnt free, 384FF0 usually is.





Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on December 29, 2012, 04:47:01 AM
yes, you missunderstood that.. B_br is used in a brake-test, and B_brems is the actual pedal-switch for the brake.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Gizmo20VT on December 29, 2012, 04:48:32 AM
Thank you  ;D!


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on December 29, 2012, 05:01:04 AM
iv found the B_brems to often be located -2 in the bitregistry where the B_kuppl is.. that is, if the kuppl is at FD4C.E, then B_brems would often be located at FD4C.C

but that is not allways the case, need to dissassemble and have a look at the code to be sure.


i will write a revised function with better functionality and release here when i have the time to spare.. might also include a function-writer where you simply enter your values and it spits out the complete function.


sorry if the PDF is a bit dim, it was my first attempt at dissassembling these ecus, assembler and altering instructions.. ive advanced quite a bit in these fields since then.. just wish i had the time to really dig into the code..  ::)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Gizmo20VT on December 29, 2012, 05:04:13 AM
This PDF is still a great AID to those who wish to actually attempt it themselves... I struggled at first, but just revised over and over and I think im heading in the right direction  :D.

Once again thank you for taking the Time to complete and share the PDF, both you and Setzi.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: littco on December 29, 2012, 07:13:18 AM
iv found the B_brems to often be located -2 in the bitregistry where the B_kuppl is.. that is, if the kuppl is at FD4C.E, then B_brems would often be located at FD4C.C

but that is not allways the case, need to dissassemble and have a look at the code to be sure.


i will write a revised function with better functionality and release here when i have the time to spare.. might also include a function-writer where you simply enter your values and it spits out the complete function.


sorry if the PDF is a bit dim, it was my first attempt at dissassembling these ecus, assembler and altering instructions.. ive advanced quite a bit in these fields since then.. just wish i had the time to really dig into the code..  ::)

Not sure I fully agree here. On all the ones I've done I've always used b_br and its never been an issue, both ALS and NLS work just fine and plenty of people to testify!

I've got this on an excel spread sheet, where you put in the address's and it spits out the code. I've also been working a lot on the new patch function of tunerpro5 and have made patches for some Ecu versions which automatically patch I the correct code into a stock/modified file.



Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: littco on December 29, 2012, 07:48:15 AM
just checked..

b_br works

The PDF you produced is very good, but unless you can dissassemble the code it's quite hard to see where it's gone wrong if it doesn't work. Just working on changing the hex to make it work is a real labour of love! Actually seeing the function/routine in IDApro and seeing where the parts all fit together makes a lot easier..

And it definately helps when you come to finding where the CALLS gets put in.#



Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on December 29, 2012, 11:59:16 AM
im thinking the condition where B_brems would interfere is not common at all.. which would be ONLY when doing a No-Lift-Shift above rpm threshold and above pedal threshold while simultaneously braking.

so yes, im sure you could put lots of variables in there, as long as them are not triggerd, and the function would still work under every other condition, but its written to use B_brems.



Quote
The PDF you produced is very good, but unless you can dissassemble the code it's quite hard to see where it's gone wrong if it doesn't work. Just working on changing the hex to make it work is a real labour of love! Actually seeing the function/routine in IDApro and seeing where the parts all fit together makes a lot easier..

yeah, dissassembling you own function after altering it, back and forth, as i once did, will help a lot.

i actually attached both assembled and dissasembled original function and pseudo-code to look at, in the PDF, but im not sure everybody noticed these attachments..?
it took me 3-4 days to figure out how to do this from scratch without notes and very little previous knowledge, so im sure people will figure it out.. and hopefully learn something in the process.

ive helped countless of people to implement this to their ecus, but i just havent got the time anymore.. an excel sheet is a good way to do it.. im sure a small Vbasic program could automate everything and sniff out the variables + patch any file.. if someone have the time to spare writing one.. i have some reviced functions coming up, so ill put my time into these instead.  ::)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Skibum513 on January 17, 2013, 12:56:16 PM
HAHAHA This is great! im gona destory my clutch but is totaly worth the look on those little subaru kids faces when a tt kicks there butt lol.  I set up my camera behind my exhaust for a vid sent my camera flying ten ft! may have had it a bit to close  8). But anyways thanks a ton for the write up!


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Skibum513 on January 18, 2013, 08:35:33 PM
Hey for the nls feature instead of useing the ignition cut deration to set a fixed time for spark cut on the nls has anyone tried to just raise the speed threshold? I was thinking that way the ignition cut would be active when clutch is depressed and throtle is above say 90% that way if you have a fast shift or slow shift it would be better matched for the time it takes to shift? not sure if that would work just wondering what peoples thoughts are on it.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: A.Dutsov on January 23, 2013, 10:49:39 AM
any chance to implement this into 1.8t audi tt 225ph file?
Audi_TT_1.8T_20V_0261206797_8L0906018M_ME7.5_352821 1mb file.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: matchew on January 23, 2013, 11:59:45 AM
any chance to implement this into 1.8t audi tt 225ph file?
Audi_TT_1.8T_20V_0261206797_8L0906018M_ME7.5_352821 1mb file.

Yes


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: A.Dutsov on January 23, 2013, 01:18:53 PM
how ;)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: professor on January 23, 2013, 01:42:36 PM
how ;)

Read this topic better you ll understand the how.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: A.Dutsov on January 23, 2013, 02:27:23 PM
are the addresses same for 1.8t 225?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: matchew on January 23, 2013, 02:33:17 PM
how ;)

Read or pay someone to do it.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: catbed on January 23, 2013, 06:46:34 PM
are the addresses same for 1.8t 225?

Could be, but probably not. The PDF has all the necessary info to do this yourself. I did this when I was first starting out with no problems. You will not get far on this forum asking to be spoon fed.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Gizmo20VT on January 24, 2013, 06:12:57 AM
I implemented this on my Audi S3 225BHP file, It took me some time to get it but once I understood How it worked it became alot easier  ;D I did a reference with Professor's PDF and Snook's, Works like a charm  ;)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: masterj on January 29, 2013, 02:29:01 PM
Guys, can someone check if I did it correctly on my file? ;)

Some addresses I used:
Code:
tsrldyn 0x380BA4		
b_kuppl 0x00FD4A.13
vfil_w 0x381CB8
nmot_w 0x00F89E
wped 0x3809A8
b_brems 0x00FD4A.11
NLS COUNT 0x38B800
   

Code:
SpeedThreshold				0x017400		
LaunchRPM 0x017402
IgnitionCutDuration 0x017404
RPMThreshold 0x017406
AccPedalThreshold 0x017408
FTOMN 0x01A61A
MAIN FUNCTION 0x0A6860
      
   
Code:
INJECTION @ A0BFA


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: masterj on February 02, 2013, 05:45:35 AM
For some reason I can't make NLS work. LC works perfectly but not NLS. Could someone check my file I've posted earlier?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: littco on February 02, 2013, 06:12:28 AM
For some reason I can't make NLS work. LC works perfectly but not NLS. Could someone check my file I've posted earlier?

ignore that.. I was talking cr*p didn't see you had moved the variables


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: littco on February 02, 2013, 06:48:49 AM
sub_8A6860:                             ; CODE XREF: sub_8A0BFAP
seg009:000A6860                 jnb     word_FD4A.13, loc_8A688A
seg009:000A6864                 mov     r4, word_381CB8
seg009:000A6868                 exts    #81h, #1 ; 'ü'
seg009:000A686C                 mov     r9, word_817400
seg009:000A6870                 cmp     r4, r9
seg009:000A6872                 jmpr    cc_NC, loc_8A688A
seg009:000A6874                 mov     r4, word_F89E
seg009:000A6878                 exts    #81h, #1 ; 'ü'
seg009:000A687C                 mov     r9, word_817402
seg009:000A6880                 cmp     r4, r9
seg009:000A6882                 jmpr    cc_ULE, loc_8A688A
seg009:000A6884                 movb    byte_380BA4, ZEROS
seg009:000A6888                 jmpr    cc_UC, loc_8A68E8
seg009:000A688A ; ---------------------------------------------------------------------------
seg009:000A688A
seg009:000A688A loc_8A688A:                             ; CODE XREF: sub_8A6860j
seg009:000A688A                                         ; sub_8A6860+12j ...
seg009:000A688A                 jnb     word_FD4A.13, loc_8A68E0
seg009:000A688E                 jb      word_FD4A.11, loc_8A68D6
seg009:000A6892                 mov     r4, word_F89E
seg009:000A6896                 exts    #81h, #1 ; 'ü'
seg009:000A689A                 mov     r9, word_817406
seg009:000A689E                 cmp     r4, r9
seg009:000A68A0                 jmpr    cc_ULE, loc_8A68D6
seg009:000A68A2                 movbz   r4, byte_3809A8
seg009:000A68A6                 exts    #81h, #1 ; 'ü'
seg009:000A68AA                 movbz   r9, byte_817408
seg009:000A68AE                 cmp     r4, r9
seg009:000A68B0                 jmpr    cc_ULE, loc_8A68D6
seg009:000A68B2                 exts    #38h, #1 ; '8'
seg009:000A68B6                 mov     r4, word_38B800
seg009:000A68BA                 exts    #81h, #1 ; 'ü'
seg009:000A68BE                 mov     r9, word_817404
seg009:000A68C2                 cmp     r4, r9
seg009:000A68C4                 jmpr    cc_NC, loc_8A68E8
seg009:000A68C6                 movb    byte_380BA4, ZEROS
seg009:000A68CA                 add     r4, #1
seg009:000A68CC                 exts    #38h, #1 ; '8'
seg009:000A68D0                 movb    word_38B800, rl4
seg009:000A68D4                 jmpr    cc_UC, loc_8A68E8
seg009:000A68D6 ; ---------------------------------------------------------------------------
seg009:000A68D6
seg009:000A68D6 loc_8A68D6:                             ; CODE XREF: sub_8A6860+2Ej
seg009:000A68D6                                         ; sub_8A6860+40j ...
seg009:000A68D6                 exts    #38h, #1 ; '8'
seg009:000A68DA                 mov     word_38B800, ONES
seg009:000A68DE                 jmpr    cc_UC, loc_8A68E8
seg009:000A68E0 ; ---------------------------------------------------------------------------
seg009:000A68E0
seg009:000A68E0 loc_8A68E0:                             ; CODE XREF: sub_8A6860:loc_8A688Aj
seg009:000A68E0                 exts    #38h, #1 ; '8'
seg009:000A68E4                 mov     word_38B800, ZEROS
seg009:000A68E8
seg009:000A68E8 loc_8A68E8:                             ; CODE XREF: sub_8A6860+28j
seg009:000A68E8                                         ; sub_8A6860+64j ...
seg009:000A68E8                 movb    rl4, byte_381C89
seg009:000A68EC                 rets
seg009:000A68EC ; End of function sub_8A6860



I checked the code and it looks ok.

Only suggestion is that I have put B_br instead of B_brems and not had an issue, worth trying?

25 90 needs to replace 25 D0

You know you have this

4E 4F 52 45 41 44 00 00  00 00 00 00 03 32 00 00  NOREAD......2.



Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: masterj on February 02, 2013, 08:18:24 AM
sub_8A6860:                             ; CODE XREF: sub_8A0BFAP
seg009:000A6860                 jnb     word_FD4A.13, loc_8A688A
seg009:000A6864                 mov     r4, word_381CB8
seg009:000A6868                 exts    #81h, #1 ; 'ü'
seg009:000A686C                 mov     r9, word_817400
seg009:000A6870                 cmp     r4, r9
seg009:000A6872                 jmpr    cc_NC, loc_8A688A
seg009:000A6874                 mov     r4, word_F89E
seg009:000A6878                 exts    #81h, #1 ; 'ü'
seg009:000A687C                 mov     r9, word_817402
seg009:000A6880                 cmp     r4, r9
seg009:000A6882                 jmpr    cc_ULE, loc_8A688A
seg009:000A6884                 movb    byte_380BA4, ZEROS
seg009:000A6888                 jmpr    cc_UC, loc_8A68E8
seg009:000A688A ; ---------------------------------------------------------------------------
seg009:000A688A
seg009:000A688A loc_8A688A:                             ; CODE XREF: sub_8A6860j
seg009:000A688A                                         ; sub_8A6860+12j ...
seg009:000A688A                 jnb     word_FD4A.13, loc_8A68E0
seg009:000A688E                 jb      word_FD4A.11, loc_8A68D6
seg009:000A6892                 mov     r4, word_F89E
seg009:000A6896                 exts    #81h, #1 ; 'ü'
seg009:000A689A                 mov     r9, word_817406
seg009:000A689E                 cmp     r4, r9
seg009:000A68A0                 jmpr    cc_ULE, loc_8A68D6
seg009:000A68A2                 movbz   r4, byte_3809A8
seg009:000A68A6                 exts    #81h, #1 ; 'ü'
seg009:000A68AA                 movbz   r9, byte_817408
seg009:000A68AE                 cmp     r4, r9
seg009:000A68B0                 jmpr    cc_ULE, loc_8A68D6
seg009:000A68B2                 exts    #38h, #1 ; '8'
seg009:000A68B6                 mov     r4, word_38B800
seg009:000A68BA                 exts    #81h, #1 ; 'ü'
seg009:000A68BE                 mov     r9, word_817404
seg009:000A68C2                 cmp     r4, r9
seg009:000A68C4                 jmpr    cc_NC, loc_8A68E8
seg009:000A68C6                 movb    byte_380BA4, ZEROS
seg009:000A68CA                 add     r4, #1
seg009:000A68CC                 exts    #38h, #1 ; '8'
seg009:000A68D0                 movb    word_38B800, rl4
seg009:000A68D4                 jmpr    cc_UC, loc_8A68E8
seg009:000A68D6 ; ---------------------------------------------------------------------------
seg009:000A68D6
seg009:000A68D6 loc_8A68D6:                             ; CODE XREF: sub_8A6860+2Ej
seg009:000A68D6                                         ; sub_8A6860+40j ...
seg009:000A68D6                 exts    #38h, #1 ; '8'
seg009:000A68DA                 mov     word_38B800, ONES
seg009:000A68DE                 jmpr    cc_UC, loc_8A68E8
seg009:000A68E0 ; ---------------------------------------------------------------------------
seg009:000A68E0
seg009:000A68E0 loc_8A68E0:                             ; CODE XREF: sub_8A6860:loc_8A688Aj
seg009:000A68E0                 exts    #38h, #1 ; '8'
seg009:000A68E4                 mov     word_38B800, ZEROS
seg009:000A68E8
seg009:000A68E8 loc_8A68E8:                             ; CODE XREF: sub_8A6860+28j
seg009:000A68E8                                         ; sub_8A6860+64j ...
seg009:000A68E8                 movb    rl4, byte_381C89
seg009:000A68EC                 rets
seg009:000A68EC ; End of function sub_8A6860



I checked the code and it looks ok.

Only suggestion is that I have put B_br instead of B_brems and not had an issue, worth trying?

25 90 needs to replace 25 D0

You know you have this

4E 4F 52 45 41 44 00 00  00 00 00 00 03 32 00 00  NOREAD......2.



Yes I know that I have set NOREAD...

Also why use b_br instead b_brems? B_brems is correct, because I have logged this bit to see if it is set when I press on brakes... One more thing that could affect NLS would be ram address. Currently I am using 0x38B800, but when I tried to log it with me7logger I always get decimal value of 12.

This is from my ecu file:
Code:
;Name           , {Alias}                           , Address, Size, Bitmask, {Unit},    S, I,            A,      B, Comment
NLS_COUNT , {NLS Count}    , 0x38B800,  1,  0x0000, {#}       , 0, 0,            1,      0, {NLS COUNT}

Does this look normal?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: littco on February 02, 2013, 08:42:47 AM
I use B_br as a) it works without issue and I know it works and B) it's listed on the .ECU files so you don't have to worry about finding it. Ease more than anything, If Brems works for you then great.

I'm sure it wouldn't make a difference but have you tried putting the NLS counter in the original ram location 384ff0? again only suggesting it as it works there.

Like I said I couldn't see anything wrong with the coding so not sure.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: masterj on February 07, 2013, 10:24:48 AM
I use B_br as a) it works without issue and I know it works and B) it's listed on the .ECU files so you don't have to worry about finding it. Ease more than anything, If Brems works for you then great.

I'm sure it wouldn't make a difference but have you tried putting the NLS counter in the original ram location 384ff0? again only suggesting it as it works there.

Like I said I couldn't see anything wrong with the coding so not sure.

Well I tried original location and it works now... Looks like I just took bad(used???) ram address, even though ida showed me it is free.... Anyway, lovin NLS! Thanks littco for giving me suggestions...


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: vagenwerk on February 10, 2013, 01:31:01 PM
Hi guys
Could you check if I did it correctly on my file?

My Call DA 8A 00 9C

Variables at 17EC0

tsrldyn    0x380BB5,   
B_kuppl    0x00FD4E.3
nmot_w     0x00F89E,           
wped       0x3809B1,   
B_brems    0x00FD4C.15       


Function Parameters:
-------------------
SpeedThreshold:      0x17EC0 size 2, 16bit LSB 
LaunchRPM:       0x17EC2 size 2, 16bit LSB       
IgnitionCutDuration:   0x17EC4 size 2, 16bit LSB 
RPMThreshold:       0x17EC6 size 2, 16bit LSB   
FTOMN  0ms

Code

9A 27 13 30 F2 F4 40 8E D7 00 81 00 F2 F9 C0 7E
40 49 9D 0B F2 F4 9E F8 D7 00 81 00 F2 F9 C2 7E
40 49 FD 03 F7 8E B5 8B 0D 2F 9A 27 29 30 8A 25
22 F0 F2 F4 9E F8 D7 00 81 00 F2 F9 C6 7E 40 49
FD 1A C2 F4 B1 89 D7 00 81 00 C2 F9 C8 7E 40 49
FD 12 D7 00 38 00 F2 F4 F0 4F D7 00 81 00 F2 F9
C4 7E 40 49 9D 11 F7 8E B5 8B 08 41 D7 00 38 00
F7 F8 F0 4F 0D 09 D7 00 38 00 F6 8F F0 4F 0D 04
D7 00 38 00 F6 8E F0 4F F3 F8 F3 8A DB 00 FF FF


Could You confirm checksum for me? Winols sometimes doesn't cover full  area chksm adress....i  won't brick ecu.

Is there any wrong ?



Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: vagenwerk on February 11, 2013, 01:12:58 PM
NLS works perfect - really shift like a butter !
ALS give nice Boom boom boom and boost build :D

THANKS GUYS !



Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: multitek on April 24, 2013, 11:19:28 AM
Can somebody please help here,cant find B_kuppl  14= ?
Can anyone check the rest code is correct before i put it to my ecu and explode it..??
i've attached the .ecu file



Function Location: B3000
Variables: 17E00

call A1D90: DA 8B 00 30


tsrldyn   0x380BB7  0BB7> 8BB7>      B7 8B
B_kuppl   0x00FD4E.14      14:       4E> 27  
vfil_w    0x381C0C      0C 9C>       0C 9C
nmot_w    0x00F89E                   9E F8
wped      0x3809B1   09B1> 89B1>     B1 89
B_br      0x00FD4E.10      10: A0      4E> 27


counter_NoLiftShift:    0x384FF0>>>   F0 4F


Function Parameters:
-------------------
SpeedThreshold:   0x17E00 size 2, 16bit LSB
LaunchRPM:       0x17E02 size 2, 16bit LSB
IgnitionCutDuration:   0x17E04 size 2, 16bit LSB
RPMThreshold:       0x17E06 size 2, 16bit LSB
AccPedalThreshold:    0x17E08 size 1, 8bit LSB

FTOMN 1A43D SET =0



9A 27 13 ??  F2 F4 0C 9C D7 00 81 00 F2 F9 C0 7E
40 49 9D 0B F2 F4 9E F8 D7 00 81 00 F2 F9 C2 7E
40 49 FD 03 F7 8E B7 8B 0D 2F 9A 27 29 ?? 8A 27
22 A0 F2 F4 9E F8 D7 00 81 00 F2 F9 C6 7E 40 49
FD 1A C2 F4 B1 89 D7 00 81 00 C2 F9 C8 7E 40 49
FD 12 D7 00 38 00 F2 F4 F0 4F D7 00 81 00 F2 F9
C4 7E 40 49 9D 11 F7 8E B7 8B 08 41 D7 00 38 00
F7 F8 F0 4F 0D 09 D7 00 38 00 F6 8F F0 4F 0D 04
D7 00 38 00 F6 8E F0 4F F3 F8 F3 8A DB 00 FF FF


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on April 25, 2013, 04:52:06 PM
9A 27 13 ??  F2 F4 0C 9C D7 00 81 00 F2 F9 C0 7E
40 49 9D 0B F2 F4 9E F8 D7 00 81 00 F2 F9 C2 7E
40 49 FD 03 F7 8E B7 8B 0D 2F 9A 27 29 ?? 8A 27
22 A0 F2 F4 9E F8 D7 00 81 00 F2 F9 C6 7E 40 49
FD 1A C2 F4 B1 89 D7 00 81 00 C2 F9 C8 7E 40 49
FD 12 D7 00 38 00 F2 F4 F0 4F D7 00 81 00 F2 F9
C4 7E 40 49 9D 11 F7 8E B7 8B 08 41 D7 00 38 00
F7 F8 F0 4F 0D 09 D7 00 38 00 F6 8F F0 4F 0D 04
D7 00 38 00 F6 8E F0 4F F3 F8 F3 8A DB 00 FF FF

?? = E0


complete function when conditions placed starting at 17E00 could/should look like this for the 032HN ecu..
make sure you set FTOMN(1A43D) to 0
also make sure to set conditions and make the link-in correctly.

9A 27 13 E0 F2 F4 0C 9C D7 00 81 00 F2 F9 00 7E
40 49 9D 0B F2 F4 9E F8 D7 00 81 00 F2 F9 02 7E
40 49 FD 03 F7 8E B7 8B 0D 2F 9A 27 29 E0 8A 27
22 C0 F2 F4 9E F8 D7 00 81 00 F2 F9 06 7E 40 49
FD 1A C2 F4 B1 89 D7 00 81 00 C2 F9 08 7E 40 49
FD 12 D7 00 38 00 F2 F4 F0 4F D7 00 81 00 F2 F9
04 7E 40 49 9D 11 F7 8E B7 8B 08 41 D7 00 38 00
F7 F8 F0 4F 0D 09 D7 00 38 00 F6 8F F0 4F 0D 04
D7 00 38 00 F6 8E F0 4F F3 F8 9D 89 DB 00 FF FF


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: multitek on April 26, 2013, 12:41:52 AM
?? = E0


complete function when conditions placed starting at 17E00 could/should look like this for the 032HN ecu..
make sure you set FTOMN(1A43D) to 0
also make sure to set conditions and make the link-in correctly.

9A 27 13 E0 F2 F4 0C 9C D7 00 81 00 F2 F9 00 7E
40 49 9D 0B F2 F4 9E F8 D7 00 81 00 F2 F9 02 7E
40 49 FD 03 F7 8E B7 8B 0D 2F 9A 27 29 E0 8A 27
22 C0 F2 F4 9E F8 D7 00 81 00 F2 F9 06 7E 40 49
FD 1A C2 F4 B1 89 D7 00 81 00 C2 F9 08 7E 40 49
FD 12 D7 00 38 00 F2 F4 F0 4F D7 00 81 00 F2 F9
04 7E 40 49 9D 11 F7 8E B7 8B 08 41 D7 00 38 00
F7 F8 F0 4F 0D 09 D7 00 38 00 F6 8F F0 4F 0D 04
D7 00 38 00 F6 8E F0 4F F3 F8 9D 89 DB 00 FF FF

Thanks so much sn00k.
the only thing i cant figure out is the calculation
for b_kuppl and b_brems.i am a bit confused
b_brems=b_br  or  b_brems=b__kuppl -2 ??
and how we convert the bitmask numbers?
can you analyze a bit more the way?(14=E0)
(10=C0)
Many thanks again for sharing these knowledge!


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: multitek on April 26, 2013, 12:56:47 PM
Is it possible someone check my code and calculate the checksumm,
i am not sure it's corrected properely and i dont want to burn my ecu.
Thanks in advance.

Function Location: B3000
Variables: 17E00  


call A1D92: DA 8B 00 30


tsrldyn   0x380BB7  0BB7> 8BB7>      B7 8B
B_kuppl   0x00FD4E.14      14: E0      4E> 27  
vfil_w    0x381C0C      0C 9C>       0C 9C
nmot_w    0x00F89E                   9E F8
wped      0x3809B1   09B1> 89B1>     B1 89
B_brems   0x00FD4E.12      12: C0      4E> 27

counter_NoLiftShift:    0x384FF0>>>   F0 4F

Function Parameters:
-------------------
SpeedThreshold:   0x17E00 size 2, 16bit LSB  3KM/H  
LaunchRPM:       0x17E02 size 2, 16bit LSB  4500RPM
IgnitionCutDuration:   0x17E04 size 2, 16bit LSB  200M/SEC
RPMThreshold:       0x17E06 size 2, 16bit LSB  5500rpm
AccPedalThreshold:    0x17E08 size 1, 8bit LSB    90%    


FTOMN 1A43D SET =0  


9A 27 13 E0 F2 F4 0C 9C D7 00 81 00 F2 F9 00 7E
40 49 9D 0B F2 F4 9E F8 D7 00 81 00 F2 F9 02 7E
40 49 FD 03 F7 8E B7 8B 0D 2F 9A 27 29 E0 8A 27
22 C0 F2 F4 9E F8 D7 00 81 00 F2 F9 06 7E 40 49
FD 1A C2 F4 B1 89 D7 00 81 00 C2 F9 08 7E 40 49
FD 12 D7 00 38 00 F2 F4 F0 4F D7 00 81 00 F2 F9
04 7E 40 49 9D 11 F7 8E B7 8B 08 41 D7 00 38 00
F7 F8 F0 4F 0D 09 D7 00 38 00 F6 8F F0 4F 0D 04
D7 00 38 00 F6 8E F0 4F F3 F8 9D 89 DB 00 FF FF


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: cactusgreens4 on April 26, 2013, 01:52:05 PM
Could someone please help me out? I have been trying forever now to add ALNLS to my tune and I cannot for the life of me figure it out no matter how I edit the code. With tuner pro and setzi's xdf or with sn00ks pdf. I just cannot seem to make it work. So I was hoping someone could maybe take a few minutes and look at my file and see if what I have done is not only correct but also done correctly. It is an m box file so my locations and everything are the same setzi's but I will post them anyway also I followed the instructions in the wiki here: http://www.nefariousmotorsports.com/wiki/index.php/Adding_anti-lag_launch_control_and_no-lift_shift    and also in sn00k's pdf and nothing seems to work for me. My file is just Notorious stage 2 file with my krkte and tvub for larger injectors. Along with the ALNLS code. If anyone is willing to help that would be greatly appreciated. And thanks in advance!

My call: DA 88 00 E8
Variables at 17E00

tsrldyn:   0x380DAC
B_kuppl:    0x00FD56.8   
vfil_w:    0x380E40
nmot_w:   0x00F87A
wped:   0x380B02
B_brems:   0x00FD56.6 

function parameters

SpeedThreshold:      0x17E00 size 2, 16bit LSB
LaunchRPM:       0x17E02 size 2, 16bit LSB
IgnitionCutDuration:   0x17E04 size 2, 16bit LSB
RPMThreshold:       0x17E06 size 2, 16bit LSB
AccPedalThreshold:    0x17E08 size 1, 8bit LSB

Code

9A 2B 13 80 F2 F4 40 8E D7 00 81 00 F2 F9 00 7E
40 49 9D 0B F2 F4 7A F8 D7 00 81 00 F2 F9 02 7E
40 49 FD 03 F7 8E AC 8D 0D 2F 9A 2B 29 80 8A 2B
22 60 F2 F4 7A F8 D7 00 81 00 F2 F9 06 7E 40 49
FD 1A C2 F4 02 8B D7 00 81 00 C2 F9 08 7E 40 49
FD 12 D7 00 38 00 F2 F4 F0 4F D7 00 81 00 F2 F9
04 7E 40 49 9D 11 F7 8E AC 8D 08 41 D7 00 38 00
F7 F8 F0 4F 0D 09 D7 00 38 00 F6 8F F0 4F 0D 04
D7 00 38 00 F6 8E F0 4F F3 F8 F3 8A DB 00 FF FF


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sn00k on April 27, 2013, 04:41:09 AM
Could someone please help me out? I have been trying forever now to add ALNLS to my tune and I cannot for the life of me figure it out no matter how I edit the code.

had a quick look at your bin.. i would suggest you move the function to the original A9C00 and make the call to it there.. as per the principle "dont fix what aint broken".. we all know it works when placed THERE, so why move it..?  ;D


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: littco on April 27, 2013, 04:55:28 AM
Here is an xdf with the patch function for adding ALS into the HN.

Just open the the bin then select the xdf and click on the patch and patch it in.

save the .bin and there you have it.

Maybe others can Add some more :-)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: multitek on April 27, 2013, 08:42:49 AM
?? = E0


complete function when conditions placed starting at 17E00 could/should look like this for the 032HN ecu..
make sure you set FTOMN(1A43D) to 0
also make sure to set conditions and make the link-in correctly.

9A 27 13 E0 F2 F4 0C 9C D7 00 81 00 F2 F9 00 7E
40 49 9D 0B F2 F4 9E F8 D7 00 81 00 F2 F9 02 7E
40 49 FD 03 F7 8E B7 8B 0D 2F 9A 27 29 E0 8A 27
22 C0 F2 F4 9E F8 D7 00 81 00 F2 F9 06 7E 40 49
FD 1A C2 F4 B1 89 D7 00 81 00 C2 F9 08 7E 40 49
FD 12 D7 00 38 00 F2 F4 F0 4F D7 00 81 00 F2 F9
04 7E 40 49 9D 11 F7 8E B7 8B 08 41 D7 00 38 00
F7 F8 F0 4F 0D 09 D7 00 38 00 F6 8F F0 4F 0D 04
D7 00 38 00 F6 8E F0 4F F3 F8 9D 89 DB 00 FF FF


Can you please explain how the conversion works for
B_kuppl and B_brems with bitmasks?
which is the formula that  convert for example bitmask  .14 to E0 ?? OR .10 to C0 ??
Thanks again.   


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: cactusgreens4 on April 27, 2013, 11:37:37 PM
had a quick look at your bin.. i would suggest you move the function to the original A9C00 and make the call to it there.. as per the principle "dont fix what aint broken".. we all know it works when placed THERE, so why move it..?  ;D

Alright I can do that. Which means I would need to change a few lines in my code too right?

Also does it matter that in my .ecu file, the locations you used for "dmvad_w" and "ftead_w" are different in my file... for example your dmvad_w is at memory location 0x384B90 and in my file dmvad_w is at 0x382824. as for ftead_w, in your file it is at 0x3852B4 and in mine it is at 0x382BCA. not really sure if this matters but i believe it does. so I would have to alter the code for that as well... am I right again?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: cactusgreens4 on May 03, 2013, 06:04:36 PM
Also does it matter that in my .ecu file, the locations you used for "dmvad_w" and "ftead_w" are different in my file... for example your dmvad_w is at memory location 0x384B90 and in my file dmvad_w is at 0x382824. as for ftead_w, in your file it is at 0x3852B4 and in mine it is at 0x382BCA. not really sure if this matters but i believe it does. so I would have to alter the code for that as well... am I right again?

Can someone please confirm or deny this?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: vagenwerk on May 04, 2013, 05:12:18 AM
my als lc   ;)
http://www.youtube.com/watch?feature=player_embedded&v=htCerRLUllU


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: vwmaniac on May 04, 2013, 08:37:59 PM
If someone could check this i would appreciate it. Thsnk You

B_br 0x00FD3C bit mask >Bit mask .10 > 1E A0
B_kuppl 0x00FD3C > Bit mask .14 > 1E E0
vfil_w 0x380D9E > 9E 8D
Nmot_w 0x00F868 > 68 F8
Wped 0x380AD3 > D3 8A
Tsrldyn 0x380D1C > 1D 8D

Condition variables at 17E00-08



location 568FE
DA 87 00 A7 D7 40 06 02 03 F8



location 07 A7 00

9A 1E 13 E0 F2 F4 9E 8D D7 00 81 00 F2 F9 00 7E
40 49 9D 0B F2 F4 68 F8 D7 00 81 00 F2 F9 02 7E
40 49 FD 03 F7 8E 1C 8D 0D 2F 9A 1E 29 E0 8A 1E
22 A0 F2 F4 68 F8 D7 00 81 00 F2 F9 06 7E 40 49
FD 1A C2 F4 D3 8A D7 00 81 00 C2 F9 08 7E 40 49
FD 12 D7 00 38 00 F2 F4 F0 4F D7 00 81 00 F2 F9
04 7E 40 49 9D 11 F7 8E 1C 8D 08 41 D7 00 38 00
F7 F8 F0 4F 0D 09 D7 00 38 00 F6 8F F0 4F 0D 04
D7 00 38 00 F6 8E F0 4F F3 F8 74 8B DB 00 FF FF






Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: cactusgreens4 on May 11, 2013, 10:55:00 AM
had a quick look at your bin.. i would suggest you move the function to the original A9C00 and make the call to it there.. as per the principle "dont fix what aint broken".. we all know it works when placed THERE, so why move it..?  ;D

Well I moved my function to location AC900 and made the call to it there... I also placed my variables starting at 17E00. The only thing I think I really had an issue with is putting the counter somewhere. In the PDF it says to locate empty ram address like setzi used, which is 384FF0. And it says to find unused address preferably after the last used 0x384xxx Well the only issue is that in my .ecu file there are NO 384xxx addresses at all. So instead I tried to use dmvad_w as you had highlighted in your .ecu file in the pdf. For me this location is at x382824 so I took my last 4 digits and flipped them to come up with 24 28 that i would enter into my code. Which looked like this once i was done...

9A 2B 13 80 F2 F4 40 8E D7 00 81 00 F2 F9 00 7E
40 49 9D 0B F2 F4 7A F8 D7 00 81 00 F2 F9 02 7E
40 49 FD 03 F7 8E AC 8D 0D 2F 9A 2B 29 80 8A 2B
22 60 F2 F4 7A F8 D7 00 81 00 F2 F9 06 7E 40 49
FD 1A C2 F4 02 8B D7 00 81 00 C2 F9 08 7E 40 49
FD 12 D7 00 38 00 F2 F4 24 28 D7 00 81 00 F2 F9
04 7E 40 49 9D 11 F7 8E AC 8D 08 41 D7 00 38 00
F7 F8 24 28 0D 09 D7 00 38 00 F6 8F 24 28 0D 04
D7 00 38 00 F6 8E 24 28 F3 F8 F3 8A DB 00 FF FF

If someone could take a look, once again, to see what I have done wrong that would be great. And again, sorry for basically the same post I just really want to figure this out and nothing seems to be working out in my favor. Attached are my bin file and .ecu file as well. Thanks in advance.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: davetuner on May 15, 2013, 10:58:46 AM
Hi,

I've tried to implement this on my RS4 code and I get everything right but I struggle to find the empty RAM address for the NLScounter. So I searched for the same code sequence where setzi has his NLScounter address but the same address in my code is at 0x445700 and not 0x384ff0. Now this would not work because of the 0x38 pointer.

So what address would I pick ?

I've attached my before and after file, .ecu and my address notes.

I'd appreciate if somebody could have a look at it.

Thanks in advance.

Cheers,
David


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: catbed on May 15, 2013, 11:23:56 AM
Hi,

I've tried to implement this on my RS4 code and I get everything right but I struggle to find the empty RAM address for the NLScounter. So I searched for the same code sequence where setzi has his NLScounter address but the same address in my code is at 0x445700 and not 0x384ff0. Now this would not work because of the 0x38 pointer.

So what address would I pick ?

I've attached my before and after file, .ecu and my address notes.

I'd appreciate if somebody could have a look at it.

Thanks in advance.

Cheers,
David


Pick any address that is not listed as having something assigned to it.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: userpike on May 15, 2013, 02:01:23 PM
my als lc   ;)
http://www.youtube.com/watch?feature=player_embedded&v=htCerRLUllU
I wish people would make vids of the launch and NLS in action, I find vids like above a tease... kinda like when you've been making out with a hot ass chick all night at the bar and when it's time to take her home, she tells you she's really a dude.. 

That never happened to me by the way.. I swear.  :D


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: vagenwerk on May 16, 2013, 02:47:38 AM
I wish people would make vids of the launch and NLS in action, I find vids like above a tease... kinda like when you've been making out with a hot ass chick all night at the bar and when it's time to take her home, she tells you she's really a dude.. 

That never happened to me by the way.. I swear.  :D

Maybe in future i'll make short vid with als and start launch and flatshift on the road.  but i am little worried about my stock clutch ?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: cactusgreens4 on May 17, 2013, 03:08:03 PM
Pick any address that is not listed as having something assigned to it.

Do you think you could look at my .ecu file and tell me if i have picked an ok address? the address i picked is dmvad_w and it appears to be free and at location 0x382824. if you could verify that for me and maybe the rest of my file and let me know what you think that would be awesome. because i want to try and make this work for the drag races i plan on participating in tonight so if you could help i would even be willing to paypal some money. to anyone. just for a few pointers or a little help. not asking you to do it all for me. just help me better understand it. TIA


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: userpike on May 17, 2013, 09:54:35 PM
Maybe in future i'll make short vid with als and start launch and flatshift on the road.  but i am little worried about my stock clutch ?

eh what better way to blow up the stock clutch then with launch control?  ;D

just plan on upgrading it soon anyway. if you are making any considerable amount of power the clutch is probably slipping at WOT as it is. The clutch in my GTI 1.8T lasted 54000miles with a stg1 Nuespeed tune and supporting mods. (227hp stock: 180) I forget the tq but like an added 70 ft lbs over stock.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: catbed on May 17, 2013, 11:09:31 PM
Do you think you could look at my .ecu file and tell me if i have picked an ok address? the address i picked is dmvad_w and it appears to be free and at location 0x382824. if you could verify that for me and maybe the rest of my file and let me know what you think that would be awesome. because i want to try and make this work for the drag races i plan on participating in tonight so if you could help i would even be willing to paypal some money. to anyone. just for a few pointers or a little help. not asking you to do it all for me. just help me better understand it. TIA

You picked an address that has something assigned to it. You have to pick one that isn't listed.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: cactusgreens4 on May 18, 2013, 06:54:32 PM
You picked an address that has something assigned to it. You have to pick one that isn't listed.

How can you tell if it has something assigned to it or not? I thought if there was nothing in the brackets, {}, also known as the alias, that meant it was unused. And I used one like that and to me it appeared to be unused but apparently I was wrong... Maybe you could help to point me in the right direction on how to tell if it is used or not? Since I obviously cannot. Or maybe you could just find an unused one for me and I can do the rest? Here is my attached .ecu file again just in case.
Also, does the assigned address' "Unit", "S', "I", "A" or "B" matter what those variables are?


Edit: I think I may have figured it out. The address I used is TYP_scr and it is located at ram address 0x383C66. I am going to flash it and try it out right now, I will let you know the results.

Results: Still not working.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: catbed on May 19, 2013, 03:54:26 PM
How can you tell if it has something assigned to it or not? I thought if there was nothing in the brackets, {}, also known as the alias, that meant it was unused. And I used one like that and to me it appeared to be unused but apparently I was wrong... Maybe you could help to point me in the right direction on how to tell if it is used or not? Since I obviously cannot. Or maybe you could just find an unused one for me and I can do the rest? Here is my attached .ecu file again just in case.
Also, does the assigned address' "Unit", "S', "I", "A" or "B" matter what those variables are?


Edit: I think I may have figured it out. The address I used is TYP_scr and it is located at ram address 0x383C66. I am going to flash it and try it out right now, I will let you know the results.

Results: Still not working.

You're still picking RAM addresses that are already being used. The ones listed by ME7Logger are all being used.

You have to pick an arbitrary address not listed by ME7Logger and test it out.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: cactusgreens4 on May 19, 2013, 05:11:01 PM
You're still picking RAM addresses that are already being used. The ones listed by ME7Logger are all being used.

You have to pick an arbitrary address not listed by ME7Logger and test it out.

Ok I think I get what your saying. So pick an address like 0x0382456? Make sure it is not used in the .ecu file anywhere and it should work? If that is true then why did the 0x384FF0 address not work that stezi had used because that address is not found in my .ecu file... sorry for needing step by step help I just really do not understand and I think once I figure this last part out I will have it working. Hopefully.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: phila_dot on May 19, 2013, 05:20:15 PM
The ecu file from ME7Info only contains a SMALL percentage of the RAM variables used. You really need to disassemble the file and find a RAM address that's not used at all. There could be very serious consequences to picking the wrong address.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: cactusgreens4 on May 19, 2013, 05:32:38 PM
The ecu file from ME7Info only contains a SMALL percentage of the RAM variables used. You really need to disassemble the file and find a RAM address that's not used at all. There could be very serious consequences to picking the wrong address.

I hate to sound like a noob but... can you give me a step by step on how to do that? where do i get the file to disassemble? and how exactly do i know what to look for? it would be greatly appreciated and i would even be willing to pay a small amount. or maybe more if someone added it to my file for me. but its just frustrating because i have been trying for months now and i obviously cannot figure it out so i guess here soon ill just say fuck it and buy a wot box or something.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: phila_dot on May 19, 2013, 05:57:51 PM
Hold on...you're trying to add this to an S4 M-box?

There's numerous files in the tuned files section already and I'm pretty sure that the implementation on this file is well documented.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: cactusgreens4 on May 19, 2013, 06:01:05 PM
Well the flash is an m box flash yes however i have a few different ecu's that it could end up on. I have an a box an m box and a k box. But I dont think it matter what box you put it on. What matters is the file you flash to the box. but yes it is m box... and I have tried taking the coding from the tuned files and still was unable to get it to work... maybe i have a bad clutch switch?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: phila_dot on May 19, 2013, 06:06:20 PM
If your trying a file that's confirmed working for others, then it's most likely hardware on your end.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: cactusgreens4 on May 19, 2013, 06:10:54 PM
If your trying a file that's confirmed working for others, then it's most likely hardware on your end.

Well I am not trying the m box file with alnls on it but I suppose I could... Would just have to adjust it for my larger fuel injectors. But I honestly don't think it could behardware related on my end because the only hardware used used is the clutch switch right? And I know mine is good because the car wont start until I press the clutch in.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: userpike on May 20, 2013, 05:06:04 PM
Well I am not trying the m box file with alnls on it but I suppose I could... Would just have to adjust it for my larger fuel injectors. But I honestly don't think it could behardware related on my end because the only hardware used used is the clutch switch right? And I know mine is good because the car wont start until I press the clutch in.


It's still possible to be the switch. They aren't that expensive, change it out and be sure.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: cactusgreens4 on May 20, 2013, 05:07:55 PM
Is there a way to test the switch once I have it out? With a meter or something?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: ddillenger on May 20, 2013, 05:13:42 PM
Is there a way to test the switch once I have it out? With a meter or something?

http://wiki.ross-tech.com/wiki/index.php/Checking_Cruise_Control_using_Measuring_Values

Also, I looked at your file, I see no reason it doesn't work. I think you have a hardware issue.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: catbed on May 20, 2013, 06:04:44 PM
The ecu file from ME7Info only contains a SMALL percentage of the RAM variables used. You really need to disassemble the file and find a RAM address that's not used at all. There could be very serious consequences to picking the wrong address.

I agree 100%, but for this problem I was just illustrating a point.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: player on June 05, 2013, 02:53:20 PM
really nice thread...+1!

i have one big question....if i only want to use the no-lift shift..?how can i do that?cause i dont want my car to always rev to 4500 when stationary....

thanks!


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: player on June 06, 2013, 12:26:42 PM
NOBODY???


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: catbed on June 06, 2013, 01:10:20 PM
NOBODY???

FF the launch RPM.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: player on June 09, 2013, 05:35:23 AM
ty


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: jawier130 on June 20, 2013, 02:15:03 PM
Hi. I have a problem with ME7info.
When i run:"me7info -n file.bin" in my 512 Kb .bin
it say me findfirst in illegal range 00008391 - 000083d1
???????????????????????????


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: vwmaniac on June 21, 2013, 10:01:40 AM
PLEASE HELP I still can not get this to work on my 12v VR6 me7.1 ecu. I have tried mutiple NLS counter positions and i know all my address are correct. Does anyone have any ideas? I have posted the stock file. I also used the .exe script to pull the address also and even with those address it still will not work. I know my brake and clutch switches are working correctly via vag-com. If some one would please take a look at my file and tell me what the issue is I would be forever greatful. It is a 512k file and i have compared other 512k files and see no problems when doing a comparison. I have a damos for 12v vr6 and have used that to locate ftomn. the 12v vr6 does use a coil pack design instead of individual coils so i don't know if that is a hardware issue or not. so attached are my stock bin, new bin with function and my .ecu file.
also here are the locations of everything:

ftomn- 1670A
function call - 5EE06
function location-7A700
conditions-17E00
 if you guys need any more info to help me just ask i will be happy to prvide it. Thank you in advance, PLEASE HELP


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: adam- on August 22, 2013, 01:45:43 AM
Hi guys
Could you check if I did it correctly on my file?

My Call DA 8A 00 9C

Variables at 17EC0

tsrldyn    0x380BB5,   
B_kuppl    0x00FD4E.3
nmot_w     0x00F89E,           
wped       0x3809B1,   
B_brems    0x00FD4C.15       


Function Parameters:
-------------------
SpeedThreshold:      0x17EC0 size 2, 16bit LSB 
LaunchRPM:       0x17EC2 size 2, 16bit LSB       
IgnitionCutDuration:   0x17EC4 size 2, 16bit LSB 
RPMThreshold:       0x17EC6 size 2, 16bit LSB   
FTOMN  0ms

Code

9A 27 13 30 F2 F4 40 8E D7 00 81 00 F2 F9 C0 7E
40 49 9D 0B F2 F4 9E F8 D7 00 81 00 F2 F9 C2 7E
40 49 FD 03 F7 8E B5 8B 0D 2F 9A 27 29 30 8A 25
22 F0 F2 F4 9E F8 D7 00 81 00 F2 F9 C6 7E 40 49
FD 1A C2 F4 B1 89 D7 00 81 00 C2 F9 C8 7E 40 49
FD 12 D7 00 38 00 F2 F4 F0 4F D7 00 81 00 F2 F9
C4 7E 40 49 9D 11 F7 8E B5 8B 08 41 D7 00 38 00
F7 F8 F0 4F 0D 09 D7 00 38 00 F6 8F F0 4F 0D 04
D7 00 38 00 F6 8E F0 4F F3 F8 F3 8A DB 00 FF FF


Could You confirm checksum for me? Winols sometimes doesn't cover full  area chksm adress....i  won't brick ecu.

Is there any wrong ?



Borrowed this, if you don't mind, to check it out.  Me7Check sees it clean, as does WinOLS..

Flashed it onto my AUM (for people searching), with no issues. 

Works well, but it's really loud.  Used it outside the school (because it's far away from anything) at half 8 last night and 20 mins later, there was a police helicopter..  Went for a drive and passed armed response, then used it again, followed by another 3 police cars and the area I did it in then covered in police.

I'm gonna have to go into hiding. 8-) Blew a coilpack fuse though on NLS - guess that's because the dwell time is 0.

Interesting because I thought the HN had the later coil driver, I guess not.

Gonna drop the RPM because I think 4.5 is too high, I'll see if 2.5/2.7 is better..

There's a def file for this too (as it's SW0002), so it gives me a starting point for mapping too.

Surges quite badly, so gonna have a look tonight.  Boost feels strong, but could be a little stronger, will see fuelling and timing too.

Got a replacement N75 and coils coming this weekend because I'm convinced they're burst.  Will replace plugs, too.

But, it's a start..


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: automan001 on September 01, 2013, 11:31:42 PM
The ecu file from ME7Info only contains a SMALL percentage of the RAM variables used. You really need to disassemble the file and find a RAM address that's not used at all. There could be very serious consequences to picking the wrong address.
I think I've got an better idea how to check that RAM address is not used. Guess some RAM address. Define it as variable in ME7 Logger ecu file. Log it with ME7Log.  :) See if it changes during a run.  8) If its value is a constant or better if value stays 0 or FF all the time - most probably this right place.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: black on October 29, 2013, 07:17:37 AM
I think I've got an better idea how to check that RAM address is not used. Guess some RAM address. Define it as variable in ME7 Logger ecu file. Log it with ME7Log.  :) See if it changes during a run.  8) If its value is a constant or better if value stays 0 or FF all the time - most probably this right place.


Ha, after reading all the pages I came to the same conclusion (before reading this last post above). So has anybody tried the 0x384FF0 on RS4K? ???


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: automan001 on October 29, 2013, 12:45:36 PM
has anybody tried the 0x384FF0 on RS4K? ???
This byte is busy
MEM_EXT:CC72 byte_CC72:      ds 138Eh                ; DATA XREF: seg019:3682r
Better check this area in K or Q-box: 0x3865FE-3867FF
(this is XRAM:E5FE-XRAM:E7FF)
Appears to be not used (no any ref to variables from this range in disassembled file)
Also these are free in K-box
MEM_EXT:8245-MEM_EXT:85D9
MEM_EXT:85DC-MEM_EXT:8800
MEM_EXT:8884-MEM_EXT:897F
To convert into 0x38xxxx format subtract 0x8000 and add 0x380000


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: black on October 29, 2013, 11:44:18 PM
thanks a lot  :) will try


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: player on November 25, 2013, 04:28:11 AM
can someone find me an empty ram adress in this 8L0906018N ECU FILE?:((...THANKS !


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: tbm on June 19, 2014, 01:24:53 PM
Hi Guys!

The awesome work was performed! Thanks a lot for that!
I've implemented NLS and LC in my HN bin file. LC works well but with NLS I faced with the following issue - my car has only N75 valve and BOV. All other emission valves like N249, SAI etc were removed. So when I pressed clutch pedal for NLS (B_kuppl is brought up) due to some reason throttle plate (wdks) closing therefore BOV dropped all pressure in intake pipes, manifold etc.

Has anyone faced with this issue?

Thanks in advance!


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: tbm on June 20, 2014, 04:42:54 AM
Hi Guys!

The awesome work was performed! Thanks a lot for that!
I've implemented NLS and LC in my HN bin file. LC works well but with NLS I faced with the following issue - my car has only N75 valve and BOV. All other emission valves like N249, SAI etc were removed. So when I pressed clutch pedal for NLS (B_kuppl is brought up) due to some reason throttle plate (wdks) closing therefore BOV dropped all pressure in intake pipes, manifold etc.

Has anyone faced with this issue?

Thanks in advance!
It seems the issue is related to Idle Torque Reserve.
Finding out farther...


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: dayofthejackal on June 30, 2014, 11:21:30 AM
Got it working on a few files but I could do with some help regarding implementing it on an AP 003

Using B_br as B_kuppl is 50.0

Unsure of the call address

Can someone double check my workings out

Addresses:

tsrldyn: 0x380BBA 0x0000 = BA 8B
B_kuppl: 0x00FD50.0 0x0001 = 00 28 (2=4 8=10)
vfil_w: 0x381C0D 0x0000 =0D 9C
nomt_w: 0x00F89E 0x0000 = 9E F8
wped: 0x3809B3 0x0000 = B3 89
B_br: 0x00FD4C.12 0x1000 = C0 26 (2=4 6=C)
counter: 0x384FF0 = F0 4F

SpeedThreshold: 0x17EA0 = A0 7E
LaunchRPM: 0x17EA2 = A2 E7
IgnitionCutDuration: 0x17EA4 = A4 7E
RPMThreshold: 0x17EA6 = A6 7E
AccPedalThreshold: 0x17EA8 = A8 7E

FTOMN: 1A441

Call address 0x0????? – F3 F8 ?? ?? to DA 8A E0 2E

0x0B2EE0

9A 28 13 00 F2 F4 0D 9C D7 00 81 00 F2 F9 A0 7E
40 49 9D 0B F2 F4 9E F8 D7 00 81 00 F2 F9 A2 7E
40 49 FD 03 F7 8E BA 8B 0D 2F 9A 28 29 00 8A 26
22 C0 F2 F4 9E F8 D7 00 81 00 F2 F9 A6 7E 40 49
FD 1A C2 F4 B3 89 D7 00 81 00 C2 F9 A8 7E 40 49
FD 12 D7 00 38 00 F2 F4 F0 4F D7 00 81 00 F2 F9
A4 7E 40 49 9D 11 F7 8E BA 8B 08 41 D7 00 38 00
F7 F8 F0 4F 0D 09 D7 00 38 00 F6 8F F0 4F 0D 04
D7 00 38 00 F6 8E F0 4F F3 F8 ?? ?? DB 00 FF FF

Noticed a few typo mistakes and corrected them. Shouldn't really work stuff out at 4am when tired.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: mushtafa on June 30, 2014, 02:32:44 PM
I'm absolutely stuck! It doesn't matter how many times I read this thread and the .pdf tutorial, I just can't get my head round this!  ???

Is anyone willing to do it for me please? Can offer a donation of cause! Please PM me if you can help!

Many Thanks, Chris


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: funnix on November 12, 2014, 05:46:05 AM
Got it working on a few files but I could do with some help regarding implementing it on an AP 003

Using B_br as B_kuppl is 50.0

Unsure of the call address

Can someone double check my workings out

Addresses:

tsrldyn: 0x380BBA 0x0000 = BA 8B
B_kuppl: 0x00FD50.0 0x0001 = 00 28 (2=4 8=10)
vfil_w: 0x381C0D 0x0000 =0D 9C
nomt_w: 0x00F89E 0x0000 = 9E F8
wped: 0x3809B3 0x0000 = B3 89
B_br: 0x00FD4C.12 0x1000 = C0 26 (2=4 6=C)
counter: 0x384FF0 = F0 4F

SpeedThreshold: 0x17EA0 = A0 7E
LaunchRPM: 0x17EA2 = A2 E7
IgnitionCutDuration: 0x17EA4 = A4 7E
RPMThreshold: 0x17EA6 = A6 7E
AccPedalThreshold: 0x17EA8 = A8 7E

FTOMN: 1A441

Call address 0x0????? – F3 F8 ?? ?? to DA 8A E0 2E

0x0B2EE0

9A 28 13 00 F2 F4 0D 9C D7 00 81 00 F2 F9 A0 7E
40 49 9D 0B F2 F4 9E F8 D7 00 81 00 F2 F9 A2 7E
40 49 FD 03 F7 8E BA 8B 0D 2F 9A 28 29 00 8A 26
22 C0 F2 F4 9E F8 D7 00 81 00 F2 F9 A6 7E 40 49
FD 1A C2 F4 B3 89 D7 00 81 00 C2 F9 A8 7E 40 49
FD 12 D7 00 38 00 F2 F4 F0 4F D7 00 81 00 F2 F9
A4 7E 40 49 9D 11 F7 8E BA 8B 08 41 D7 00 38 00
F7 F8 F0 4F 0D 09 D7 00 38 00 F6 8F F0 4F 0D 04
D7 00 38 00 F6 8E F0 4F F3 F8 ?? ?? DB 00 FF FF

Noticed a few typo mistakes and corrected them. Shouldn't really work stuff out at 4am when tired.


Could it be 0xA6356?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: dayofthejackal on November 12, 2014, 05:57:59 AM

Could it be 0xA6356?

0xA69FA


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: funnix on November 12, 2014, 06:02:50 AM
thanks  ;D


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: janne on November 29, 2014, 05:54:35 AM
Hi.
I use that script what does this function.
But I think it does something wrong?
My inj code is not long enought right?

I have read.read.read , but I really cant understand those adress things.
Can someone push me into right direction.
Thanks


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: KmosK04 on November 29, 2014, 07:14:25 AM
I didn't see your file but those are the steps that I follow:

1. Make an .ecu file from your bin with me7logger
2. Find empty spaces in your bin to put the variables and the code
3. Write down the adresses
4. Put in one folder the script, ecu file and bin.
5. Launch the script from cmd
6. Type launch.exe YOURFILE.bin YOURFILE.ecu 0xCODE ADRESS 0xVARIABLES ADRESS



Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: pOwy on October 01, 2016, 04:58:32 AM
hello!

i'm trying to implement the launch control and nls. I have the pdf from the forum and i think i understand. BUT:) in the first line bit 3 is the bit mask of what? i dont get it, because my b_brems is fd4a.3 and b_kuppl is fd4a.7, fd4a=25 but which bit mask i need in line 1 bit 3? from brems? or kuppl?
i checked many files what posted the others but i cant find it out:D

thanks for help


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: KasperH on December 09, 2016, 04:16:27 PM
i've tried to implement this and last time i got a permanent DTC  :-\

can anybody tell me if there is a mistake, cause i cant seem to see it myself?

ECU is 06A906032HN V002


Code:

Addresses:

tsrldyn: 0x380BB7 0x0000
b_kuppl: 0x00FD4E.14 0x4000
vfil_w: 0x381C0C 0x0000
nmot_w: 0x00F89E 0x0000
wped: 0x3809B1 0x0000
b_brems: 0x00FD4C.12 0x1000
counter: 0x384FF0

SpeedThreshold: 0x17EC0
LaunchRPM: 0x17EC2
IgnitionCutDuration: 0x17EC4
RPMThreshold: 0x17EC6
AccPedalThreshold: 0x17EC8

FTOMN: 0x01A43D

Main Function: 0x0B3000

Call Address: F3 F8 9D 89 -> DA 8B 00 30 [0x0A6062]

9A 27 13 E0 F2 F4 0C 9C D7 00 81 00 F2 F9 C0 7E
40 49 9D 0B F2 F4 9E F8 D7 00 81 00 F2 F9 C2 7E
40 49 FD 03 F7 8E B7 8B 0D 2F 9A 27 29 E0 8A 27
22 C0 F2 F4 9E F8 D7 00 81 00 F2 F9 C6 7E 40 49
FD 1A C2 F4 B1 89 D7 00 81 00 C2 F9 C8 7E 40 49
FD 12 D7 00 38 00 F2 F4 F0 4F D7 00 81 00 F2 F9
C4 7E 40 49 9D 11 F7 8E B7 8B 08 41 D7 00 38 00
F7 F8 F0 4F 0D 09 D7 00 38 00 F6 8F F0 4F 0D 04
D7 00 38 00 F6 8E F0 4F F3 F8 9D 89 DB 00 FF FF

Thanks in advance


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: KasperH on January 04, 2017, 04:44:59 AM
I think i found the error, the NLS counter was smack dab in the middle of some used ram adresses, i have now moved it to empty ram space.

im going to try and flash this and see if it works, unless anyone has noticed any other errors?

Code:
Addresses:

tsrldyn: 0x380BB7
b_kuppl: 0x00FD4E.14 0x4000
vfil_w: 0x381C0C
nmot_w: 0x00F89E
wped: 0x3809B1
b_brems: 0x00FD4C.12 0x1000
counter: 0x388100

SpeedThreshold: 0x17EC0
LaunchRPM: 0x17EC2
IgnitionCutDuration: 0x17EC4
RPMThreshold: 0x17EC6
AccPedalThreshold: 0x17EC8

FTOMN: 0x01A43D

Main Function: 0x0B3000

Call Address: F3 F8 9D 89 -> DA 8B 00 30 [0x0A6062]

9A 27 13 E0 F2 F4 0C 9C D7 00 81 00 F2 F9 C0 7E
40 49 9D 0B F2 F4 9E F8 D7 00 81 00 F2 F9 C2 7E
40 49 FD 03 F7 8E B7 8B 0D 2F 9A 27 29 E0 8A 27
22 C0 F2 F4 9E F8 D7 00 81 00 F2 F9 C6 7E 40 49
FD 1A C2 F4 B1 89 D7 00 81 00 C2 F9 C8 7E 40 49
FD 12 D7 00 38 00 F2 F4 00 81 D7 00 81 00 F2 F9
C4 7E 40 49 9D 11 F7 8E B7 8B 08 41 D7 00 38 00
F7 F8 00 81 0D 09 D7 00 38 00 F6 8F 00 81 0D 04
D7 00 38 00 F6 8E 00 81 F3 F8 9D 89 DB 00 FF FF


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: KasperH on January 06, 2017, 05:15:39 AM
So this thread is officially dead?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Khendal on January 07, 2017, 03:46:51 PM
So this thread is officially dead?

Mhhh... i hope not.

All of these threads are old... and it's not easy to follow and understand what to do now...which is the right way for nls, lc .. in 2017 :)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: TijnCU on January 08, 2017, 08:03:36 AM
Study this disassembled code, I have written exactly how the function works in the comments behind.
Disclaimer: this is the Philadot Mbox code, so all adresses below are ONLY for that ecu and need to be replaced with your own. But it can help you understand what you are writing.
Code:
LC:

seg018:E800                 jnb     word_FD56.8, loc_8E82A    ;if b_kuppl is not set, jump to NLS
seg018:E804                 mov     r4, word_8E40 ;move vfil_w to r4
seg018:E808                 exts    #81h, #1
seg018:E80C                 mov     r9, 7E00h ;move speed_threshold to r9
seg018:E810                 cmp     r4, r9        ;compare r4 to r9
seg018:E812                 jmpr    cc_NC, loc_8E82A ;jump to NLS if vfil_w is larger than speed_threshold
seg018:E814                 mov     r4, word_F87A ;move nmot_w to r4
seg018:E818                 exts    #81h, #1
seg018:E81C                 mov     r9, 7E02h ;move launch rpm to r9
seg018:E820                 cmp     r4, r9        ;compare r4 to r9
seg018:E822                 jmpr    cc_ULE, loc_8E82A ;jump to EXIT if rpm is less or equal to launch_rpm
seg018:E824                 movb    byte_8DAC, ZEROS ;zeros tsrldyn (interrupt spark)
seg018:E828                 jmpr    cc_UC, loc_8E888 ;jump to EXIT unconditionally

NLS:

seg018:E82A loc_8E82A:                            
seg018:E82A                                      
seg018:E82A                 jnb     word_FD56.8, loc_8E880   ;if b_kuppl is not set, jump to UNSET RAMCOUNTER
seg018:E82E                 jb      word_FD56.6, loc_8E876    ;if b_br is set, jump to SET RAMCOUNTER
seg018:E832                 mov     r4, word_F87A ;move nmot_w to r4
seg018:E836                 exts    #81h, #1
seg018:E83A                 mov     r9, 7E06h ;move rmp threshold to r9
seg018:E83E                 cmp     r4, r9        ;compare r4 to r9
seg018:E840                 jmpr    cc_ULE, loc_8E876 ;jump to SET RAMCOUNTER if rpm is less or equal to rpm_threshold
seg018:E842                 movbz   r4, byte_8B02 ;move wped to r4
seg018:E846                 exts    #81h, #1
seg018:E84A                 movbz   r9, 7E08h ;move pedal_threshold to r9
seg018:E84E                 cmp     r4, r9        ;compare r4 to r9
seg018:E850                 jmpr    cc_ULE, loc_8E876 ;jump to SET RAMCOUNTER if wped is less or equal to pedal_threshold
seg018:E852                 exts    #38h, #1
seg018:E856                 mov     r4, 4FF0h ;move ramcounter to r4
seg018:E85A                 exts    #81h, #1
seg018:E85E                 mov     r9, 7E04h ;move cut_duration to r9
seg018:E862                 cmp     r4, r9        ;compare r4 to r9
seg018:E864                 jmpr    cc_NC, loc_8E888 ;jump to EXIT if no carry (ramcounter value is larger than cut_duration)
seg018:E866                 movb    byte_8DAC, ZEROS ;zeros tsrldyn
seg018:E86A                 add     r4, #1        ;add 1 to r4 (increments ramcounter value with 1)
seg018:E86C                 exts    #38h, #1
seg018:E870                 movb    4FF0h, rl4 ;move rl4 to ramcounter
seg018:E874                 jmpr    cc_UC, loc_8E888 ;jump to EXIT unconditionally

SET RAMCOUNTER:

seg018:E876 loc_8E876:                              
seg018:E876                                        
seg018:E876                 exts    #38h, #1
seg018:E87A                 mov     4FF0h, ONES ;Ones in ramcounter 384FF0h (FFFF hex or 65535 dec)
seg018:E87E                 jmpr    cc_UC, loc_8E888

UNSET RAMCOUNTER:
seg018:E880 loc_8E880:                            
seg018:E880                 exts    #38h, #1
seg018:E884                 mov     4FF0h, ZEROS ;Zeros in ramcounter 384FF0h (0000 hex or 0 dec)

EXIT:
seg018:E888 loc_8E888:                              
seg018:E888                                        
seg018:E888                 movb    rl4, byte_8AF3 ;restore original code that was replaced with call
seg018:E88C                 rets        ;jump back to call adress
seg018:E88C ; --------------------------------------------------------------------------




Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: KasperH on January 21, 2017, 07:55:25 AM
Got it working now, and it's glorious  ;D
Going to upload a video soon  :)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: KasperH on January 22, 2017, 11:54:39 AM
And it just threw a permanent DTC regarding memory checksum error  >:(
Nothing seems out of place in the code and it has worked flawless in multiple drives  ???

Anybody else experienced the problem?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: TijnCU on January 22, 2017, 12:12:13 PM
RSA checksum error maybe, check eeprom. Try another ram adress, for example 382ff0. (check if this adress holds 0 in me7logger) or disassemble file and verify xrefs to ram.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: KasperH on January 25, 2017, 05:36:24 PM
RSA checksum error maybe, check eeprom. Try another ram adress, for example 382ff0. (check if this adress holds 0 in me7logger) or disassemble file and verify xrefs to ram.

i'll try and log 384ff0 and 382ff0 tomorrow and see if anything shows up during a drive to work :)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Kacza on January 26, 2017, 06:33:13 AM
LC+AL works.
Thanks. Good joob. :D


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: armageddon on February 22, 2017, 03:28:44 AM
Hi all,

As asking doesn't hurt.....


Did anyone add other conditions to the function?

I'm trying to disable knock recognition during nls using b_kr

b_kr is at FD8A.8.

What I did was just add right after trsldyn "movb  byte_FD8A, ZEROS" in hex F7 8E 8A FD just to test if the function will still work.
The function works as before, so maybe I'm not complitly wrong, but I need to get the right convertion for b_kr address to test if this wil work.

Any help/coment would be grateful


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: TijnCU on February 22, 2017, 04:59:42 AM
hey, that does not work, you should remove that code from the function because 1) It is not the right way to disable a bit (you are treating it as a byte) and 2) the bit adress is not correctly adressed. You are actually zero-ing something else.
Besides the coding mistake, it is not as simple to disable kr by unsetting b_kr in this routine, you need to make a new function that jumps from a few kr code points and keep me7 from entering kr mode.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: armageddon on February 22, 2017, 05:23:34 AM
Ah, ok

Thanks for the input

back to square one...


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: armageddon on February 23, 2017, 07:32:53 AM
Besides the coding mistake, it is not as simple to disable kr by unsetting b_kr in this routine, you need to make a new function that jumps from a few kr code points and keep me7 from entering kr mode.

Just for confirmation, I took a look at c166 manual and could see that the correct way to clear a bit is using bclr, so, bclr FD8A.8 should be 8E 45, and yes, it did not disable kr retard :)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: TijnCU on February 24, 2017, 08:30:02 AM
good job, at least you learned something by testing this stuff out :-)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: TrevelXP on April 13, 2017, 02:52:35 PM
Got it working on 06A906032HJ ECU

Results... https://www.youtube.com/watch?v=ltzfxk8puEo (https://www.youtube.com/watch?v=ltzfxk8puEo)  ;D


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Khendal on April 30, 2017, 03:29:32 AM
This byte is busy
MEM_EXT:CC72 byte_CC72:      ds 138Eh                ; DATA XREF: seg019:3682r
Better check this area in K or Q-box: 0x3865FE-3867FF
(this is XRAM:E5FE-XRAM:E7FF)
Appears to be not used (no any ref to variables from this range in disassembled file)
Also these are free in K-box
MEM_EXT:8245-MEM_EXT:85D9
MEM_EXT:85DC-MEM_EXT:8800
MEM_EXT:8884-MEM_EXT:897F
To convert into 0x38xxxx format subtract 0x8000 and add 0x380000


Oh...maybe this is why NLS in RS4 don't work... i've used standard address and i need to change with one of these.

Is it right ?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: armageddon on April 30, 2017, 06:32:48 AM
Oh...maybe this is why NLS in RS4 don't work... i've used standard address and i need to change with one of these.

Is it right ?


NLS works "fine" in RS4, besides for the ignition retard because off knock that make it pretty much useless....


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: prj on May 03, 2017, 04:22:37 AM
NLS works "fine" in RS4, besides for the ignition retard because off knock that make it pretty much useless....
Easy to solve, but you need a brain :D
But yeah in stock form it makes the car super slow after the NLS shift. I saw like 10-12 degrees timing retard sometimes.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: armageddon on May 03, 2017, 04:34:48 AM
Easy to solve, but you need a brain :D
But yeah in stock form it makes the car super slow after the NLS shift. I saw like 10-12 degrees timing retard sometimes.

we already know that you have a big brain, we can not all be that lucky


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Khendal on May 04, 2017, 02:22:42 PM
Is there anyone that wanna study with me how to solve this problem? Where to search and what looking for? Constants , variables...  8)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: armageddon on May 05, 2017, 03:52:56 AM
Quote from: prj
If you have issues with knock after LC/NLS you need to modify the LC/NLS code to disable knock control when LC/NLS is active and re-enable knock control after LC/NLS has deactivated.
That way you will not have the problem with knock retard during flatshift.

Quote from: prj
Knock control on/off is a single bit on ME7. Same goes for misfires. Toggling this on or off is hardly rocket science, I know this because I've done this.


prj make it sound very easy, and maybe it is, for some one with experience/knowlege at assembly language

I assume that should be enough set CWKR to zero during NLS and back to 1 after, but how to do it....



Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: gt-innovation on May 05, 2017, 09:36:35 AM

I assume that should be enough set CWKR to zero during NLS and back to 1 after, but how to do it....



Don`t forget CDMD


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: armageddon on May 05, 2017, 10:18:23 AM
Don`t forget CDMD

i don't get misfire, only knock retard, but it should be the same aprouch, any tips? :)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Khendal on May 05, 2017, 12:40:19 PM
So... CWKR and CDMD ... is right way to continue? ;)


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: gt-innovation on May 06, 2017, 06:41:36 AM
i don't get misfire, only knock retard, but it should be the same aprouch, any tips? :)

as PRJ said.... disable and enable while your nls routine is running.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sd16 on August 05, 2017, 04:43:23 AM
Hello
Can someone help me launch-control and NLS in this Origina to import?
Thank you


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: aef on August 05, 2017, 04:50:51 AM
You looking for someone doing it 110% for you or you searching assistance for a specific question in the process of adding it?



Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sd16 on August 05, 2017, 08:33:06 AM
Hello
I have a file rewritten but unfortunately does not work.
who can help
Thank you


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: Kacza on August 14, 2017, 12:25:07 AM
Your tuned is very bad.
You test Launch Control and then burn the movie



Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: sd16 on August 16, 2017, 02:05:19 PM
Hey Thank you looked over it!
but unfortunately I can not open the file

Thank you
greeting


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: raprul3zz on September 08, 2017, 07:46:57 AM
Hello people.This is my first post here after i read hundred topics :D. Finally i succesfully add als/nls/lc into my 032HN ecu after many days of work.  :o .  I use php method, checksumed, write with mpps-done, but now my question is:
1. If i want to modify speed for activation als ( ex. clutch down at 50 km/h -bang bang . ) how can i do it ?
2. FTOMN should be 0 or 6 ?
I use TunerPro with HN definitions file.
I'm here to learn, thank you all !

Skoda Ocavia mk1 vRS|1.8T|AUQ|2.5" downpipe to muffler|FMIC|K03s~240 HP


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: KasperH on September 08, 2017, 06:24:33 PM
Hello people.This is my first post here after i read hundred topics :D. Finally i succesfully add als/nls/lc into my 032HN ecu after many days of work.  :o .  I use php method, checksumed, write with mpps-done, but now my question is:
1. If i want to modify speed for activation als ( ex. clutch down at 50 km/h -bang bang . ) how can i do it ?
2. FTOMN should be 0 or 6 ?
I use TunerPro with HN definitions file.
I'm here to learn, thank you all !

Skoda Ocavia mk1 vRS|1.8T|AUQ|2.5" downpipe to muffler|FMIC|K03s~240 HP

1. You just set deactivation speed to 50
2. In your case FTOMN should be 0


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: raprul3zz on September 09, 2017, 02:01:25 AM
For that i need to change VNMX to 50, am i right ?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: tao13 on August 09, 2018, 12:00:44 PM
Hi all.
I tried for a BAM file, 8n0906018h.
I used the tool to write the function and variables at the address who i give it.
I used free spaces in file.
I verified manualy in hex editor what tool made conform specification from attached pdf, and all was correct.
Only thing what tool doesn't make , was FTOMN. because i think in BAM file the addres is different like in tool definition.
I found my FTOMN at 0x1A2E9 and i changed it in 0.00ms.
I made checksum.
I wrote the file on my car.
I start the car and the car started in 2 and 3 pistons.



Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: adam- on August 09, 2018, 11:30:30 PM
Cool.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: tao13 on August 11, 2018, 08:55:54 AM
Hi all.
I tried for a BAM file, 8n0906018h.
I used the tool to write the function and variables at the address who i give it.
I used free spaces in file.
I verified manualy in hex editor what tool made conform specification from attached pdf, and all was correct.
Only thing what tool doesn't make , was FTOMN. because i think in BAM file the addres is different like in tool definition.
I found my FTOMN at 0x1A2E9 and i changed it in 0.00ms.
I made checksum.
I wrote the file on my car.
I start the car and the car started very bad in 2 and 3 pistons.

Maybe for my ecu file the address of constants are other than tool found:
finding tsrldyn...
found: 380B96
finding vfil_w...
found: 381BC8
finding nmot_w...
found: 00F89C
finding wped...
found: 38099C
finding tmotlin...
found: 38489F
finding B_kuppl (clutch pedal)...
found: 00FD4C.3
finding b_br (brems), brake pedal...
found: 00FD4A.15
Memory Layout: 29F800 Found
Found usable status flag variable at 0x00FDc6
FTOMN found: 1a2dc
FTOMN IS: 05
FTOMN CHANGED TO 0x00
Finding a good space for Main Function..
space located at: 0xa18c0
Finding a good space for launch control configuration variables..
space located at: 0x17b00
using 0x384FF0 for NLS Counter variable
Finding the offset for call to the code cave..
call will be located at: 0x9dd54




Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: KasperH on August 11, 2018, 05:55:19 PM
Please dont use that script, its faulty.



Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: SpsWolf on August 21, 2018, 12:49:35 PM
Hi everyone ! First post here, I’ve read a lot of discussions here and there. When I discovered this website, I had absolutely no knowledge at all regarding ECUs. Thanks to you all I managed to do everything on my own. Every time I had a problem, I came looking and always found what I was looking for (well, after passing through numerous posts of people asking the exact same thing). Anyways, if I post here it’s because I found my first unanswered problem, unless buried and forgotten in a very old post ?
I’ve been trying to implement ALNS for two weeks now, I’m pretty sure I’m close, but still not working properly.
In the PDF rev. 3, the is an update saying the the counter on the line 6 of the function has a pointer for the RAM. In the given example, 4FF0 stays as is. Is the pointer the 00 38 00 I see just before ?
If so, since that is on the other lines with the counter, shouldn’t they all stay as is as well ?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: SpsWolf on August 22, 2018, 03:05:24 AM
Hi everyone,
Today I tried putting all the RAM counters as is, cause I like experimenting. I bricked my ECU. A bootmode later, I tried with only line 6 as is, and seems to be working perfectly, I'll see in a few days, if I didn't make anything wrong, I should'nt get any bad memory checksum.

For others willing to try, here are my changes:

Car: Audi A3 1.8T Quattro 180 from 2002
ECU: ME7.5 - 0261207440 - 1037363908
Soft: 06A906032HN 0002

FUNCTION: 0x0B3000
VARIABLES: 0x17EC0
RAM ADRESS: 0x384FF0 - F0 4F

tsrldyn: 380BB7 - bit: 0 - B7 8B
vfil_w: 381C0C - bit: 0 - 0C 9C
nmot_w: 00F89E - bit: 0 - 9E F8
wped: 3809B1 - bit: 0 - B1 89
B_kuppl (clutch pedal): 00FD4E.14 - 0x4000 - 14=E0 - 27
b_br (brake pedal): 00FD4E.10 - 0x0400 - 10=A0 - 27

Speed Threshold: 0x17EC0
Launch RPM: 0x17EC2
Ignition Cut Duration: 0x17EC4
RPM Threshold: 0x17EC6
Accelerator Pedal Threshold: 0x17EC8

FTOMN: 0x1A43D

CALL: 0x0A6062
From:
B7 8B F3 F8 9D 89 D7 40 06 02 03 F8 26 24 9D 02
To:
B7 8B DA 8B 00 30 D7 40 06 02 03 F8 26 24 9D 02

VARIABLES VALUES:
80 01 50 46 0A 00 F0 55 E5 FF FF FF FF FF FF FF

FUNCTION:
9A 27 13 E0 F2 F4 0C 9C D7 00 81 00 F2 F9 C0 7E
40 49 9D 0B F2 F4 9E F8 D7 00 81 00 F2 F9 C2 7E
40 49 FD 03 F7 8E B7 8B 0D 2F 9A 27 29 E0 8A 27
22 A0 F2 F4 9E F8 D7 00 81 00 F2 F9 C6 7E 40 49
FD 1A C2 F4 B1 89 D7 00 81 00 C2 F9 C8 7E 40 49
FD 12 D7 00 38 00 F2 F4 4F F0 D7 00 81 00 F2 F9
C4 7E 40 49 9D 11 F7 8E B7 8B 08 41 D7 00 38 00
F7 F8 F0 4F 0D 09 D7 00 38 00 F6 8F F0 4F 0D 04
D7 00 38 00 F6 8E F0 4F F3 F8 9D 89 DB 00 FF FF

If you see any mistake, please explain why I'm wrong, I wanna learn. Espetially with the bitmarks, for some reason I keep getting lost with them.

P.S. My appologies if I made grammar/vocabulary errors, France isn't the best place in the world to practice your English


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: SpsWolf on August 27, 2018, 02:15:14 AM
My report after a few days:
The 0x384FF0 address must be used by the RAM of the ECU, despite the fact it’s not noted in the list generated by me7logger. I then tried 0x382FF0, as I saw in an earlier post it was advised in case this one is used. It’s been now 3 days and a total of maybe 200km, and no DTC what so ever.

So I think I can say without mistaking that this version works on 32HN:

ECU: ME7.5 - 0261207440 - 1037363908
Soft: 06A906032HN 0002

FUNCTION: 0x0B3000
VARIABLES: 0x17EC0
RAM ADRESS: 0x382FF0 - F0 2F

tsrldyn: 380BB7 - bit: 0 - B7 8B
vfil_w: 381C0C - bit: 0 - 0C 9C
nmot_w: 00F89E - bit: 0 - 9E F8
wped: 3809B1 - bit: 0 - B1 89
B_kuppl (clutch pedal): 00FD4E.14 - 0x4000 - 14=E0 - 27
b_br (brake pedal): 00FD4E.10 - 0x0400 - 10=A0 - 27

Speed Threshold: 0x17EC0
Launch RPM: 0x17EC2
Ignition Cut Duration: 0x17EC4
RPM Threshold: 0x17EC6
Accelerator Pedal Threshold: 0x17EC8

FTOMN: 0x1A43D = 0

CALL: 0x0A6062
From:
B7 8B F3 F8 9D 89 D7 40 06 02 03 F8 26 24 9D 02
To:
B7 8B DA 8B 00 30 D7 40 06 02 03 F8 26 24 9D 02

VARIABLES VALUES:
80 01 50 46 0A 00 F0 55 E5 FF FF FF FF FF FF FF

FUNCTION:
9A 27 13 E0 F2 F4 0C 9C D7 00 81 00 F2 F9 C0 7E
40 49 9D 0B F2 F4 9E F8 D7 00 81 00 F2 F9 C2 7E
40 49 FD 03 F7 8E B7 8B 0D 2F 9A 27 29 E0 8A 27
22 A0 F2 F4 9E F8 D7 00 81 00 F2 F9 C6 7E 40 49
FD 1A C2 F4 B1 89 D7 00 81 00 C2 F9 C8 7E 40 49
FD 12 D7 00 38 00 F2 F4 2F F0 D7 00 81 00 F2 F9
C4 7E 40 49 9D 11 F7 8E B7 8B 08 41 D7 00 38 00
F7 F8 F0 2F 0D 09 D7 00 38 00 F6 8F F0 2F 0D 04
D7 00 38 00 F6 8E F0 2F F3 F8 9D 89 DB 00 FF FF


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: nyet on August 27, 2018, 05:13:40 PM
despite the fact it’s not noted in the list generated by me7logger

For the record, this is really NOT a great way to confirm the location is ok, just a good starting point for addresses you KNOW are used. For every location found by me7logger, there are likely tens of thousands of used locations for something else.

That said, well done; thanks for the update and confirmation regarding the RAM location. That sort of information is invaluable.


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: SpsWolf on August 28, 2018, 12:39:01 AM
Interesting, thanks !
So the ONLY way to know for sure is to disassemble ?


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: nyet on August 28, 2018, 09:39:30 AM
Interesting, thanks !
So the ONLY way to know for sure is to disassemble ?

Its actually worse than this; you never really know if you are stomping on something.

In this particular case, you know your'e stamping on something having to do with the RSA check, so you can disassemble the RSA routine and determine it that way, and move it to another arbitrary location.

And even then it doesn't tell you the new location isn't being used elsewhere.

You could try logging potential locations and see if they change, but even that isn't 100% because when YOU decide to change that location, maybe some other code is monitoring that location for a change.



Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: SpsWolf on August 29, 2018, 12:56:46 AM
Got it, thanks. After all, without that mystery it’d have been almost too easy (kidding  ;D ).


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: MAXBEDINI on October 04, 2018, 03:41:07 AM
It works!!!! Thanks to this incredible site. Always learning!!!! :)

https://youtu.be/eXW6vsHuM78



Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: miigotu on October 07, 2018, 02:36:45 AM
It's not correct.
There are both flags present.
b_brems is at 0x00FD4E.C - "brake pedal pressed"
And b_br is used for brake switch checking - "brake test pressed"

Just want to note that I read this post before, which led me down a rabbit hole trying to find b_brems on my 032CL.
Later I learned that on some ECUs, b_brems IS actually B_br
If b_brems isn't dumped to the .ecu file, then look for b_br


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: TurboMMJ on January 08, 2021, 11:47:47 AM
almost there , read again and again pdf

but still afraid to test it for real

what conditions value would be as safe as possible for the IgnitionCutDuration: 0x17E04 size 2, 16bit LSB, conversion: X * 20 (ms) ?



Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: bamofo on January 08, 2021, 04:37:07 PM
almost there , read again and again pdf

but still afraid to test it for real

what conditions value would be as safe as possible for the IgnitionCutDuration: 0x17E04 size 2, 16bit LSB, conversion: X * 20 (ms) ?



Pm me what you have done I’ll double check it if you like


Title: Re: 06A906032HN, Implementation of launch-control and NLS
Post by: TurboMMJ on January 09, 2021, 12:05:21 PM

 ::)and i just got a joker from @sn00k how conditions could be changed for your preferred values

example :

A6 01 50 46 0A 00 F0 55 E6 FF FF FF FF FF FF FF

LaunchRPM: 0x17E02 size 2, 16bit LSB, conversion: X * 0.25 (rpm)  - 5046 - 4650(16) = 18000(10) * 0.25= 4500 rpm launch set

i did set mine on 4000 rpm =  4000/0.25=16000 = 3E 80  and because of LSB should be write in the conditions 80 3E