Showing posts with label CAS. Show all posts
Showing posts with label CAS. Show all posts

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.



Troubleshooting:

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 - http://www.beemerlab.org/2019/03/bmw-inpa-506-for-fxx-series-enet-cable.html
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:

BMWcoders.com - 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 [https://www.e90post.com/forums/showthread.php?t=1184199]

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 [https://www.bimmerfest.com/forums/showthread.php?t=866044]

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


https://forum.bmw5.co.uk/topic/130693-headlights-problem/

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 - http://www.beemerlab.org/2019/04/f10-halogen-headlight-module-issues.html

Tuesday, 11 August 2015

Vehicle Electrical System - Terminals + Abbreviations

Energy diagnosis: Terminal control

The terminal control is distributed across various control units. The following block diagram provides an overview of the control units involved and the integration in the vehicle electrical system.



JBE Junction Box Electronics
SV Distribution box from the Junction box
CAS Car Access System
RAD2 Radio 2 (depends on level of equipment)
M-ASK Multi Audio System Controller (depends on level of equipment)
CCC Car Communication Computer (depends on level of equipment)
DME Digital Engine Electronics
DDE Digital Diesel Electronics
IBS Intelligent battery sensor (depends on level of equipment)
K-CAN SYSTEM Bus system for body functions
MOST Bus system in the area of audio and communication (depends on level of equipment)
PT-CAN Bus system for power train and chassis functions

There are the following terminals:

Terminal 30:

Terminal 30 is routed from the battery terminal via the safety battery terminal to the front distribution box. As soon as the battery is connected to the terminals, terminal 30 is live. Terminal 30 is at approx. 40 fuses of the distribution box.

Control units supplied by terminal 30:


AL Active steering (up to model year 03/2005)
AHM Trailer module (up to model year 03/2007)
CA Car Access System
CDC CD changer (up to model year 09/2006)
DME Digital Engine Electronics
DDE Digital Diesel Electronics
DWA Antitheft Alarm System
EGS Gearbox control (up to model year 03/2005)
EPS Electromechanical power steering
EKP Electric fuel pump (up to model year 03/2005)
FRM Footwell module
FZD Roof Function Centre
JBE Junction Box Electronics
KOMBI Instrument cluster (up to model year 03/2007)
MRS5 Multiple restraint system
SH Independent heating (up to model year 03/2005)
SMBF Passenger seat module (up to model year 09/2006)
SMFA Driver seat module (up to model year 09/2006)
SMG Sequential manual gearbox (up to model year 03/2005)
SZL Steering column switch cluster

Terminal 30g:
Terminal 30g is controlled by the CAS. When the overall vehicle is wakened by an operation of the user, terminal 30g is switched on. Terminal 30g is automatically switched off after a codable after-run time (e.g. 30 minutes). The after-run time starts with the event terminal R Off. As in the case of terminal 15, a relay in the distribution box is activated by the CAS via a semiconductor switch. The relay of terminal 30g switches the battery voltage to approx. 18 fuses in the distribution box.

Control units supplied by terminal 30g:

ACC Active cruise control
AL Active steering (as of model year 09/2005)
AMP Amplifiers
CDC CD changer (as of model year 12/2004)
CID Central Information Display
CON Controller
CVM Convertible top module
DSC Dynamic Stability Control
DAB Digital tuner
EGS Gearbox control (as of model year 09/2005)
EKP Electric fuel pump (as of model year 09/2005)
IHKA Integrated automatic heating and air conditioning system
IHKR Integrated heating / air conditioning regulation
IHR Integrated heater control
LDM Longitudinal dynamics management
RAD Radio
RAD2 Radio 2
TPM Tyre Pressure Monitor
SDARS Satellite tuner
SH Independent heating (as of model year 09/2005)
SHD Panorama glass roof (E91)
SMBF Passenger seat module (as of model year 03/2007)
SMFA Driver seat module (as of model year 03/2007)
SMG Sequential manual gearbox (as of model year 09/2005)
TCU Telematic Control Unit (except US version)
ULF Universal charging and hands-free unit
ULF-SBX Interface box
ULF-SBX-H Interface box High
VM Video module
VTG Transfer Box

Terminal 30g-f:

Terminal 30g-f is a terminal 30 that is only switched off of faults are detected.

Terminal 30g-f only exists if a bistable relay is fitted. The relay is not visibly arranged in the distribution box. As a rule, the bistable relay is only fitted together with the IBS. On vehicles with CCC, M-ASK or independent heating, a relay of this kind is fitted. On some equipment variants with TCU, a bistable relay is also fitted.
On vehicles without terminal 30g-f, the corresponding fuses are supplied with terminal 30g.

The JBE controls terminal 30g-f via a bistable relay in the distribution box. The bistable relay can be switched off or on. As a rule, the bistable relay is always switched on. The bistable relay has two relay coils and it always remains in the last state activated (switched on or switched off).

The following three faults exist in which terminal 30g-f is switched off: Up to model year 09/2006:

1. As of approx. 60 minutes terminal R off, the DME/DDE starts a closed-circuit current measurement using the IBS. When the DME/DDE determines a closed-circuit current fault, this wakes up the vehicle and sends a message for cutoff of terminal 30g-f. The JBE receives the message and switches the bistable relay off.
Increased closed-circuit current due a switched-on auxiliary consumer unit is not a closed-circuit current fault for the DME/DDE. Nonetheless, terminal 30g-f is switched off even if the starting capability limit is reached. The command for cutoff of terminal 30g-f is also issued in this case by the DME/DDE. 
2. As of terminal R off, the JBE monitors whether the vehicle is able to go into the idle state. The vehicle can only enter the idle state when all the control units are ready for this. If not all control units have signalled this readiness approx. 30 minutes, the JBE switches terminal 30g-f off. The JBE also stores all the control units in the energy history memory that have not signalled readiness for the idle state.
3. A few minutes after terminal R off, the vehicle has normally switched into the idle state. As of the idle state, the JBE counts how often the vehicle is wakened. The JBE switches terminal 30g-f off when a vehicle has been wakened unexpectedly more than 30 time with terminal R off. The JBE also stores the maximum number of waking events in the energy history memory.

As of model year 03/2007:

1. If an IBS is fitted, the power management in the DME/DDE monitors the closed-circuit current and the battery status. If the battery charge state is close to the starting capability limit, the vehicle is wakened and a message to reset or shut down terminal 30g-f is sent. The JBE regulates the bi-stable relay accordingly.
2. If the vehicle is wakened too often after shutdown of terminal 30g, the JBE switches terminal 30g-f off for approx. 10 seconds (reset). If the vehicle is still wakened after the reset, terminal 30g-f is switched off permanently until the next terminal change (shutdown).
3. If the vehicle does not go to sleep after shutdown of terminal 30g, the JBE switches terminal 30g-f off for approx. 10 seconds (reset). If the vehicle still does not go to sleep after the reset, terminal 30g-f is switched off permanently until the next terminal change (shutdown).

In all cases of cutoff, a fault is entered in the JBE. The cutoff of terminal 30g-f is independent of what triggered the detected fault. The cutoff is only an attempt to remedy the fault in the vehicle and prevent it from not starting. The cutoff of terminal 30g-f does not necessarily mean that there was a fault in a consumer unit of terminal 30g-f.

The switch-on condition for terminal 30g-f is switching on terminal R. For this reason, with terminal R or terminal 15, terminal 30g-f is always switched on.

Control units supplied by terminal 30g-f:

AHM Trailer module (as of model year 09/2007)
CA Comfort Access (as of model year 03/2007)
CCC Car Communication Computer
CNAV Navigation system China
JNAV Japan navigation system
KNAV Navigation system Korea
KOMBI Instrument cluster (as of model year 09/2007)
M-ASK Multi Audio System Controller
TCU Telematic Control Unit
(only US version)

Terminal 15:
Control of terminal 15 is by the CAS depending on operation of the start/stop button (with the key inserted in the key slot). 
The gearshift mechanism of terminal 15 is switched in the CAS via semiconductor switch. A relay in the distribution box is activated via the output of a semiconductor switch. The relay switches the voltage of the battery to approx. 7 fuses in the distribution box. The consumer units of terminal 15 are essentially supplied from here.

Control unit supplied by terminal 15:

FLA High beam headlight assistant
PDC Park distance control

For safety reasons, some control units have a terminal 15 line directly from CAS, e.g. the FRM (footwell module).

Terminal 87:

The DME/DDE controls terminal 87 via a relay in the E-box. Terminal 87 is switched on as soon as terminal 15 is switched on. After terminal 15 has been switched off, terminal 87 is switched off by the DME/DDE with a slight delay.

No control units are supplied by terminal 87.

Terminal R:

Terminal R is not present as a hardware terminal. The status of terminal R is only communicated from CAS via the bus systems.