E46 Key Programming- AK90 Guide

May 24th, 2014 by admin 3 comments »

Back Story:

So when i first got my E46 325 convertible it came with 1 key (diamond shape) this worried me, i asked dealer local to me who sniggered and said it would be a “£150 custom order from Germany” to get another one. Not immediately needing one and slightly knocked back i declined and was back to square one..

I did hours of reading about it from all across the internet and now i have located the correct method for achieving a key and much cheaper.

Being a software developer/ general techie by trade i was not put off by the challenge!

Tools needed:

  • Ak90 Programmer- I got it via ebay from here (£46.38 delivered- took about 2 weeks)
  • New unprogrammed key internals + chip (the chip is important)- I got from eBay from here (£20 delivered – took 1 and half weeks)
  • Key case (new)- Again eBay was my friend from here £3.20 delivered
  • Key cut (for the lock of car) – Local key smith £6ish

Thats all you need..

So already thats a total of: £75ish saving you aprox £100

Step 1: Remove the EWS Module (or immobilizer module from the car)

This is located here under the steering wheel of the car behind all the plastic trim:


What you need to do is remove 2 screws (possibly 3) mine might have been missing 1 so check all along the trim:



Once undone the trim panel should pull down.. like this:

If you stick your head up inside there you should see a white box this is your EWS or immobilizer unit for the car:


this is what we need to take out of the car.. it is held in by 2 plastic 10mm nuts on a clever but very fiddly to get at bracket. Once both bolts are undone the unit should just hang down.

The is a black plug on one side of the unit you need to push down on the tab and it should slide  out.. here is the plug so you can see how that works:


Thats it.. you should now have the EWS unit out of the car this is all you need:


Step 2: Software Install

I have provided the software i used with the AK90 programmer over at my downloads page here:

Downloads Page

Edit: I have had reports the software didnt open correctly so i have provided another setup..

Download and extract to a folder where you can see/use it for example your desktop

The first step is to plugin the AK90 using the provided usb cable windows should automatically detect and start drive install (im using Win 7)  the unit will beep dont worry. It will fail on driver install at this stage thats only so we have the unit plugged in ready to be installed.

Run: AK90+ setup.exe hit next and install to default path.

Once finished you should see two icons appear on desktop:



At this stage you need to install the drivers and make the drive work so hit:


Follow the install to the end and make sure “Launch the CP210x VCP driver installer” is selected, hit install and ok.

Replug the AK90 windows will now say the driver is installed.

Make sure to restart your pc to confirm the drivers/software install.

Step 3: Open Software and read key

Double click the AK90 icon on your desktop, the software should launch and you should hear it beep and click a  few times.

This is good it means the computer has found the device on the com port and we are ready to go!

ak90 soft

Lets test your key, place this in the slot in the AK90 programmer like this:


In my case this is the garage key/valet key im programming just to show everyone how to do it, i originally did this with the diamond key i purchased the process is the same.

Go back to the software and select “test key” this will read the data from the key and a box like this will pop up:


So as you can see the device has worked out its a key for EWS3/4 and doesnt currently have a VIN or any mileage data.. this is good it proves its a blank virgin key.

Here is my current diamond key tested(with my vin cut out):

key test 2

So we have proved the device works and is talking to our computer now what? its time to program our blank key to the module we took out earlier.

Step 3: Connecting the EWS module to programmer

Take your EWS unit and open the top, this folds open like this:


The circuit board is held on the far side by the black plug the is 4 bits you have to push in and slide the unit out:


Now we take the connector wire for the programmer and carefully attach this onto the circuit board, in this case the wire has a big red dot on it. We need to line this up with the dot on the chip:

20140524_185545 20140524_185618

What i did was made sure that the connection between the chip and the connector was at its best is to make sure that every pin on the circuit board is bare metal. I scratched gently with a small blade/screw driver to make the connection good.

Make sure you note down the chip type in my case it is: OD46J (this is important)

And then connected the wire


Connect the other end to the AK90..

Step 4: the actual programming

Open up the AK90 software which should still be open from earlier and close the test key box you should just have a software screen that looks like:

main screen

With the blank key out of the slot and the EWS unit connected:

Select your chip type from the drop down that you noted down earlier mine was: OD46J

chip select

Hit read EWS a warning message will appear double check you have everything connected and hit ok


Once donea save dialogue will appear just save this file to your desktop, basically this is a backup of the data from the chip

You should see a screen of random letters and numbers:



This is the EWS data we have collected from the module..

If you hit EWS analyse this reads the data and tells you what keys are being used, mileage and the VIN number.

ews analyse

This is the screen where you can disable and enable current keys (handy if you lost one)

Press exit and lets program a new key!

You should be at the main screen with all the numbers and letters on, place your virgin/new key into the slot on the AK90 and select write key

a screen should pop up:

key slot

This is where you select the key slot you wish to write this in my case that would be key slot 7 (no idea where the other 4 keys are! i only have 3)

