BMW E90 Daytime Running Light Coding: TAGFAHRLICHT_ECE and DRL Parameters
On the E90, enabling daytime running lights, choosing which lamp acts as the DRL, or disabling the function entirely is done with the TAGFAHRLICHT and DRL parameters in the FRM/NFRM module.
— Tekin Code
On the E90 the daytime running light function is governed by several separate parameters in the FRM or NFRM module. The TAGFAHRLICHT_ECE lines switch the function on or off, VERHALTEN_DRL_TFL decides which lamp is used as the DRL, and the DRL_TFL lines change how the tail lights behave while the DRL is lit.
Which parameter does what?
This subject is not a single-line coding but a family of interdependent lines. TAGFAHRLICHT_ECE_1 enables the daytime running light function; per the source list it goes from nicht_aktiv to aktiv on pre-facelift cars built after 04/2007. VERHALTEN_DRL_TFL then selects which lamp is used. On halogen cars, TAGFAHRLICHT_ECE_0 is what allows the front parking lights to serve as the DRL.
Module: FRM or NFRM
Enable: TAGFAHRLICHT_ECE_1 = aktiv (2008, 2010)
For halogen: TAGFAHRLICHT_ECE_0 (2007)
Lamp choice: VERHALTEN_DRL_TFL — drl_s (parking light) or drl_h (high beam)
Canadian disable: DRL_V_GEDIMMT (2006, 2007), TAGFAHRLICHT_ECE_1 (2009)
Tail lights: DRL_TFL_MIT_RL_BL_2 (2008, 2009), DRL_TFL_MIT_SL_2 (2010, 2011)
Risk: moderate — it directly affects how visible the car is
Which line is marked for which model year?
Coverage differs from line to line, and that is where this subject most often goes wrong. The enabling line TAGFAHRLICHT_ECE_1 is marked for 2008 and 2010 in the source list, while the same name appears again for 2009 in the context of switching off the high-beam DRL on Canadian models. The lamp-choice line covers 2007, 2008 and 2010, and the tail light lines are defined separately for 2008-2009 and 2010-2011.
• TAGFAHRLICHT_ECE_1 is marked for 2008 and 2010 as an enable, and for 2009 as a Canadian disable.
• VERHALTEN_DRL_TFL only becomes meaningful once TAGFAHRLICHT_ECE_1 is enabled.
• TAGFAHRLICHT_ECE_0 turns the front parking lights into the DRL on halogen cars: marked for 2007.
• DRL_V_GEDIMMT switches the DRL off on Canadian models: marked for 2006 and 2007.
• Tail light behaviour runs on DRL_TFL_MIT_RL_BL_2 for 2008-2009 and DRL_TFL_MIT_SL_2 for 2010-2011.
• Model-year coverage comes from community-compiled E90 coding lists; the binding source is your own car's FSW/PSW data.
How do you code it?
Decide which outcome you want first, then change only the line that produces it; trying several lines in this family at once makes the result impossible to attribute. OBDThink is an independent BMW coding and diagnostics app and is not affiliated with BMW AG. Because the FRM module also holds headlight type, country setting and indicator behaviour, take a backup before writing.
• Switch the ignition on without starting the engine and attach a battery charger.
• Connect with OBDThink, select the FRM or NFRM module and read the coding data.
• Save a backup, then change only the single line matching your goal.
• If you are enabling the DRL, set the TAGFAHRLICHT_ECE_1 line to aktiv.
• Then choose drl_s or drl_h in the VERHALTEN_DRL_TFL line.
• If you do not want the tail lights lit with the DRL, set the relevant DRL_TFL line to nicht_aktiv; read the warning below before taking this step.
• Write the change, cycle the ignition and walk round the car to check the lamps.
Reading live lamp output status in OBDThink shows which lamp group is being driven as the DRL without walking to the front of the car.
How do you revert it?
Reverting means returning the line you changed to its previous value. If you touched several lines it becomes hard to track which produced which result, so restoring the pre-coding FRM backup is the most dependable route.
Module: FRM or NFRM
Disable the DRL: TAGFAHRLICHT_ECE_1 = nicht_aktiv
Reset the lamp choice: VERHALTEN_DRL_TFL = drl_tfl_off
Restore tail light behaviour: set the relevant DRL_TFL line to aktiv
Safest method: restore the pre-coding FRM backup
Check: switch the ignition on, the front lamps should not light by themselves
Inspection, legality and the tail light trap
In Canada daytime running lights have long been required by the national motor vehicle safety standard, which is why the disable lines in the source list are described for Canadian models. In the European Union the mandate began in 2011 for new type approvals, so most E90s fall before that date. Even so, many countries including the Nordic states, Poland, Czechia and Slovenia separately require headlights to be used by day under national traffic rules.
The tail light delete is the most dangerous part of this family. Switching the tail lights off while the DRL is lit leaves the car bright from the front and completely invisible from behind, and because you can see light in the cluster you forget to switch the real lights on. The risk of being struck from behind at dusk and in tunnels rises in a concrete way.
• Periodic inspection checks the lighting system; a lamp that does not work or behaves unexpectedly can be recorded as a defect.
• On a car registered in Canada, disabling the DRL removes a function required by the national standard.
• Choosing the high beam as the DRL can dazzle oncoming drivers; the parking light option is the more measured choice.
• Return the lighting coding to factory state before selling the car, or the buyer may run into an inspection problem.
What if the lamps do not behave as expected?
First read back which line you actually changed, because similarly named lines in this family do different jobs and the wrong one produces an unexpected result. Second, check the VERHALTEN_DRL_TFL value; even with TAGFAHRLICHT_ECE_1 enabled, a lamp choice left at drl_tfl_off drives nothing. Third, if your headlight type is not correctly declared in the vehicle order, the module drives the wrong lamps.