Saturday 20 April 2019

F10 / F11: Front Bumper Removal Guide

** If you are removing / replacing only one side headlight, then it is possible to loosen the bumper on the corresponding side and peel it back to access the headlight screws, rather than removing the entire bumper. **

1. Under the bonnet/hood remove the front end of the rubber seal located just inside the front wings either side.

2. Remove the two plastic push-pin type fasteners on each top corner of the bumper skin. (Or just the ones on the side you are removing the headlight on.)

3. Remove the 4 screws holding the top edge of the bumper using a T30 Torx socket.

4. Under the car, remove the 8 screws under the bottom lip of the bumper using an 8mm socket.

5. There are 3 screws located at the forward side of each front wheel-arch that need removing using an 8mm socket, locations pictured. (If you are working on one side/headlight then these screws only need removing on the corresponding side, as with steps 6 and 7.)

6. Peel the plastic wheel-arch liner back from the corner of the bumper and wedge it against the tyre.

7. Remove the 2 screws located on the inside of the bumper on each side that can now be accessed with the arch-liner out of the way, as pictured. The near one needs a 10mm socket, the one further in is another 8mm. A 1/4" drive wrench is good here with not much room.

8. Gently pull the bumper outwards from its bracket until it separates from the front wing and pull that side of the bumper forward. It should peel away from the car quite easily. Repeat for the other side and the bumper is off, unless you are only working on one side as the headlight and other parts inside / behind the bumper are accessible with one side pulled away from the car.

9. If you are completely removing the front bumper, remember to unplug the front fog-lamps, parking-sensors etc. before moving the bumper away from the car. There is plenty of room to do this with the O/S (right-side) bumper peeled off.

Many thanks to Isturbointeg on for some of his superb pictures I made use of. His original guide on F10post forum is here -

Monday 15 April 2019

F10: Halogen Headlight Module Issues - when it's not the bulb... [TMS, FRM]

OK, a lot of F10 owners seem to have various problems with headlights not working properly and it is usually due to one of the light-modules. Gone are there days of simply replacing a bulb and you're away. The F10 has several modules for everything, all linked into the master CAS computer [Car Access System] and, where they may make for accurate diagnosis and a slick system when everything is working as it should do, they sure are a confusing nightmare when something goes wrong!

There are a zillion forum threads out there detailing problems with certain light-modules and the methods used to fix / replace / re-program them, ranging from serious in-depth coding discussion to a 'For Dummies' type guide on where to start when attempting this at home. Still, none of them seem to properly discuss what the modules are, what they do and where to look when you think (or someone tells you!) that they are at fault, so the purpose of this guide is to explain just that. Even when an error-code points at a faulty module (and there are so many light-module related fault-codes that they often do!), it may still just be a break in the wiring or a bad earth, so now you won't be baffled at the complexity of your BMWs lighting network the next time you replace a bulb, check the fuse and you're light still won't turn on.

How the F10 Lighting System works:

Unlike other modern cars, most if not all Fxx Series BMWs have a computer-module housed in each light-unit. These are called TMS modules and their job is to receive on/off commands from the car and regulate power to each bulb in the light-unit. In the headlights they also work as ballast for the halogen / xenon bulbs and control the auto-levelling function. The TMS modules all connect to a larger module known as the FRM, mounted inside the car's dashboard (usually in the driver's footwell), which controls all the various lights in the vehicle. Not just the exterior lights, but every single interior and courtesy light is connected separately to the FRM. All of the switch-gear is connected directly to the FRM module, even the ones mounted next to the map-reading lights that they operate and, when pressed, rely on the FRM to send power back to the bulb. In turn, the FRM reports to the central-CAS that all is OK, or reports a fault and sends up a message on the iDrive. The FRM module is not solid-state electronics either... it runs software. When the FRM receives a command to say, turn on the lower courtesy light in the rear passenger side door, the FRM scans the car for lights matching that code, finds it and sends power accordingly. When lights are swapped out for parts with a different FRM-code then the module won't find what it's looking for and can't turn the light on. This is where FRM coding and programming comes in - amending the light-codes in the module to match those of your new lights.


Obviously the bulb and fuse are OK, so where to look first if the light still won't turn on and the error message is still displayed? Before you get into the serious stuff, check for a physical fault first - this is most likely to be the culprit.

Breaks in Wire - If only one light is affected, say the N/S high-beam and all other lights work fine, then chances are there is a physical problem with the wiring. If modules are failing then noticeable faults should be more sporadic than a single light not turning on. An FRM-xxx fault-code will likely show up along with 'Left High-Beam Failure'. This is because the FRM cannot find the bulb in question or senses a short-circuit, but doesn't mean the FRM itself is faulty. The FRM-module scans constantly and will quickly find the bulb and cancel the error-message once a physical fault has been sorted, so ignore the FRM part of the fault-code and check the wiring first.
Common places where wire-breaks occur are inside the headlight unit itself, particularly where the car has been in a front impact of some sort, and to the right of the driver's (O/S) footwell. All the wiring for the switches and the FRM module dwell here and it is easy to knock them, especially if trim has been removed for other work. The wiring connector plugs can also get knocked and throw up FRM errors, so check all 5 are seated in the module.

TMS Module Failures:

  • Side-light / Angel Eye failure.
  • Halogen headlight bulb failure.
  • TMS-xxx fault-codes.

