last posts

How To Reprogramming And Repair FRM 3 Of BMW STEP BY STEP

After Remove the block FRM from the car and put it on the table, i will give you step-by-step tutorial on how to reset it with xprog. 

  1. what is the FRM module
  2. Symptoms of FRM unit damage
  3. The most important reasons that lead to unit damage
  4. repair steps

FRM3 (Footwell Module) Repair

What is the FRM module

The FRM is a control module located in BMW, and controls many function on it such as power windows, exterior mirrors, lights, adaptive headlights, and several other functions. For this reason, when this unit fails, it leads to the failure of many other functions associated with it.

Symptoms of FRM unit damage

Today we will be dealing with a common bmw problem, in which the outdoor lighting completely fails (more precisely, the dipped beam and dimensions are on when the ignition is on, but we cannot control this), do not work front power windows, central locking, interior light. 

During diagnostics, the FRM unit does not communicate, in the remaining modules, there are a lot of errors associated with communication with this unit FRM.

the most important reasons that lead to unit damage

The fact is that the failure of the FRM3 block occurs due to a failure of the eeprom area in the microcontroller (MC9S12XEQ364) controlling this unit. 

MC9S12XEQ364 microcontroller

Moreover, eeprom dies gradually until changes in it reach a critical mass. And then the block works until it needs data from eprom ... so meaning that any reboot, whether it is connecting diagnostics or removing the battery terminal (an attempt to start on a weak battery it could lead to damage to the eeprom area ).

So to restore this FRM unit, you should reset it by restore the eeprom corrupted from D flash.

The internal memory of the MC9S12XEQ364 microcontroller stores its native eeprom! It is encrypted in a memory area called D-flash, after reading it, you can completely restore the FRM3 unit to full working.

repair steps

The main thing is to read the D flash from microcontroller of FRM module , and by using programs or any service that can do this you can restore the eeprom from D flash, after that you can now write this eeprom dump in eeprom area of microcontroller.

At first you need to have a pinout to read this microcontroller and connect xprog according to it

pinout FRM3 (Footwell Module)

connect your XPROG tool according pinout connection above , and make sure the wires is connected and soldered correctly.


Launch xprog, select the “MC9S12XEQ364” from the list . We will read d-flash.


After select the microprocessor click ok then Press the “new” button, then “read”. A partition error will pop up, don’t be alarmed, it’s the way it should be!.


click "ok". The following window pops up:


without changing anything!("number of sectors for eeprom" = 0; d-flash = 32768; eeprom = 0) click "ok". The process of reading d-flash has begun. Next we restore the eeprom from d-flash , there is many way to restore eeprom from D flash in online service or program working off line..

After prepare your file Open the resulting file in xprog.
Click "devices" and select "MC9S12XEQ364_EEE". Before recording the resulting file, BE SURE TO ERASE THE EEPROM AREA! NECESSARILY!
To do this, press the "erase" button. again a partition error. Only this time you  need to specify the size of the eeprom .
To do this, press the "erase" button. again a partition error. Only this time you  need to specify the size of the eeprom .

  • number of sectors for eeprom = 16
  • d-flash = 0
  • eeprom = 4096.
Click “ok”. The eeprom area is erased. then "write". We wait for completion, unsolder, put the unit on the car, rejoice at the work done.
as I already said in this method, no coding or programming is NEEDED! all encodings remain the same!


Font Size
lines height