Hi,
Many of us retrofit navigation systems of different types (mk1 -> mk4). Very often you have to go to you local dealer to get everything coded properly. With this instructions you can easily do the coding yourself. Al you need is a simple Ibus interface (
www.reslers.de) with a PC, some software for flashing a HEX-string to your car and a little bit of know how that I will share with you guys.
I will split all knowhow in a few posts to keep an overview Here we go!
http://www.xoutpost.com/nav/I-Bus.zip
1. How to code your VIN/region/type of radio in your mk3/mk4
You have to send following command to the cars navigation computer
3F 13 3B 09 00 00 00 FF FF FF 41 42 30 31 32 33 34 12 03 00 CS
This strings logic after the second 00 (before are only sender (3F = DIS) and receiver digits) is
00 – geographical Region ECE
41 - VIN first character (here "A")
42 - VIN second character (here "B")
30 - VIN first number (here "1")
31 - VIN second number …
32 - VIN third number …
33 - VIN fourth number …
34 - VIN fifth number …
12 – Series and model (here: 1="Limousine" und 2="E46")
03 – this is coded binary and not hex as the rest and stands for telematics and automatic emergency call active (00=both inactive, 01=Telematics without automat. Emergency call, 02=automatiemergency call without emergency call)
00 - "New Generation Radio" (=BM54, BM24 is 01)
CS – Checksum
THE LOGIC OF the string is already explained above.
These are all the possible options.:
GEOGRAPHICAL REGION_GT FFh
- ece 00h // Europe
- us 01h // US
- australien 02h // LA Australien
- canada 01h // LA Canada
then there are 3 Bytes FF FF FF
then you have the 7 Bytes of the VIN number (!!! HEX-coded !!!)
The next byte stands for the model + series
MODEL F0h
- ohne 0h //no model
- limousine 1h //Limousine
- touring 2h //Touring
- coupe 3h //Coupe, R50, R53
- compact 4h //Kompakt
- cabrio 5h //Cabrio
- roadster 6h //Roadster, E52
- suv 7h //SUV, E53, E83
SERIES 0Fh
- e38 0h //E38
- e39 1h //E39
- e46 2h //E46
- e52 3h //E52
- e53 4h //E53
- e83 5h //E83
- e85 Ah //E85
- e86 Ah //E86
- e90 6h //E90 new 3 series
- r40 7h //R40 Rover 75
- r50 8h //R50 Mini cooper
- r53 Bh //R53 cooper S
- r52 8h //R52 Cabrio
- l30 9h //L30
Example: E38 Limousine has 10, E46 touring has 22
Then you have a Byte that is calculated from different Bits
TELEMATICS 00000001b
- active 1b //till PU01 all, then all with SA612
- not_active 0b //all except the ones from above
AUTOMATIC EMERGENCY CALL 00000010b
- active 1b //from 03/99 till PU01 all, then all with SA612
- not_active 0b //all except the ones from above
SHOWING_ARRIVAL_TIME 00000100b
- active 1b //PU 09/03 for E39,E53
- not_active 0b // all except the ones from above
WIDESCREEN_MODI FFh
- anlieferung 01h // Default ECE Radio
- wert_00 00h // New Generation Radio, BM54
- wert_01 01h // Radio C24/C23; US with rear monitor
- wert_02 02h // Japan Radio C23
- wert_03 04h // Radio C23 Oceanic without rear monitor
- wert_04 08h // Radio C43 US without rear monitor
Kind Regards from Belgium, Roland
PS: I have a small software programm with GUI that can make these settings very simple.