Select the slot and select write key you will get a warning making sure that you have placed key in slot just select yes (obviously making sure the key is in the slot first!)

key warn

The device will make some chirping noises and beeps as it writes to EWS unit:

key write

After aprox 1-2mins you should see confirmation that the keys data is coded

key confirm

Press OK a new box will pop up:

chip ews

Select the chip type from earlier (see the warning i told you this was important!)


AK90 is now coding the key back into the EWS!

Wait for aprox 1-2mins and you should see:

data ok

Press ok, thats it you have coded your ews data to the key and then back to the ews unit.

Id recommend testing the key now again (hit test key)

Step 5:Put EWS unit back into car

Same process as before but in reverse.. can be a bit fiddly but stick at it..

What i did was place the EWS unit back in place and with my other hand put each nut on finger tight and then fully tightened up with a small socket

Thats it! test you new key and enjoy.. take that BMW ;)


Firmware for MK3/Mk4 Sat nav Drives

April 27th, 2014 by admin No comments »

We have provided the following:

  • BMW Navigation Firmware Operating system V32
  • BMW Navigation Firmware Operating system V30
  • BMW Navigation Firmware Operating system V29
  • BMW Navigation Firmware Operating system V25

these can be obtained from our downloads page here

All of them are untouched original BMW firmwares to upgrade/reinstall MK3 + MK4 drives, check compatibility/drive status before upgrading.

If you need to know how to upgrade please see our post on this here

MK4 Nav Perspective View

February 23rd, 2014 by admin No comments »

This is the feature which turns the maps “3d” so you can see sky and puts everything in “Perspective” (hence the name..)

This is hidden away in a menu.. within a menu.. to turn it on:

  1. Go to set.. sometimes labelled “”settings” or config menu (depends on firmware)
  2. Press and hold the menu button for 10secs this will bring up a “Service menu”
  3. Scroll down in till you see “Perspective” use the right knob to enter and change this to yes

Thats it turned on..

So where is it?.. this wasn’t immediately obvious to me either i was half expecting it all to look 3d straight away!

If you select GPS navigation, push the right knob and select “Map positioning” the should be a new option called Perspective.. click this and watch the magic happen.. enjoy

BMW MK3/Mk4 Drive power down procedure

February 23rd, 2014 by admin No comments »

This is something that isnt documented very well anywhere and personally i have totally destroyed a MK3 unit once by not realising this and unplugging the device before its ready.

The MK3/Mk4 bmw drive unit powers down fully and correctly approximately 1/2mins after the ignition has been turned off, if the power supply is cut or interrupted before hand then the devices ram corrupts.

To fully powerdown/make sure the device is ready to be unplugged:

  1. Turn off ignition get out and close door
  2. Go to the boot and open
  3. Look at the device the light should flash (this is when its writing and reading the memory)
  4. Wait roughly 1-2mins until the light is totally off

If no light is active then the device is fully shutdown

BMW Mk3/MK4 Update guide

February 23rd, 2014 by admin No comments »

I have been “playing” with the sat nav drives recently so will be coving some posts on this when i get a chance.

My first one is the steps to take to actually update the firmware on these computers, they are very specific:

  1. Turn the key to ignition position 1 and wait for your car computer to display the options/all turn on
  2. Leave on, open the door (leave open) go to the boot and take out the cd if you already have one in e.g. maps
  3. Insert the firmware CD and go back to the front, wait for a few mins (make sure you leave the drivers door open)
  4. After a few mins your screen should read “Software update The installation will update your navigation system please don’t turn off the ignition” and then few mins after that you should see a progress bar

Your BMW MK3/4 drive is currently reading the software from the CD this will take anywhere from 5mins-10mins DONT close your drivers door or turn the ignition off during this process this will ruin the drive

When the drive is finished you will see “update is complete take cd out and confirm with ok”

  1. go to your boot and eject the firmware cd
  2. go back to the screen and press the right knob to confirm the cd is ejected

Wait for your drive unit to reboot and this will update with your new configuration


WinKFP Software “quick” guide

September 22nd, 2013 by admin No comments »

this s a quick guide on how to update a module with WinKFP:

1 Start WinKFP and select F3:- Update ZUSB

2 Select ECU type and the ECU will appear along with a list of part numbers.

3 Select ok and the main menu will re-appear

4 Select VIN and enter the cars VIN no. and select OK.

5 Select Done

6 Select Prog. ZB_update, you will be asked to confirm the update, Winkfp wil state the number of times the module can be re-programmed.

7 Wait

E85 Coding options list

July 5th, 2013 by admin No comments »

I have compiled a great excel document which explains the NCS expert coding list, and options for the E90 bmw. it is attached below

Document attached here: NCSEXPERT CODES BMW Z4

E46- ALSZ Module coding options

July 4th, 2013 by admin No comments »

