Bench & diagnostic tooling
Tools / Coding calculators

VAG 1.2 TDI CR Injector Code Converter — Delphi 20-Digit to VCDS

Convert the 20-character Delphi injector code from a 1.2 TDI CR (CFWA) into the VCDS/ODIS injector correction adaptation value. Runs in your browser — nothing is uploaded.

freeruns locallyread-only
[Tool]
client-side

Help improve this tool

Detection is built from patterns across real files. If this tool misread your dump — or read it correctly and you are happy to help — sending us the file makes the next read better. Entirely optional, and nothing is sent unless you fill this in and press the button.

About this tool

When you fit a new Delphi injector to a 1.2 TDI CR three-cylinder — the CFWA engine in the VW Polo 6R and Skoda Fabia/Roomster 5J, among other small VAG diesels — you have to give the ECU the injector's correction code. Unlike the seven-character Bosch code on larger TDIs, the 1.2's Delphi code is twenty characters and cannot be entered as printed: VCDS and ODIS expect it converted to twenty hex bytes first. This tool does that conversion for each of the three injectors and shows the value to enter in each Adaptation channel.

The code is a base-32 value. Each character is one of thirty-two symbols — the digits 0–9 and the letters A–Z with I, O, Q and V left out so nothing can be mistaken for a digit — and each maps to a single byte from 00 to 1F. The tool prints every character next to the byte it produces, so the conversion can be checked by eye, and the result goes into [01 – Engine] → Adaptation → “Injector 1/2/3 correction value”. The character map is taken verbatim from the Ross-Tech VCDS wiki page for this engine and verified against that page's worked example, byte for byte.

Because I, O, Q and V never appear in a genuine code, the tool treats any of them as a misread rather than converting it — a letter O is really a zero, an I is really a one — and flags the position instead of producing a confidently wrong value, which is the most common way a hand-typed injector code goes in wrong. A reverse mode turns a value read back out of the ECU into the printed code, so you can confirm that what is stored matches the injector actually in the cylinder.

Everything happens locally in your browser with no network request of any kind — the codes you type never leave the machine. The tool calculates the adaptation value; it does not connect to the car. Adapting an injector resets the ECU's learned values for that cylinder, so only enter codes for injectors you have actually replaced, and verify each value against the printed code before you save it.

VAGVWAudiSeatSkoda1.2 TDICR TDICFWADelphiinjectorinjector codingIMAISAVCDSODISadaptationcorrection value

Questions

Why will VCDS not accept the code printed on the injector?
The 1.2 TDI CR uses Delphi injectors whose code is a twenty-character base-32 string, and VCDS/ODIS store it as twenty hex bytes — so the printed characters have to be converted first. Larger TDIs carry a seven-character Bosch code that is typed in directly and needs no conversion; this tool is specifically for the twenty-character Delphi code.
Which code on the injector do I read?
The alphanumeric line printed as two rows of ten characters (for example WP76488HE6 then F7K7TM2CZ0). Do not use the ECU part number (03P…) or the Delphi part number (28…). If the printed value is hard to read, the injector's data-matrix/QR code carries the same value.
Where do the converted values go, and how do I confirm they saved?
[01 – Engine] → Adaptation → “Injector 1 correction value”, then Injector 2 and Injector 3. Match each converted value to the injector it came from. Afterwards switch the ignition off for about ten seconds, back on, and read the channels again to confirm they were stored.
The code seems to contain a letter O or I — is that right?
Almost certainly not. The alphabet deliberately omits I, O, Q and V so they cannot be confused with 1 and 0, which means a real code never contains them. A character that looks like O is a zero and one that looks like I is a one. The tool flags these rather than converting them, so you can re-read that character.
Are my codes uploaded, and can it write to the car?
No to both. The conversion runs entirely in your browser with no network request of any kind, so nothing you type leaves the machine, and the tool only produces the adaptation values — you enter them with your own diagnostic tool. Only code injectors you have actually replaced, since writing a correction value resets that cylinder's learned adaptation.
Verify before you write. This tool reads a dump and reports what it finds. Always confirm the values against your programmer before writing anything to a module, and only work on vehicles you own or are authorised to service.