Fiat, Alfa Romeo and Lancia Immo Off: Marelli MJD, Bosch EDC16C39 and EDC17C49 Explained
Fiat group cars use a tightly integrated immobilizer called Fiat Code: the body computer holds the key data and the engine ECU expects its code at every start. A failed body computer, a used ECU or a swapped engine leaves the car cranking without firing. This guide covers the ECUs used across Fiat, Alfa Romeo and Lancia and how an immo off file is applied to each.
How Fiat Code works
The transponder key is read by the antenna at the ignition switch and validated by the body computer (BSI on the Punto, Body Computer on Grande Punto, 500, Panda, Doblo). The body computer then sends the code to the engine ECU over CAN or the dedicated immobilizer line. A mismatch produces the “Code” warning lamp, no start, and codes such as P1601, P160A, P1621 or U1601. The ECU stores the code after the first pairing; that is why a used ECU refuses to work in another car.
ECU families
- Magneti Marelli MJD 6F3 / 6JF: 1.3 Multijet 2003 to 2010. Immobilizer data in the external 95160/95320 EEPROM.
- Marelli MJD 8F2/8F3/8DF: 1.3 and 1.6 Multijet 2009 onwards; read on the bench or boot.
- Marelli IAW 5SF/59F/8GMF/8GMK: 1.2 and 1.4 petrol on Punto, Panda, 500, Ypsilon.
- Bosch EDC16C39: 1.9 Multijet and 2.4 JTD on Stilo, Bravo, 159, Croma, Doblo.
- Bosch EDC17C49 / EDC17C69: 1.6 and 2.0 Multijet 2010 onwards on Bravo, Giulietta, Doblo, Ducato.
- Bosch ME7.9.10 / MED17.3.x: 1.4 T-Jet and MultiAir petrol.
Marelli units: EEPROM-based immo
On MJD 6F3 and the IAW 5SF/59F family the immobilizer code sits in a separate EEPROM. The immo off is a modified EEPROM dump (and, on some versions, a flash patch) written with a programmer or a bench tool such as KTAG. Because the EEPROM also stores adaptation values, use the dump made for your exact software version and write the flash only if the product says so.
Bosch units: flash-based immo
EDC16C39, EDC17C49 and EDC17C69 keep the immobilizer routine in the flash. The immo off file replaces the full read; bench reading with KTAG, FLEX or New Trasdata is the standard method; EDC16C39 can also be written over OBD with KESS V2.
Procedure
- Read the ECU label: Bosch or Marelli part number, the Fiat number (55xxxxxx / 51xxxxxx) and the software version.
- Back up the ECU completely, including the external EEPROM on Marelli units.
- Write the immo off file matching the numbers.
- Clear codes and start. The Code lamp can stay lit on some models; it has no effect on running.
Alternatives
If the body computer is healthy and you want to keep the security, order a virgin file and run the proxy alignment with MultiEcuScan or the dealer tool. If the old ECU still reads, cloning its EEPROM into the donor is another option.
Browse
Fiat, Alfa Romeo and Lancia files by ECU model and software number are in the immo off, virgin and original categories. Missing version? Send the read through the file request form.
More ECU guides
ECU File: What It Is, the Types Workshops Buy and How to Find Yours
A Golf arrives on a trailer. The last garage tried a remap over OBD, the write stopped part way through and now the engine ECU won't…
Delco E98 ECU Files for Opel Astra J, Insignia, Mokka and Chevrolet Colorado Duramax
An Astra J 1.4 Turbo, 2012, comes in with no communication on the engine ECU and a burnt smell under the cover. The label on the…
Delphi DCM3.5 Immo Off and Virgin: Peugeot, Citroen and Ford 1.6 HDi / TDCi Euro 5 ECU Guide
The Delphi DCM3.5 is the engine ECU of the 8-valve 1.6 HDi (DV6D / DV6DTED, 92 hp) Euro 5 engine fitted from 2010 to the Peugeot…