From Nanocom site:-
this is from our TD5 inj coding help:
Injector Grades 1 to 5: This is a 5 digit value which tells the TD5 ECU what grades have been assigned to each injector when it was tested at the factory after manufacture. The TD5 ECU then uses these values to compensate the fuelling in direct relation to the tolerances of the injectors fitted to each cylinder. The first two digits are an offset for the start of injection from nominal within the range of plus or minus .000127 seconds, the second two digits are the same as the first but for the end of injection and the last digit is a measured variance in idle performance.
If the Injector grades are lost or unknown it is possible to read them directly from the injectors themselves as the letters are stamped on the top face of their aluminium cover. However, to access the injectors, it is required to first remove the cam cover. When a code is read from an injector it is actually 5 letters you will get, but due to a change in the letter scheme used on later vehicles, for the last letter which actually has overlapping numerical values, we have chosen to show the real numerical value stored in the TD5 ECU to give our users the ability to program correctly in both schemes.
The valid values for the first digit are: A, B, C, D, E, F, G, H, J, K, L, M and N.
The valid values for the second digit are: B, C, D, E, F, G, H, L, M and N.
The valid values for the third digit are: A, B, C, D, E, F, G, H, J, K, L, M and N.
The valid values for the forth digit are: B, C, D, E, F, G, H, L, M and N.
Please be aware that the value you read with the Vehicle Server and then display is the actual numerical value which is stored in the ECU.
To translate the Alpha code value into the correct numerical value the following conversion can be used:
For scheme 1 (earlier - the early ECU would not store a value higher then 3)
A = 0 or 3
B = 1
C = 2
It should be noted that with our system it is possible to enter a value of 3 in the fifth position. Whilst this is possible other test equipment will not be able to accept this and in this case the character A will be displayed.
For scheme 2 (later)
E = 1
F = 2
G = 3
H = 4
J = 5
K = 6
L = 7
M = 8 or 0
Anything greater than 8 is not a valid value.
Again it is possible to have a value, this time of 0, which other test equipment will not able to accept. In this case the character M will be displayed.
Basically most important are the 1-2 and 3-4 digits and since A is not in scheme 2 the default 0 is taken (also scheme 1 A=0) and as you can see M is either 0 or 8 that`s why you see M as last digit..... just put back A in the last digits for all codes and let Nanocom store them as you mentioned and see if the car drives and behaves as it should...
Regards,
Alex