BMW FRM3 Recovery: How to Fix a Dead Footwell Module with a Dump
The footwell module (FRM) controls exterior and interior lighting, windows, mirrors and the door functions on BMW E-series and early F-series cars and on the Mini R-series. When it fails, the symptoms are dramatic: no lights, no window switches, no communication with the diagnostic tool, and a car that looks like it needs a new module and dealer coding. In most cases the module is fine; only its firmware is gone. This guide shows how to bring it back with an FRM dump.
Why the FRM dies
FRM2 (E87, E90, E60, E70, R56) and FRM3 (E90 LCI, E84, E89, R56 LCI and later) run on a Motorola/Freescale HC12 microcontroller with internal flash and EEPROM. During a voltage drop, typically while cranking with a weak battery or when a charger is disconnected mid-session, the controller can corrupt its own flash. The module then boots without a valid program and stops answering on the bus.
Symptoms
- All exterior lights off, or only the daytime lights on.
- Window and mirror switches dead, doors do not respond.
- Diagnostic tool reports “FRM no communication” or cannot find the module.
- Fault codes such as 9CBB, 9CBC, A0B2 stored in other modules.
- Battery symbol or “check lighting” warnings on the cluster.
What you need
- A programmer that supports the HC12 family: XPROG-M, VVDI Prog, Orange5, UPA-S or a dedicated FRM tool.
- The FRM dump for the exact part number printed on the module label (for example 61359224587-02 for a FRM3 E90).
- A stable 12 V bench supply and the module’s pinout for power and ground.
Recovery procedure
- Remove the FRM from behind the kick panel on the driver’s side and read the part number.
- Connect the programmer to the module in boot mode (the HC12 needs the BDM pads on the board or the connector pins, depending on the tool).
- Read and save the module’s current flash and EEPROM, even if corrupted. It contains the coding data you may want to keep.
- Write the full FRM dump matching your part number. Our dumps are full reads from working units, so the module boots with valid firmware.
- Refit the module, connect the battery and confirm that lights and windows work.
- Recode the module with ISTA or a coding tool so that the options match the car’s vehicle order (VO). If the original EEPROM read was good, its coding data can be restored.
Common mistakes
- Using a dump for a different part number or hardware index. The module may boot but with wrong outputs.
- Writing only the EEPROM. The corrupted area is the flash; write the full dump.
- Skipping the coding step, which leaves options such as adaptive lights or auto-fold mirrors disabled.
- Repeating the failure: fit a charger before any further programming on the car.
Prevention
Every BMW programming session should start with a proper charger connected. Most FRM failures we see happened while the workshop was coding another module with a low battery. If the FRM has already failed once, a firmware refresh with the correct dump plus a healthy battery normally solves it for good.
Find your dump
Browse the FRM category by part number, or check the BMW brand page for related EWS, CAS and DME files. Not listed? Send the label photo through the file request form.
More ECU guides
Bosch EDC17CP20 ECU Guide: VW Transporter, Amarok, Crafter and Audi A4, A6 Files and Tools
A Transporter arrives on a trailer. Someone tried a remap over OBD, the laptop dropped its USB connection halfway through the write, and now the van…
Bosch EDC16C39 Files for Fiat Doblo, Ducato, Alfa 159, Opel, Hyundai and Kia Diesels
The unit on the bench came out of a Fiat Ducato. The Bosch label reads 0281014209, the van cranks but won't fire since a second-hand ECU…
How to Flash an FRF File with ODIS or VCP: VAG Software Update Guide
FRF containers are the way Volkswagen, Audi, Skoda and Seat dealers update control unit software. With the right tool you can do the same in your…