Key programming
Key programming is performed after replacing a faulty engine control unit or when issuing additional keys to the vehicle owner.
The procedure begins with the ECU asking the tester for specific vehicle data. The "clean" ECU records this data, after which programming of the key can begin. The "programmed" ECU compares the data received from the tester with the data stored in its memory. If the data matches, programming continues.
If the ECU receives incorrect vehicle specific data three times, it rejects the key programming request within 1 hour. The duration of this rejection cannot be shortened by disconnecting the battery or by other actions. After connecting the battery, the timer starts counting from zero.
The key is programmed by turning on the ignition with the key and by additional commands from the test device. The engine control unit writes the corresponding data to the EEPROM and to the transponder memory. After this, the engine control unit performs the identification required to confirm the programming process. Then the programming is confirmed by a message to the test device.
If the key is already known to the engine control unit based on the programming of the previous key, it is identified and the data in the EEPROM is updated. The contents of the transponder memory do not change (this is not possible in a programmed transponder).
The engine control unit recognizes an attempt to reprogram a key that has already been programmed during the same programming cycle. It rejects the key request and issues a message to the tester.
The engine control unit also rejects programming of invalid keys, sending a message to this effect to the test device. A key may be invalid due to a transponder malfunction or other reasons caused by unsuccessful data entry. A key is considered invalid if the identifiers of the transponder and the engine control unit do not match.
You can program no more than 4 keys.
If an error occurs while using the immobilizer service menu, the state of the engine control unit remains unchanged and a special fault code is entered into the memory.
If, when programming any key, the states of the engine control unit and the key do not match, the test procedure is stopped and a special fault code is written into the engine control unit memory.
Programming the user password
The user password used to start the engine in emergency mode is programmed at the service station. The user selects a four-digit numeric password.
Programming of the user password is performed only by the "programmed" engine control unit. Before the first entry of the user password into the engine control unit, the password state must be "clean". In this case, emergency engine starting is not possible.
Programming is performed by turning on the ignition with a valid key and issuing the user password from the test device. If programming is successful, the user password changes from the "clean" state to the "programmed" state.
The programmed user password can be changed. This is possible if the user password is in the "programmed" state and the test tool issues permission to access either the old user password or the vehicle specific data. After the permission is issued correctly, the engine control unit requests a new user password. The new password remains in the "programmed" state and will be valid at the next emergency engine start.
If the ECU is given an incorrect user password or incorrect vehicle data three times, it will reject the password change request within one hour. The duration of this rejection cannot be shortened by disconnecting the battery or by other actions. Once the battery is connected, the timer will start counting from zero.
User password states
00. Not verified yet.
This state is stored in the EEPROM. If erroneous or incorrect data is received from this device, the engine control unit is unable to check this state and issues message 00.
01. Programmed.
The password in the engine control unit has been programmed successfully.
02. Clean.
This condition is entered at the end of the ECU production line before the vehicle is delivered to the end user.
04. Locked with timer.
After a certain number of erroneous inputs, the engine control unit is blocked for 1 hour, during which no input is accepted.
05. Programming is not accepted.
This state is set if, for example, the engine control unit is in neutral.