The TMS-module is fitted into the back of each headlight unit with two T20 screws and requires removal of the headlight to remove and replace it. To do this you will need to remove the front bumper, a guide for which is here. The most common cause of TMS failure is moisture getting into the sealed headlight - the circuitry is very sensitive to moisture and this will fry the entire module. A new spurious module can be bought from eBay for as little as £40 - they come with plenty of warranty and lots of happy customers so I would recommend this route. If genuine parts is your thing, then expect to pay ~£350(!) per module from BMW, or used items starting at £50. New modules are self-learning, making them 'plug-and-play' for a straight swap, but if pre-used items have been installed to a slightly different light unit then they may need re-coding to get working right. In my opinion, spurious parts are a winner for solid-state modules and for the price difference who's complaining.

FRM Module Failures:
  • Random front / rear lighting issues - e.g brake-lights stop working, indictors stop working, all lights work sporadically.
  • Front/rear driving-lights only stay on for about 30-seconds then dim and do not come back on.
  • Random exterior lights flashing on/off when headlights or ignition operated.
  • One or more light related error messages, but lights still work.
  • FRM-xxx fault-codes.
The FRM-module is a silver box located in the driver's-side footwell to the right of the pedals (on a right-hand-drive car.) It only requires removal of the plastic trim under the dash and at the front of the driver's door frame to replace and is held in by two 10mm nuts. Be careful though, wiring harnesses from lights/switch connect to both sides of the module, with the rearward facing ones quite hard to see, so make sure all 5 are fully removed before yanking the module. Spurious lighting modules are hard to find and will come blank, so require a full set of codes to be programmed matching your vehicle for them to work. Used genuine parts are your friend here, with FRM-modules ranging from £60-100 on eBay. All FRM-modules are interchangeable, even different part numbers, but you need to find one with the correct FRM version for your car. With most modern Fxx Series it will be running the FRM-3 software, so check it already this version. If not you can completely re-install the FRM software for your car, but you will need a copy of the software and coding become very involved. If you find a matching part for your car, chances are it had the same lighting array so will operate the lights correctly without coding, but if the car your module came from had a slightly different level of trim, or there had been an update to light configurations, then some lights will have a different code and you will need to check which ones are not functioning properly and amend the code stored in the FRM to suit those units. This is also true if standard lights are being upgraded to M-Sport variants, which will have a different code. Replacing the FRM, or any higher level module on your BMW should be programmed in some way, even if it is just to update the VIN-number stored on it to match your vehicle, so everything works 100% with the CAS and no errors are randomly thrown up in the future, though if you do get lucky and it works with all your lights then there is no reason it won't do so forever.

Coding / Programming the FRM Module:

This is the daunting part for most people experiencing FRM-module problems or upgrading light-units. First of all you will need to be quite computer savvy. It really helps to know your way around Windows as setting up the software and getting it talking to the car will be a very steep learning curve for those who are not handy with their operating system. There is so much to write about BMW coding that I could do a multitude of posts covering it, so I will stick to what is needed for this task, though if you are getting seriously into it then check out the forums on
Apart from an OBD-ENET cable, there is software you will need including INPA, NCS Expert and Progman. These are available in a great package in this post -
If you have fitted a new or uprated light unit, then amendments will need to be made to the FRM coding. This isn't too daunting once you have accessed the list of lights stored to the FRM, as all the data is already there and only the code for lights that differ from original need to be altered. If it is a new FRM-module you need to code in, this is about the most difficult lighting related bit of programming and involves coding the car's VIN-number to the new module, then listing the code to every light in your car one by one. Even so, once the FRM has been accessed using NCS Expert successfully, the actual coding part isn't too bad if you have the patience.

The forum threads I found essential are below: - every subtle coding nuance is detailed on there, including lots on FRM.

For most of the tasks involved in repairing / recoding / installing a new FRM module see this guide - Coding in a new FRM Module for Dummies []

Another great thread that covers individual light failures in the FRM, resetting short-circuit counters and forcing individual lights to come on is here - Resetting Short Circuit Counters in FRM Module []

A list of FRM Lamp IDs can be found in this post - BMW Fxx Series FRM Lamp ID Codes List

Front Bumper / Headlight Removal Guide

Saturday 13 April 2019

BMW FRM Lamp ID Codes List [Fxx Series, E92]

List of some FRM codes for vehicle lighting, used when coding / reprogramming FRM module. I will add more ID codes / alterations as I find out.

0x00 High Beam, Left or E92/3 Cornering Light
0x01 High Beam, Right or E92/3 Cornering Light
0x02 Low Beam, Left
0x03 Low Beam, Right
0x04 Parking Light, Left
0x05 Parking Light, Right
0x06 Fog Light, Left, Front
0x07 Fog Light, Right, Front
0x08 Turn Signal, Left, Front
0x09 Turn Signal, Right, Front
0x0A Turn Signal, Left, Rear
0x0B Turn Signal, Right, Rear
0x0C Unassigned 1
0x0D Lighting WBL Button?
0x0E Brake Light, Left
0x0F Brake Light, Right
0x10 Brake Light, Center
0x11 Taillight/Brake Light, Left 1 or E92/3 Daytime Running Light
0x12 Taillight/Brake Light, Right 1 or E92/3 Daytime Running Light
0x13 Taillight/Brake Light, Left 2
0x14 Taillight/Brake Light, Right 2
0x15 Licence Plate Lighting
0x16 Interior Lighting
0x17 Fog Light, Left, Rear
0x18 Fog Light, Right, Rear
0x19 Reverse Light, Left
0x1A Reverse Light, Right
0x1B Brake Force Display, Left
0x1C Brake Force Display, Right
0x1D Clamp 58g
0x1E LED Driving Lights Control
0x1F LED Front Field Illumination
0xFF Unknown Lamp

See this post for more information about the FRM module and how to program it -