iichel
Exclusive lid
Ik doe deze even in 't Engels, omdat dat wat meer mensen aantrekt.
So the coding of an ABS unit is not particularly straight-forward and there are a few things to keep in mind when performing these actions:
- Any recent VAG ABS unit is coded individually, based on VIN, chassis type, engine type and equipment
- Therefore almost every ABS unit has its own individual long coding
- The lack of labels by Ross-Tech is intentional, since the ABS unit is a critical part of any cars safety system and should not be messed around with unless you're absolutely sure what you're doing. This document is intended as informative support, and iichel, MyPolo or Ross-Tech are not in any way responsible for loss of function when changing your ABS coding.
When an ABS unit needs to be coded (i.e. after replacement, retrofit or accidental loss of the long coding), you roughly have three options:
- SVM from VW. The Software Version Management will enable the ODIS software to retrieve your original factory coding from the server in Germany and restore it to your ABS module. This will only work if your (replacement) ABS unit is from the same type and part number as the one it came with from the factory.
- Build it from scratch using this guide.
- Build it with the help from other scans and this guide.
Before we start with the guide, let's get into the basics of long coding.
A long code is a sequence of characters ranging from 0-9 and A-F, with an even length of characters. This is called a hexadecimal code. For example, my ABS coding:
The long coding is 210248E3416F00B7842B12E782D500521700 and it's made up from 36 characters. This means it has 18 bytes, since bytes come in pairs of two.
Byte 0 is 21, byte 1 is 02, byte 2 is 48 etc until byte 17 which is 00. You'll notice we start counting at byte 0 and not at byte 1. Any byte is basically a number from 00 to FF in hexadecimal so it represents a value from 0 to 255. What's even cooler is that any hexadecimal can be converted to binary bytes. All you need is microsoft excel or you can use any online tool. In excel, simply type your hexadecimal value in cell A1 and in B1 we type: "=HEX2BIN(A1,8)" and we're there. The other way around is just as easy, just type any sequence of 8 charactes, ones and zeros in B2 and give A2 the code "=BIN2HEX(B2,2)" and you're there.
The way I usually play with my BCM is like this:

Coding ESP8.2i
When coding your ESP module, it's good to first determine the length of the long coding. Usually the ESP8.2i modules sport an eighteen-byte long code, but it's good to check. Just open the module with VCDS and see how long the current code is.
Now you can either build the code from scratch, or find yourself a very similar vehicle via i.e. Google.
Finding a long code via Google is not that difficult, for my module I'll type into google:
Note the quotes.
Now just go through the results and see if there is any car that matches your engine. Click.
Let's say we have a Polo GTI LHD and we find another one, with the coding:
210248E3417102B6842D12EB82DA40411700
We can use this information, together with my description, to determine the correct coding for our own Polo GTI.
Byte 0:
HEX - Chassis type
11 - Ibiza Hatch
13 - Ibiza ST
21 - Polo hatchback
41 - Fabia Hatch
51 - Polo Sedan
As you can see, there might be some options for Fabia station, Audi A1, etc. Therefore it's always good to google scans of similar cars to your own.
Byte 1:
HEX - Chassis type
01 - Fabia
02 - Polo and Ibiza
Byte 2:
HEX - Brake diameter
24 - Front 256mm disc - rear 200mm drums
28 - Front 256mm disc - rear 230mm disc
44 - Front 288mm disc - rear 200mm drums
48 - Front 288mm disc - rear 230mm disc
Byte 3:
HEX - Chassis type
DB - Fabia, Ibiza
C2 - Polo
Byte 4:
HEX - Transmission
21 - DSG
41 - Manual
83 - Manual 2.0 TDI
Byte 5:
HEX 6D + VIN digit #13
Byte 6:
HEX 00
Byte 7:
HEX B2 + VIN digit #14
Byte 8:
The inverse of Byte 0.
You'll convert the HEX value to binary, i.e. HEX 21 = BIN 00100001. Then you invert the binary value, so 00100001 becomes 10000100. Finally you convert 10000100 to HEX, making 84.
Byte 9:
HEX 25 + VIN digit + 15
Byte 10:
Inverse of byte 2 (see byte 8 for description)
Byte 11:
HEX E2 + VIN digit # 16
Byte 12:
Inverse of byte 4 (see byte 8 for description)
Byte 13:
HEX D1 + VIN digit # 17
Byte 14:
Inverse of byte 6 (see byte 8 for description)
Byte 15:
HEX - Engine type
40 - BXW, CGGB, CBZB, CGPA, CBZA, CFHA + LHD
41 - CAVE + LHD
42 - CAYA, CAYB, CAYC, CFHD + LHD
52 - CFWA + LHD
82 - CFHD + LHD
Byte 16:
bit 0 = HHC active
bit 1 = TPMS active
bit 2 = XDS (electronic virtual differential) active (works on any car!)
bit 4 = 2.0 TDI engine installed
Byte 17:
HEX 00
Keep in mind, you should always use your head when making a code, and it never hurts to cross-check with the google method. The list is probably not complete, i.e. some RHD vehicles are missing from the list.
Soon to come:
ABS8.2
ESP9.0i PQ
ESP9.0i MQB
ESC 7E0
So the coding of an ABS unit is not particularly straight-forward and there are a few things to keep in mind when performing these actions:
- Any recent VAG ABS unit is coded individually, based on VIN, chassis type, engine type and equipment
- Therefore almost every ABS unit has its own individual long coding
- The lack of labels by Ross-Tech is intentional, since the ABS unit is a critical part of any cars safety system and should not be messed around with unless you're absolutely sure what you're doing. This document is intended as informative support, and iichel, MyPolo or Ross-Tech are not in any way responsible for loss of function when changing your ABS coding.
When an ABS unit needs to be coded (i.e. after replacement, retrofit or accidental loss of the long coding), you roughly have three options:
- SVM from VW. The Software Version Management will enable the ODIS software to retrieve your original factory coding from the server in Germany and restore it to your ABS module. This will only work if your (replacement) ABS unit is from the same type and part number as the one it came with from the factory.
- Build it from scratch using this guide.
- Build it with the help from other scans and this guide.
Before we start with the guide, let's get into the basics of long coding.
A long code is a sequence of characters ranging from 0-9 and A-F, with an even length of characters. This is called a hexadecimal code. For example, my ABS coding:
Code:
Address 03: ABS Brakes (J104) Labels: 6R0-907-37x-ESP82.clb
Part No SW: 6R0 907 379 AK HW: 6R0 907 379 AF
Component: ESP8.2i front H05 0001
Revision: --------
Coding: 210248E3416F00B7842B12E782D500521700
Shop #: WSC 00788 648 00255
VCID: 07179D63B2DF4679A8-8053
No fault code found.
The long coding is 210248E3416F00B7842B12E782D500521700 and it's made up from 36 characters. This means it has 18 bytes, since bytes come in pairs of two.
Byte 0 is 21, byte 1 is 02, byte 2 is 48 etc until byte 17 which is 00. You'll notice we start counting at byte 0 and not at byte 1. Any byte is basically a number from 00 to FF in hexadecimal so it represents a value from 0 to 255. What's even cooler is that any hexadecimal can be converted to binary bytes. All you need is microsoft excel or you can use any online tool. In excel, simply type your hexadecimal value in cell A1 and in B1 we type: "=HEX2BIN(A1,8)" and we're there. The other way around is just as easy, just type any sequence of 8 charactes, ones and zeros in B2 and give A2 the code "=BIN2HEX(B2,2)" and you're there.
The way I usually play with my BCM is like this:

