Why is Carly so safe for coding – specially regarding the FRM ECU?

Share this with friends:

Unfortunately some FRM2 and FRM3 modules (produced from ca. 2007 – 2013) have a rare firmware fault. If you see this message in the app when trying to code the FRM, the app has found critical faults in your FRM. As a consequence the app does not allow coding of your FRM:

“Carly has found severe faults in your FRM and has therefore NOT coded your FRM.”


If the app hadn’t blocked coding of your FRM, your FRM would be completely unresponsive now. This would result in a complete failure of exterior and interior lighting, turn signals, window and mirror controls. Repairing an unresponsive FRM (also known as “bricked” FRMs) costs hundreds of Euros and takes several days.
If you’re interested in more details, please click here.
Which FRMs get broken:
Unfortunately some FRM2 and FRM3 modules (produced from ca. 2007 – 2013) have a rare firmware fault. The app checks the firmware of the ECU for this specific fault and blocks coding of these modules if necessary.

In these cases, the following message is displayed within the app when trying to code the FRM:

“Carly has found severe faults in your FRM and has therefore NOT coded your FRM.”


Only the following models have an FRM2 or FRM3 modules installed:

  • 1 series (E8x) 2007 or later
  • 3 series (E9x) 2007 or later
  • X1 (E84) all build years
  • X5 (E7x) all build years
  • X6 (E7x) all build years
  • Z4 (E89) all build years
  • Mini (R55 or newer) all build years

In rare cases older models have FRM2 or FRM3 modules installed as well. This can be the case, if an FRM2 or FRM3 has been retrofitted.

If the following codings are available for your car within the app, your car has an FRM2 or FRM3 installed:

  • Welcome lights Key 1
  • Welcome lights Key 2
  • Welcome lights Key 3
  • Welcome lights Key 4

Effects of an unresponsive FRM:
If the app hadn’t stopped the coding, your foot well module (FRM) would now be unresponsive. This has the following effects on the car:

  • Complete failure of interior lighting
  • Complete failure of window controls
  • Complete failure of mirror controls
  • Complete failure of turn signals
  • Complete failure of high beams and flasher
  • Complete failure of welcome lights
  • Complete failure of adaptive cornering lights (if installed)

Repairing the car:
There are generally two ways of repairing the car after the FRM has become unresponsive:

  1. Replacing the FRM:
    • A used FRM costs ca. 150€ – 300€ (depending on the variant of the module). Replacing the module yourself roughly takes 1 – 2 hours.
    • A new FRM can only be installed by a professional garage, since it needs to be initialized and adapted to the car. Replacing the FRM (including costs for the new FRM itself) takes 1 – 2 days and costs between 350€ – 700€ depending on the garage and FRM variant.
  1. Restoring the FRM via PC:
    Removing, restoring and the re-installing the restored module takes ca. 2 – 3 hours. Special hard- and software is needed though.

Cause of the FRM fault:
Some FRM2 and FRM3 modules with very specific firmware-versions develop a fault in the boot sector after multiple years of usage. As a result, the FRM cannot restart, once it has been shut down completely. In order to load the new codings though the FRM needs to be restarted after coding. If it is not restarted the newly coded options will not be loaded by the FRM.

Carly for BMW checks this boot sector (ONLY READING!) among other parameters within the FRM before coding. The app cannot write to this boot sector. This is also the reason why it is not possible to restore this boot sector with the app. The app only takes a look at this boot sector and decides afterwards if it is safe to continue coding this module.

The FRM does not store faults in its own fault memory for this error, since it does not realize it is faulty on its own. For this reason, a seemingly fault-free FRM can be affected by this critical fault. Since the fault lies within the FRM module itself, the same thing will also happen while coding via PC.

How have we figured this out?
In order to figure this out, we’ve worked very closely with ECU-developers and learned a lot about ECU development. During the whole time we’ve had assistance from companies from Switzerland and USA and many experts in Germany in order to analyze FRMs.

Based on a tip, we’ve bought many used FRMs from this period for multiple thousands of Euros. Using special equipment used for ECU-development, we created complete backups of each module (including the boot sector) and coded the modules via PC until they could not start anymore. This way we were able to figure out the exact moment when the FRM will break and implemented this advanced FRM check into the app. No other program or app has such an extensive and specific check for coding.

Can I still somehow code my critical FRM?
If the app classifies your FRM as “critical”, the probability that your FRM will break during the next few codings is very high. We strongly advise against coding critical FRMs, no matter the program or device! Other modules can still be coded, this warning only applies to your FRM.

If you insist on coding your FRM despite all warnings, you can enter a 4-digit unlock code during coding, which you find underneath the warning text (you may need to scroll down the warning).

When you enter this unlock code before coding, the app will allow you to code your FRM despite all our warnings and at your own risk.