View Single Post
      06-22-2019, 05:57 PM   #2
First Lieutenant

Drives: 2007 BMW Z4MC
Join Date: Dec 2014
Location: SoCal

iTrader: (5)

Post 2 of 3: Coding

Post 2 of 3: Coding

I strongly recommend reading revtor’s entire guide 1-2 times so you truly understand what is going on. You may even want to print out pages 33 and 34 to keep in the garage and make sure to go through each step carefully when reading/writing modules because you can really be in a world of hurt if you are not careful.

This guide is EXCELLENT and thorough - I am only going to provide a high level summary and framework for anyone who may struggle to understand revtor’s guide or the coding process in general.

INPA – a powerful diagnostic software. Unrelated to coding, except that you MUST open INPA and then close it before using NCSEXPERT.
Why must you open INPA for coding? INPA sets up EDIABAS, which is sort of like a server, to run behind the scenes. NCSEXPERT won’t work without EDIABAS running.
Why must you close INPA for coding? NCSEXPERT won’t be able to communicate with the car if INPA is connected to the car.

NCSEXPERT – the real coding software. NCSEXPERT will read the code from a module of your car’s ECU and store the code in a ‘trace’ file, FSW_PSW.TRC. NCSEXPERT will write code from a ‘manipulation’ file, FSW_PSW.MAN, to a module of your car’s ECU.

NCSDummy – a very necessary tool that:
1.) Reads and makes sense of the code in a ‘trace’ file (i.e. english translations and meaning behind cryptic items like ‘value 1’)
2.) Allows the user to alter the code (this is the “coding” activity where you are making changes)
3.) Create a ‘manipulation’ file

You theoretically don’t need NCSDummy, but you really have no chance without it if you don’t understand German, and even if you do, it would be tough without it.

Use NCSEXPERT. Follow page 33 of revtor’s guide.


Use NCSDummy.
1.) Select the chassis
2.) Select the correct module. The appropriate *.c information was provided by NCSEXPERT after reading the module.
3.) Make edits by selecting different options.
4.) Export FSW_PSW.MAN file

Use NCSEXPERT. Follow page 34 of revtor’s guide.

Best Practices:
1.) Hook up a battery tender to the car while reading or writing. Make sure your laptop has plenty of battery or keep it plugged in.
2.) Back up every single module before you do anything. Save these files.
3.) Copy the FSW_PSW.TRC file immediately after reading - do nothing else in NCSEXPERT until you have done so.
4.) Empty the FSW_PSW.MAN file (but don't delete it) when you are done writing to the car. NCSDummy can do this for you if you prefer (which I do).

1.) This type of coding is quick, and not as risky as flashing. But it would still be wise to ensure something doesn't break the connection in the middle of reading, or worse, writing.
2.) If you accidentally write an empty FSW_PSW.MAN file to a module, or the wrong module's FSW_PSW.MAN file to a module, you are in serious trouble. I am not sure if simply writing a backed-up trace file back to that module would correct the issue (I'm not going to do this on purpose), but I feel better knowing I have a copy of every module. Mistakes can happen - it is smart to have a backup of EVERY module just in case something goes wrong.
3.) Some actions in NCSEXPERT will write to the FSW_PSW.TRC file, which you don't want getting mixed into the module's code.
4.) I forget why, but I know it's important. Will update if I remember why.

Last edited by Reborn_; 06-22-2019 at 06:16 PM..