These are the coding options for the ALSZ module of the BMW e46

  • HEIMLEUCHTEN : home lights activated by flashing high beam with key off
  • HEIMLEUCHTEN_ABBRUCH : home light stop
  • HEIMLEUCHTEN_AL :home lights are low beam
  • HEIMLEUCHTEN_BL : ” ” ” turn signals
  • HEIMLEUCHTEN_FL : ” ” ” high beam
  • HEIMLEUCHTEN_FUNKSCHL :lights on on closing car with remote (only on e39 )
  • HEIMLEUCHTEN_KL58G : home lights are interior backlighting, cluster, ashtray etc.
  • HEIMLEUCHTEN_KZL : ” ” ” license plate
  • HEIMLEUCHTEN_NSL : ” ” ” rear foglight
  • HEIMLEUCHTEN_NSW : ” ” ” front foglight
  • HEIMLEUCHTEN_RFS : ” ” ” reverse light
  • HEIMLEUCHTEN_SL_H :” ” ” rear parking lights
  • HEIMLEUCHTEN_SL_V :” ” ” forward parking lights
  • FL_UND_NSW_NICHT_GLEICHZ : high beam & fog lights come on together when nicht_aktiv (I haven’t got this working yet)

If you would like all of the BMW e46 coding options/more details please see this post where you can download in PDF format for your offline use!

E46- GM5 Module coding options

July 4th, 2013 by admin No comments »

These are the coding options for the GM5 module of the BMW e46

  • QUIT_AKUST_ENTSCH : alarm beep on unlock (two beeps)
  • QUIT_AKUST_SCHAERF : alarm beep on lock (one beep)
  • QUIT_OPT_ENTSCH : optical Acknowledge remote un-locking (two flashes)
  • QUIT_OPT_SCHAERF : optical Acknowledge remote locking (one flash)
  • ALARM_OPT_ABBLENDLICHT : alarm flashes low beam when tripped
  • ALARM_OPT_WARNBLINKER : ” ” emergency flashers when tripped
  • ALARM_OPT_FERNLICHT : ” ” high beam when tripped
  • BEIKLAPPEN_B_KOMFORTSCHL : press the unlock button twice, and the drivers window will open
  • FH_TUEREN_HINTEN_TIPP_AUF :rear window power down one touch
  • FH_TUEREN_HINTEN_TIPP_ZU : rear window power up one touch
  • FH_ZTR_SCHALTER_TIPP_AUF : window switch down one touch
  • FH_ZTR_SCHALTER_TIPP_ZU : ” ” up ” “
  • (do these after modifying the switches)
  • KOMFORTOEFFNEN_FB_O_FH_HI :remote opens rear window (this has to be nicht_aktiv)
  • KOMFORTSCHLIE_FB_O_FH_HI : remote closes rear window (this has to be nicht_aktiv)
  • KOMFORTOEFFNEN_FB_O_SHD : holding open button on remote opens windows without sun roof
  • KOMFORTSCHLIE_FB_OHNE_SHD : holding close button on remote closes windows without sun roof
  • KOMFORTOEFFNUNG_FB : convertible top opens by holding the open button on remote..Or opens all windows & sun roof on non convertible
  • KOMFORTSCHLIESSUNG_FB : convertible top closes by holding the close button on remote..Or closes all windows &sun roof on non convertible
  • MAUT_N_ABBRECH_N_TUER_AUF – windows carry on opening/closing even when you open the door
  • VERRIEGELN_AUT_AB_X_KMH : automatic central locking after X KMH
  • VERRIEGELN_AUT_NACH_2_MIN : automatic central locking is re -locked after 2 MIN if you dont open a door
  • VERRIEGELUNGSSCHWELLE : locking Device-swells (threshold) (speed of X above)
  • (these all have to be aktiv for the auto central locking to work on all keys)
  • PANIK_MODUS – panic mode! press and hold boot button for the siren
  • CYCL_TI_BLK;1-touch on turn signal blinks. einmal-1 . zweimal-2 . dreimal-3.
  • One touch indicators, lane change.
  • BLINKIMPULS_WARNBLK to wert_04 – double impulse hazards
  • HHS_AUTOMATIK – enable auto rear window fogger

If you would like all of the BMW e46 coding options/more details please see this post where you can download in PDF format for your offline use!

Creating a Coding profile

July 4th, 2013 by admin No comments »

I’m going to show you how to setup a “coding” profile this is key to getting the actual programming correct, the profile will allow you to have the right permissions to code the modules. 

1) Open NCS Expert (usually icon on your desktop)

2) Open up the ‘Expertmode’ profile.

3) Save as a new profile (Call it “coding” or something similar.. ).

4) Load the ‘godfather’ profile.

5) Edit it (file –> edit. Password is repxet).

6) Make sure under button ‘Individualisierung’ all options are crossed.

7) Make sure under button ‘FSW/PSW’, that ‘from CVT’ is chosen, and that the bottom two boxes are crossed.

8) Finally, press ‘consistence check’ and check it works.

9) Then press okay

You should now have a “coding” profile.. Well done! when ever you want to code/write to the cars modules use this one..

Please note: Be very careful when in this profile and using the software, as it will write your modules so dont go thinking you cant do any harm, as you can!- treat with respect