1 Glare-Free High Beam: What Is It?
Glare-free high beam [GFHB] is a camera-driven dynamic lighting control strategy that selectively shades spots and slices out of the high beam pattern to protect other road users from glare, while always providing the driver with maximum seeing range. The area surrounding other road users is constantly illuminated at high beam intensity, but without the glare that would result from using uncontrolled high beams in traffic.
This constantly changing beam pattern requires complex sensors, microprocessors and actuators, because the vehicles which must be shadowed out of the beam are constantly moving. The dynamic shadowing can be achieved with movable shadow masks shifted within the light path inside the headlamp, or the effect can be achieved by selectively darkening addressable LED emitters or reflector elements, a technique known as pixel light.
The first mechanically-controlled (non-LED) GFHB was the Dynamic Light Assist package introduced in 2010 on the Volkswagen Touareg, Phaeton and Passat. In 2012, the facelift Lexus LS (XF40) introduced an identical Bi-Xenon system: the Adaptive High-Beam System.
The first mechanically-controlled LED GFHB was introduced in 2012 on the BMW 7 Series: the Selective Beam (or Anti-Dazzle High-Beam Assistant). In 2013 Mercedes-Benz introduced the same LED system: the Adaptive Highbeam Assist Plus.
2 Cool: Do I have It On My US F3x/F8x?
Due to archaic US DOT regulations, all US (and Canadian) cars have GFHB disabled at the factory, even if this feature is available on similar cars delivered to other markets. The High-Beam Assistant (HBA) functionality that is available on US cars simply turns the high beams on/off automatically, but does not include GFHB.
Nevertheless, GFHB can be re-enabled through coding on US BMW cars that are equipped with both Adaptive LED Headlights (option code 552) and HBA (option code 5AC).2
3 I Am All Ears: What Do I Need To Code?
The three coding steps that are required to enable GFHB on F3x/F8x cars are described in the Appendix.3 Basically, the combined effect of these three steps is to set the coding parameters that are relevant for the operation of GFHB to the same values that would have been set at the factory for a similar car sold in the European market.
If you have had your car coded before July 2015 in order to enable GFHB, it is almost certain that only the first of the three required steps was implemented. While this results in the light beams moving around in response to other traffic, the dynamic shadowing is not enabled and thus the feature is not operating correctly, glaring other traffic. If you are in doubt, ask for the help of somebody with a car with a nondimming rear view mirror: drive behind that car with GFHB active and then ask the driver if he or she was glared by your car. If the answer is affirmative, most likely Steps 2 and 3 were not implemented.
This note is a result of the investigational work performed by the following Bimmerfest forum members (listed in alphabetical order): dmnc02, larrylam646, Motorboat646, MarkoM3, shadowyman and shawnsheridan, as well by the members of both Bimmerfest and Bimmerpost that continued to maintain a healthy dose of skepticism that the GFHB functionality they had coded on their cars was working as designed.
A lot of additional information on this can found in the Bimmerfest thread titled “F30/F31/F32/F33 REcoding no-dazzle high-beam assistance?” and in the Bimmerpost thread titled “Adaptive LED lighting turned on–wow”.
Below are the steps required to correctly enable GFHB on F3x/F8x cars.
Remove 5AP and 8S4 from the VO and VO code the following ECUs: FEM_BODY, FLA or KAFAS
(whichever is present), both TMS and both LHM.
Change the values of the 16 functions in the following table from the “US VO Value” (which is what you should have after performing Step 1 above) to the corresponding “ECE VO Value” and confirm that the Werte matches the value in the last column of the table.
Make sure you pay attention to which LHM ECU ( or ) you are editing.
For the function M3 in LHM , if you do not see a preset option labeled “Unknown” which gives you thecorrect Werte, just select any preset option and edit the Werte directly: the option name will change to “Unknown” automatically.
Change the values of the 4 functions in the following table from the “US VO Value” (which is what you should have after performing Step 1 above) to the corresponding “ECE VO Value” and confirm that the Werte matches the value in the last column of the table. Note that the function values have been shortened to fit in the table: F030_[. . .]_LED_US stands for F030_F32/F33/F36/F80/F82/F83_LED_US and F030_[. . .]_LED_ECE stands for F030_F32/F33/F36/F80/F82/F83_LED_ECE.