Coding for plain LDW - solved
I can't tell anything about High Beam Assistant, but I should be able to help with
Lane Departure Warning (LDW 5AD).
As far as I'm aware, this may be the first and only LDW solution for the F3x series posted on the net. :dunno:
I had retrofitted LDW already a while ago by pure VO coding, but only the last days I did have the time (and thanks to TokenMaster's
NCD / CAFD Tool the chance at all) to isolate and eliminate
all those unwanted and unnecessary codings with regards to Front Collision Warning (FCW) and pedestrian detection, which are also part of 5AD and do lead to collision warning errors in check control as well as create config options for collision warning in the iDrive screen which do neither work nor make any sense for a plain LDW. LDW in an F3x is not a stand-alone feature anymore, but is also combined with FCW and pedestrian detection, which both require an FSC (and which I do still not have a source for). With the codings below, we make it a plain and stand-alone working LDW.
So, here we go: If you have camera based Speed Limit Information (SLI 8TH), Lane Change Warning (LCW 5AG), plus an NBT (not sure about CIC, reports welcome) and an enhanced panel, the following codings should enable LDW (in E-Sys BTW referred to as "TLC") without requiring an FSC and without generating any check control errors or any other issues - at least this works here in an F30 with build level 1307 (July 2013).
Remark #1: If you don't have factory-fitted LCW already, it may also be sufficient to just retrofit a steering wheel with vibration/actuator, but I'm not 100% sure about (and can't help you with) this. If anyone has the chance to test this, please do so and report.
Remark #2: The codings below
may also work for an
F20. Again: Please test and report.
Remark #3: The F30 has partly similar, but also different settings to the F10, which have been posted a while ago in
this Bimmerfest thread.
I'll list the codings in alphabetical order of the control devices where they appear, but I'll make one exception, because this one is disclosing a secret:
- ICM (CAFD_0000067B_002_006_012)
3000 Daten => C_KOV_TLC_verbaut => verbaut = 01 (default: "nicht verbaut = 00"; required, otherwise the lane lines will appear in the KOMBI, but the system will be inoperative in so far as the steering wheel will not vibrate at all)
This seems to be a key setting, which has not been mentioned anywhere on the net yet. If you enter "C_KOV_TLC_verbaut" in Google, you will get exactly zero hits (well, from now on, you will get one at least). Amazing, eh...? So, not much of a surprise that none of all those previous attempts did succeed.
Ok, now let's go ahead in alphabetical order of the control devices:
- FEM_BODY (CAFD_00000794_011_033_013)
3420 PfSarahMaster, 0E => SPURVERLASSENS_WARNUNG => aktiv = 01 (default: "nicht_aktiv = 00"; required, otherwise check control error "Front camera based assistance systems failed" - not really sure about the exact English wording, my car is German
)
- KAFAS2 (CAFD_00001148_000_021_002)
3020 TLC_CODING, 0B => SEND_MSG_345 => message_on_F020_F030_F025 = 01 (default: "message_off =00"; required, otherwise no warning signal will be sent to the steering wheel)
3020 TLC_CODING, 0B => SEND_MSG_327 => message_on = 01 (default: "message_off =00"; required, otherwise lane detection won't be displayed)
3020 TLC_CODING, 0B => TLC_ON_OFF => TLC_on_F020_F030_F025 = 01 (default: "TLC_off = 00"; required, otherwise the system will be inactive entirely)
3040 TLC_ACTUATOR_PARAM, 14 => ACTUATOR_ON_OFF => vib_warn_on_F20_F30_F25 = 01 (default: "all_others = 00"; required, otherwise vibration for camera based systems will be disabled at all)
- KOMBI (CAFD_000009C8_006_000_031)
3003 FZG_Ausstattung, 10 => TLC_VERBAUT => aktiv = 01 (default: "nicht_aktiv = 00"; required, otherwise the system won't be displayed in the KOMBI)
Well, not a lot and looks easy, you say? But in fact it was a major and time consuming task. The VO coding of 5AD does exactly 54 changes to the car which you first need to find and isolate, then to disable them one by one, drive with the car to check if the system is still operative, if not, enable it again, disable the next one, and so on - just to find the ones that are really needed, and to eliminate the ones that are either not needed, and/or causing issues as well as check control errors and config options that don't make any sense, because they are related to FCW and pedestrian detection. Took me days, plus some miles and fuel, of course...
But wait, we're not finished yet: Although you may have implemented the codings above, you won't see anything in the KOMBI due to lack of the required switch in your lower dashboard to engage and disengage the system. So we have to do the following coding to engage the system permanently (unless you will retrofit the switch, in which case the default value might work):
- KAFAS2 (CAFD_00001148_000_021_002)
3020 TLC_CODING, 0B => TLC_START_VERSION => 01 = UNKNOWN (default: "PIA_mode = 03"; required to engage the system permanently if switch not existent)
You need to change the hex value itself here, as this option does not exist in the drop-down list. Don't be surprised about the "UNKNOWN" result - that's exactly how it should read.
There are two settings which a VO coding of 5AD does implement as well and which - due to their indication - are also clearly related to LDW, but are not required for the operation of the system. I'm not sure what they're doing (or if they're doing anything at all), but for the sake of completeness, I'd recommend to code those as well:
- FEM_BODY (CAFD_00000794_011_033_013)
3003 ComAdapterNetworkDtc, 90 => ComAdapterPdu_327_ Status_Spurverlassenswarnsystem => aktiv = 01 (default: "nicht_aktiv = 00")
- HU_NBT (CAFD_00000DED_003_009_015)
3001 EXBOX, 97 => LANE_DEPARTURE_WARNING => aktiv = 01 (default: "nicht_aktiv = 00")
In recent posts, another coding has been mentioned and discussed:
- KAFAS2 (CAFD_00001148_000_021_002)
3020 TLC_CODING, 0B => DISPLAY_VARIANT
This is by default set to "lanes_if_system_is_on,_arrows_side_dependant_on_ availability = 04" here, but it's also the only setting being available anyway. Nonetheless you may want to x-check your own setting.
I'd be happy about any feedback if the above works for you. The setup above is exactly the one that I have in my car currently.
There are some more codings which seem to be related to LDW (and a lot more which are not), but I'll comment them in a later message. This post must come to an end finally.
And I have to apologize for a possible improper wording here and there. Not only my car is German...
P.S.: Kudos to @shawnsheridan for teaching me the basics of VO coding, and to @TokenMaster for the
NCD / CAFD tool. :thumbup: :beerchug: