Preface
Flashing ECU's with E-sys is not a technically complicated process and the risks involved are less of
technical nature and more of integration & configuration mistakes. Successfully passing the flashing
process itself needs some precautions & guidelines which are general to any eeprom style programming:
The E-Sys tool itself has powerful controls to avoid flashing mistakes when it comes to compatibility
between the software to be flashed & the target ECU. The ECU's themselves being of automotive grade
are by nature of robust fail-safe design, especially those related to engine, transmission, car security &
passenger safety.
E-Sys also provides the integration support by managing the Master Security Module (MSM) of the car
to maintain security & compatibility in programming.
The controls in the hands of the user however, do allow for a lot of manual manipulation which can lead
to failed, incorrect flashing and a non-functioning car.
The risk therefore in this process, is mitigated mostly by keeping strict planning & control,
understanding the integration of the change within the car-wide computerized network, being vigilant in
troubleshooting unexpected failures before making new attempts and finally making sure that the E-Sys
settings and functions are carefully and correctly set.
Good luck to all who use this procedure. Anyone reading this is welcome to visit us at
www.bimmerfest.com BMW Coding and Programming Forum.
This document is written & tested by forum members @maisav & @miotoo
Guide for flashing EU Fxx N53 DME and EGS using ESYS
V. 1.12
Mandatory Prerequisites:
Confirm current ECU part numbers and target ECU part numbers are identical based on realoem /
ETK. Here we were ok with the DME, but had difference in EGS module. Posted question to BMW
technical staff who confirmed the difference is for support/replacement related reasons. Units are
identical.
No exchange of modules. Units are functional and in-sync with car network. No faults registered in
the fault or Information memories.
Know your Shipment & Current I-Step. Refer to basic coding guide to read I-Step from VCM.
Car network is running a unique I-level across modules.
PSdZdata for current I-level available and imported into Esys.
FA in car is in shipment status ie. Zeitkriterium not modified.
Car hooked up to battery charger or maintainer.
Phase 1: Connection
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Prepare PC. Make sure wifi & bluetooth are disabled and no application is running.
Connect ENET cable to OBD port then to RJ45 port on PC.
Car ignition on, engine off.
Start-up E-Sys. After up to 30 seconds the car and your PC are on the same IP subnet.
Click on the 'Connect' button.
In the 'Open Connection' window which appears, select the appropriate TargetSelector.
Project is the Fxx I-Step of PSdZdata you loaded into Esys, VehicleInfo is your car Fxx without
DIRECT at the end.
In the Interface section, select 'Connection via VIN'.
In the Vehicle-specific parameter section, select 'Read parameters from VCM'.
Click Connect.
A pop-up window will appear. Confirm what you see is your known Shipment I-step & click OK.
Guide for flashing EU Fxx N53 DME and EGS using ESYS
V. 1.12
The entire tree with all entries must be BLACK with the following exceptions:
1. SWUP, ENTD & NAVD entries in the CMB_ECALL/CMB_MEDIA/HU_CIC modules which may
remain BLUE.
2. Entries for the DME & EGS modules may appear RED.
Page 3 of 7
Guide for flashing EU Fxx N53 DME and EGS using ESYS
V. 1.12
Only the DME & EGS modules should have a mix of BLUE & RED entries. All entries on all other
modules must be either BLACK or BLUE.
On both DME & EGS, the ONLY entries ALLOWED to be RED are BTLDx, SWFLx & CAFDx.
All entries starting with HWxx MUST be BLACK.
There may be one or multiple SWFL changes for each module. That is ok.
There may or may not be a BTLD change for a module. That is ok.
There may or may not be a CAFD change for a module. That is ok.
Here is an example snapshot from the SVT tree with Actual & Target calculation. I-step F010-12-11-503.
DME:
EGS:
DME SWFL current firmware with ID 888 will be replaced with SWFL firmware ID 5C3, from the
same Main, Sub & Patch versions.
EGS BTLD current bootloader with ID C7C be upgraded to other Subversion & Patchversion branch.
EGS SWFL current firmware with ID A81 will be upgraded to other Subversion & Patchversion
branch.
EGS SWFL current firmware with ID A9A will be replaced with SWFL firmware ID A9D, from other
Main, Sub & Patch versions.
Once we are satisfied with all validation assumptions, we can proceed with the next step.
Page 4 of 7
Guide for flashing EU Fxx N53 DME and EGS using ESYS
V. 1.12
Page 5 of 7
Guide for flashing EU Fxx N53 DME and EGS using ESYS
V. 1.12
15.
Once done, disconnect E-sys from car and power off the ignition.
Disconnect the battery charger/maintainer from the car and attempt to start the car.
If the car starts, the DME flash was successful and can proceed to flashing the EGS module.
It is highly recommended to restart E-Sys for the EGS flash.
Following a successful connection, repeat Phase 7 above with one difference steps 10 & 11:
10. ONLY on EGS line, select ONLY blFlash & swDeploy & cdDeploy.
11. Visually confirm AGAIN that nothing is selected except the blFlash & swDeploy & cdDeploy
on the EGS line.
Once the EGS flash is completed, the procedure is over, and your car DME & EGS modules have been
converted to Production Code MY51.
Page 6 of 7
Guide for flashing EU Fxx N53 DME and EGS using ESYS
V. 1.12
Troubleshooting
If there were no errors logged during DME flash but the car does not start after DME flashing, it likely
means that the alternative SWFL ID used does not match the installed hardware.
If this happens, it is recommended to attempt reverting back to the original DME SWFL ID by loading
and activating the ORIGINAL FA_ORG_ MT11, reading the current SVT from the car, calculating a
temporary SVT_TARGET & a new TAL. If the calculations are correct, the TAL will have only one line in
the flashing window for DME. Execution of this TAL should revert the car to its original state.
The revert flashing procedure is essentially the same as listed earlier in Phase 7, albeit using the newly
generated files above.
Other observations
It was identified that multiple fault errors are registered in the car Fault memory during flashing.
During the TAL processing, the KOMBI & HU_CIC showed multiple system errors related to DSC,
degraded braking system, Restraint system, SOS calling and various others.
Faults were registered in other modules that are linked to the DME & EGS via the MOST network.
ISTA/D was able to clear all the faults. Users can use ISTA/D, INPA & Tool32 to clear them too.
This conversion is only useful in conjunction with replacing the intake manifold with the 3-stage
manifold delivered on Production code MY51 cars.
Until the new manifold is installed, new faults will continue to register and the CEL light will be on.
In case of failures, difficulties or unexpected results, please contact the forum members for assistance.
Also, please consider that E-Sys does not provide:
We have not observed any initialization or normalization procedures needed after flashing the DME &
EGS.
E-Sys version used: 3.22.5. It is recommended to use this version.
No token or patch is needed for any steps in this guide.
Page 7 of 7
Guide for flashing EU Fxx N53 DME and EGS using ESYS
V. 1.12