Subaru EJ Programming Guide
Subaru K-Line 99 ECU reprogramming
The Green Test Mode connectors MUST be joined together during ECU programming.
You CANNOT use the supplied Quick Access Test Mode cable on K-Line 99 ECU, you MUST
connect the two Green Test Mode Connectors directly together. Then follow ECU reprogramming sequence. WHITE Flash Block connectors are NOT used on K-Line 99 vehicles.
EXTRA care MUST be taken when programming MY99-00 ECUs. Ensure ALL battery power drain items are tuned OFF including Laptop 12v adaptors, Heater Blow fan, Interior light, Hifi / Sat Nav / DVD system and mobile phones.
It is suggested that a Battery Power Pack is used to assist the vehicles battery during ECU reprogramming sequence.
If during ERASE or REPROGRAMMING the ECU processor stalls then do NOT turn off the Ignition, this will damage the ECU beyond repair.
Leave the ignition ON and OBD2 cable connected and carefully disconnect the Green Test Mode Connectors and then reconnect them again. This may be enough to restart the processor and recover the ECU. If processor does not restart then keep trying, if you turn off the ignition then the ECU is lost and has to be replaced.
So if this does ever happen (quite rare) then keep trying including using Battery Power Pack to provide additional Battery power.
Subaru K-Line 2002 ECU reprogramming
The Green Test Mode connector MUST be joined or we suggest you use the supplied Quick Access Test Mode cable. You MUST also use one of the WHITE Flash Block connectors attached to the Quick Access Test Mode Cable.
Subaru K-Line 2004 ECU reprogramming
The Green Test Mode connector MUST be joined or we suggest you use the supplied Quick Access Test Mode cable. WHITE Flash Block connectors are NOT used on K-Line 2004 vehicles.
Legacy Test Mode connectors are located by the ECU or in the footwell behind the kick panels.
Some later cars have a second set of Green connectors in the kick panel as well as under the steering column. Check in Delta Dash under Digital Data if ECU sees the Test Modes joined.
Entering Utility Mode (Subaru K-Line 2002, K-Line 2004)
In order for the ECU to be programmed, make sure that you have the USB programming cable plugged in before ProECU software is booted. To enter ‘Utility Mode’, the EcuTek test mode connector will need to be plugged into the car. Then follow the steps below:
- In ProECU, from the ‘Tools’ menu, select ‘Manually Select Vehicle…’
- Select either ‘Subaru Petrol K-Line 2002’ or ‘Subaru Petrol K-Line 2004’, click OK.
Program Engine ECU.
The programming window will appear.
On the right of the window, there is a progress display. This area displays messages as the programming process proceeds. Click on the ‘Enter Utility Mode’ button. At this point, you will be reminded of how to connect the hardware, as listed above. You will also be reminded to turn off the ignition. Once you have done this, click on OK.
You will now be told to turn on the ignition and click OK again within 5 seconds.
If you have correctly completed the steps listed above, you will now be in what EcuTeK describe as ‘Utility Mode’. Once in this mode, special functions can be performed on the ECU.
Uploading a New ROM
Once in ‘Utility Mode’, as detailed above, a new ROM file may be uploaded to the ECU. To do this, simply follow the steps below:
- Choose the ROM file that you wish to use. By default, the last file that you last saved or opened will already be selected.
- Click the ‘Program ECU’ button. The selected ROM file will then be uploaded to the ECU.
- After programming, the ECU must be put back into standard operating mode before it will start the car. A message is displayed to remind you of this. Simply turn off the test mode switch and click ok. Cycling the ignition switch will have the same effect as clicking ok here. However, if you wish to stay in ‘Utility Mode’, click ‘Cancel’.
At this stage, the ECU is ready to be tested. Bear in mind that maximum performance will not be apparent immediately. It is necessary to drive the car for a period of time to allow the ECU to learn the ignition advance parameters that it can use.
Extra Features
Programming is the main feature that will be accessed whilst in ‘Utility Mode’. However, there are many additional features that may also be used if required. Note that you must already be in ‘Utility Mode’ before attempting to use these features.
Compatible ROM Files
This will display all applicable ROM files for the Queried ECU.
Comment Field
When programming an ECU, it is possible to enter a short comment before programming. This comment will be permanently stored in the ECU and so will be accessible in the future, should the ECU be seen again. This field could be used to store the name of ROM file used, the brand name, or the version or state of tune.
The comment is accessible by any ProECU software user. However, this information is not viewable using DeltaDash or a standard Subaru Select Monitor.
Registration Details
By clicking on the ‘Read Registration Details’ button, various stored information will be retrieved and displayed from the ECU. This includes:
- The comment field, described above
- The Compatible ROM files, described above
- The ID of the user who programmed the ECU (if applicable) – each license key has a unique ID, so the authenticity of an ECU can be confirmed. The number of times the ECU has been reprogrammed.
- The ECU version e.g. af423 or aj931. This will tell you on which base ROM file any tuning must be based.
Programming Supply Check
This allows the output voltage of the inbuilt programming supply of the interface to be checked. A correctly functioning unit will output close to 12.0 Volts.
ROM File Comparison
This is a very quick way of comparing a ROM file with the current contents of the ECU. This feature compares the checksums of the ROM file with those of the ECU. If they match, there is 99.99% likelihood that the stored data is identical. This allows the ECU data to be checked without using one of the ECUs 100 programming ‘lives’.
EcuTek Information Dump
It is possible that you will come across an ECU version that EcuTek have not seen. It will not be possible for you to program this ECU until EcuTek have been supplied with certain information about the ECU. The ‘Dump Details for EcuTek’ button saves certain information from this ECU. The information is stored in a file that will be saved into the directory C:\EcuTek\RomDumps. The name of the file will be displayed as it is saved. This information should be sent to EcuTek by clicking on ‘Help’, then ‘Submit New ROM…’. EcuTek will then supply an updated version of ProECU that will be capable of programming the ECU. Note that it is not something that can be done while-u-wait. Turnaround time is likely to be 3 to 7 days for support of a new ECU.
Programming Statistics
After an ECU has been programmed, the progress window displays two statistics:
- The number of erases pulses used out of a possible 5.
- The number of programming pulses used out of a possible 50.
These figures indicate the ‘freshness’ of an ECU i.e. how easily the ECU was reprogrammed. As the number of erase and program pulses required to reprogram the ECU rise toward their maximum values, you should think about programming the ECU with a final map and start using another ECU for development.
The rated life expectancy of the flash memory in the Subaru ECU is 100 reprograms. ECUs will generally take more than this number of updates. We have on several occasions reprogrammed the ECU over 250 times with any deterioration or failures. The above statistics are an indicator of when the flash memory is starting to wear out. If the ECU flash memory is allowed to wear out completely, the ECU will be rendered unusable and the flash license it contains will be lost.
Protection of Mapping Expertise
After customising the mapping of an ECU and programming it back to the unit, a sensible concern is that the data may fall into the hands of other tuners, who may copy the work. EcuTek have considered this and come up with a simple solution: EcuTek customers have the ability to program an ECU, but not read back its contents with EcuTek software. This means that a map placed in an ECU by ‘Tuner A’ cannot be copied by ‘Tuner B’. Only EcuTek themselves can read the data out of an ECU. However, tuners do have the facility to compare the contents of an ECU with an existing ROM file – this allows verification of the contents of the ECU, so long as the tuner already has the ROM file on their PC.
Teaching the Immobiliser (K-Line 2002 / 2004)
Some ECUs contain an alarm immobiliser feature. This security feature establishes a relationship between the ECU, the car’s security system, and a specific number of car keys. If an ECU for one of these cars is replaced, the ECU must be forced to relearn this relationship.
Note that it is only necessary to do this if an ECU is to be used in a different car.
Reprogramming the ECU with different tuning maps will not affect the immobiliser learning – this data is stored separately. E.g. A customer can send their ECU in the mail to be reprogrammed. That same ECU can be returned to the customer without any immobiliser issues to deal with.
Before Immobiliser Teaching
- Ensure that the ECU in question actually requires this. For example, US ECUs do not contain immobiliser hardware. If after swapping ECUs, the car starts, this process is unnecessary. It may be confirmed that failure to start the car is due to an immobiliser problem by checking the trouble codes via DeltaDash.
- Ensure that all keys for the car are available. Only keys present at the time of teaching will be able to start the car.
- Note that once a new ECU has been installed and taught, the previous ECU will no longer start the car. Only one ECU at a time will ever start a particular car.
Begin Immobiliser Teaching
To begin the teaching process, simply click on ‘Subaru Immobiliser Functions’ from the Tools menu. You will then be guided through the process, which takes approximately one minute to complete.