I don't mean to over simplify this, but I'm going into this with the assumption that you, the reader, have 0 prior knowledge of the subject.
For those of you that don't know, the immobilizer is a passive anti theft system used in various VAG (Volkswagen Audi Group) vehicles over the years. The ross-tech wiki
http://wiki.ross-tech.com/wiki/index.php/Immobilizerhas some very good information. This guide is designed for those who need information above and beyond what is offered there.
First things first. Do you have an immobilizer? If you own a north american b5 s4, or c5 a6<2001, the answer is no. The only reason you would want to keep reading is if you
1: have to work with an ecu that does have an immobilizer, 2: want to use a flash from a car that originally had an immobilizer, or 3: wish to retrofit an immobilizer to your car.
The immobilizer data isn't stored on the flash memory chip. Instead it is stored on a seperate chip in the ecu known as the 95040, and is 512 bytes in size. All me7 ecu's have one (later 7.1.1 ecu's use a different chip, but I'll go into that some other time) and it's used for adaptation settings as well as the immobilizer data. When you write a new bin to it, you will clear your adaptations. Lemmiwinks hacks beware.
Part 1. You bought a used ecu that has an immobilizer and want to install it into a car that doesn't.
Simply flashing a bin from a car that didn't have the immobilizer referenced in the programming (any North american s4) will disable checking, allowing you to run a mismatched ecu. If you do this the contents of the 95040 are irrelevant. Any used ecu that came from a vehicle containing an immobilizer must be flashed in bootmode initially as attempting to flash over obd will result in nefmoto reporting "security access rejected", or "conditions not met". In addition, the large connector has a different guide pin. Simply snap it off (carefully!) in order to install it in your vehicle.
Part 2. You want to use a bin from an immo equipped car on a car that didn't come with an immobilizer.
Say you want to use an rs4 bin. Doing so will result in your car starting briefly and then dying, and may be accompanied by a DTC stating "engine start blocked by immobilizer". This condition isn't covered by the ross-tech wiki. The solution to this is to write the 95040 with a bin that has been modified so as to disable the immobilizer. Argdub's tool is great for doing so.
http://nefariousmotorsports.com/forum/index.php?topic=1168.0title= You should do this prior to flashing the ecu, as once you do nefmoto will no longer be able to connect, as the ecu will report "security access rejected" until the 95040 has the proper pertinent data. A immo-off bin is attached.
Part 3
You want to retrofit your North American S4 with an immobilizer.
This requires several things. The first is a bin that references the immobilizer (or an immo equipped ecu), along with a 95040 bin containing the SKC you want to use. For simplicity's sake lets say the rs4 k-box, and the 95040 bin attached here, although any a6 bin from 01-02 will also work. The second is an instrument cluster from an immo2 equipped car. Ideally it would be best if you got a cluster that matched the ecu, but this isn't always possible. If your cluster and ecu aren't a matched set, you will have to adapt them so that they match.
http://wiki.ross-tech.com/wiki/index.php/Immobilizer_III_Immobilizer_Swapping_(Instrument_Cluster)You can retrieve the SKC (secret key code) from the ecu by reading off the 95040. This code is required to login with VCDS in order to adapt the rfid chip in the key. Basically you're giving the key permission to start the car. If the rfid chip doesn't match the ecu, even if the ignition turns the car won't run. If you open the bin you read from the 95040 with a hex editor, the SKC is a 5 digit code and is located at 0x32, and 0x33. The format is as follows:
Digit 1=0
Digits 2-5 are bits 32 and 33 reversed and converted to decimal. EXAMPLE: Bit 32 is b5 and Bit 33 is 15. Since the format is to put bit 33 before bit 32 we end up with 15b5. Convert that to decimal and we get 5557. Ad a zero in front and our SKC is 05557. I suppose you could change the SKC to whatever you wanted (then convert it to hex and change bits 32 and 33 to reflect the new value), but remember, anytime you make changes you need to update the checksum. An explanation is available in the thread containing argdub's tool I linked to earlier.
Now your ecu and cluster should match, and we have the SKC. Every car I've seen thus far has had the RFID receiver coil around the ignition lock cylinder, but you might want to ensure your's does. If not, you will need to install one. A picture of what I'm referring to is attached below.
Next is adapting the keys. First, take your key apart. There is a philips screw beneath the audi emblem on the back. Remove the screw, pull the battery/remote section off and gently pry the key apart. It has a spring inside, so be careful. Buy a blank key for an immo3 equipped car (2001 a6) and insert the RFID chip (glass cylinder)
into your existing key. Now we can finish the adaptation. Again, the ross-tech wiki is very handy. The login code is your SKC.
http://wiki.ross-tech.com/wiki/index.php/Immobilizer_III_Key_Matching_(Cluster)If all goes as planned, you now have a working immobilizer in your NA s4.
Keep in mind this is a work in progress. Any questions, post! Suggestions? PM me.