Coding ESP8.2i
When coding your ESP module, it's good to first determine the length of the long coding. Usually the ESP8.2i modules sport an eighteen-byte long code, but it's good to check. Just open the module with VCDS and see how long the current code is.
Now you can either build the code from scratch, or find yourself a very similar vehicle via i.e. Google.
Finding a long code via Google is not that difficult, for my module I'll type into google:
Code:
"Part No SW: 6R0 907 379 AK HW: 6R0 907 379 AF" VCDS Polo
Now just go through the results and see if there is any car that matches your engine. Click.
Let's say we have a Polo GTI LHD and we find another one, with the coding:
210248E3417102B6842D12EB82DA40411700
We can use this information, together with my description, to determine the correct coding for our own Polo GTI.
Byte 0:
HEX - Chassis type
11 - Ibiza Hatch
13 - Ibiza ST
21 - Polo hatchback
41 - Fabia Hatch
51 - Polo Sedan
As you can see, there might be some options for Fabia station, Audi A1, etc. Therefore it's always good to google scans of similar cars to your own.
Byte 1:
HEX - Chassis type
01 - Fabia
02 - Polo and Ibiza
Byte 2:
HEX - Brake diameter
24 - Front 256mm disc - rear 200mm drums
28 - Front 256mm disc - rear 230mm disc
44 - Front 288mm disc - rear 200mm drums
48 - Front 288mm disc - rear 230mm disc
Byte 3:
HEX - Chassis type
DB - Fabia, Ibiza
C2 - Polo
Byte 4:
HEX - Transmission
21 - DSG
41 - Manual
83 - Manual 2.0 TDI
Byte 5:
HEX 6D + VIN digit #13
Byte 6:
HEX 00
Byte 7:
HEX B2 + VIN digit #14
Byte 8:
The inverse of Byte 0.
You'll convert the HEX value to binary, i.e. HEX 21 = BIN 00100001. Then you invert the binary value, so 00100001 becomes 10000100. Finally you convert 10000100 to HEX, making 84.
Byte 9:
HEX 25 + VIN digit + 15
Byte 10:
Inverse of byte 2 (see byte 8 for description)
Byte 11:
HEX E2 + VIN digit # 16
Byte 12:
Inverse of byte 4 (see byte 8 for description)
Byte 13:
HEX D1 + VIN digit # 17
Byte 14:
Inverse of byte 6 (see byte 8 for description)
Byte 15:
HEX - Engine type
40 - BXW, CGGB, CBZB, CGPA, CBZA, CFHA + LHD
41 - CAVE + LHD
42 - CAYA, CAYB, CAYC, CFHD + LHD
52 - CFWA + LHD
82 - CFHD + LHD
Byte 16:
bit 0 = HHC active
bit 1 = TPMS active
bit 2 = XDS (electronic virtual differential) active (works on any car!)
bit 4 = 2.0 TDI engine installed
Byte 17:
HEX 00
Keep in mind, you should always use your head when making a code, and it never hurts to cross-check with the google method. The list is probably not complete, i.e. some RHD vehicles are missing from the list.
Soon to come:
ABS8.2
ESP9.0i PQ
ESP9.0i MQB
ESC 7E0
Laatst bewerkt: