Video in Motion + Kill the Seatbelt Nag
Enable video playback on the NBT or NBT Evo headunit while driving, and optionally disable the seatbelt reminder chime. Two separate procedures — you can do one or both.
✓ Before You Start
NBT or NBT Evo headunit required. This procedure is for F-series cars with the NBT (iDrive 4/5) or NBT Evo (iDrive 6) navigation headunit. CIC-equipped cars (older F10/F01 builds) use a different procedure with different parameter names. Check your iDrive generation before starting.
Safety note. Video in motion allows video playback while the vehicle is moving. This is intended for passenger use or stationary/slow-speed situations. The driver should not watch video while the vehicle is in motion. This guide is provided for informational purposes; you are responsible for how you use coded features.
- F-series with NBT (iDrive 4/5) or NBT Evo (iDrive 6) navigation headunit
- BimmerCode app (iOS/Android, ~$34.99) or E-Sys software with ENET cable
- Compatible OBD2 adapter: Veepeak OBDCheck BLE (BimmerCode) or ENET cable (E-Sys)
- Engine running (not just ignition on) — headunit needs to be fully active during coding
- BimmerCode backup saved before making any changes
▶ Part 1 — Video in Motion (VIM)
BimmerCode has a dedicated VIM unlock workflow that doesn't require Expert Mode. It's the recommended path. The E-Sys method is included below for those who need more control or already have the laptop setup.
-
Connect BimmerCode and select your car
Plug in the Veepeak adapter, open BimmerCode, connect to your car. Make sure the engine is running — BimmerCode needs the headunit fully awake.
-
Select the Headunit module
In the module list, tap Headunit (labeled as HU_NBT or HU_NBT2 depending on your generation). Tap "Read coding data."
-
Find "Video in motion" and tap Unlock
In the Headunit coding options, scroll to find "Video in motion". Tap it, then tap Unlock. BimmerCode will display an on-screen instruction: you need to hold the iDrive controller forward (toward the screen) until the headunit restarts.
-
Wait for headunit restart
The headunit will reboot — this takes about 30–45 seconds. Do not disconnect the OBD2 adapter during this time. The BimmerCode screen will confirm when coding is complete.
-
Test VIM
With the car in Drive and moving (slowly, in a parking lot is fine), open the media source on the headunit. Video playback options that were previously greyed out should now be active.
E-Sys gives you direct access to the CAFD FDL parameters. Useful if BimmerCode's VIM unlock doesn't work on your headunit revision, or if you want to understand exactly what's being changed.
NBT (iDrive 4/5) — HU_NBT module
| Module | Section | Parameter | Set To | Default |
|---|---|---|---|---|
| HU_NBT | HMI | VIDEO_NUR_MIT_HANDBREMSE | nicht_aktiv | aktiv |
NBT Evo (iDrive 6) — HU_NBT2 module
| Module | Section | Parameter | Set To | Default |
|---|---|---|---|---|
| HU_NBT2 | HMI | VIDEO_NUR_MIT_HANDBREMSE | nicht_aktiv | aktiv |
In E-Sys: Connect via ENET → Read FA + SVT → Select HU_NBT or HU_NBT2 → Read Coding Data → Right-click the generated .ncd file → Edit FDL → Find the parameter above → Change Werte to 00 (= nicht_aktiv) → Save → Code.
✗ Part 2 — Disable Seatbelt Reminder Chime
The seatbelt reminder is in the ACSM (Advanced Crash Safety Module) — separate from the headunit. Two things to code: the warning indicator lights and the chime sound. You can disable either or both.
Always wear your seatbelt while driving. This setting is documented here because many owners disable it when moving a car short distances (parking, garages, car shows) where constant chiming is impractical. Using this in motion carries real safety risk — that's your call to make, not ours.
BimmerCode Standard Mode (ACSM module)
Navigate to the ACSM module in BimmerCode's standard coding list. You'll find four options — disable as many as you want:
| BimmerCode Option Label | Set To | What it does |
|---|---|---|
| Seat belt reminder indicator — driver seat | nicht_aktiv | Disables the seatbelt warning light (driver) |
| Seat belt reminder indicator — passenger seat | nicht_aktiv | Disables the seatbelt warning light (passenger) |
| Seat belt reminder — driver seat | nicht_aktiv | Disables the chime sound (driver) |
| Seat belt reminder — passenger seat | nicht_aktiv | Disables the chime sound (passenger) |
E-Sys / BimmerCode Expert Mode (ACSM module, Section 3001)
| Parameter | Set To | Default |
|---|---|---|
| Gurtzustandsanzeige_Fahrer | nicht_aktiv | aktiv |
| Gurtzustandsanzeige_Beifahrer | nicht_aktiv | aktiv |
| SBR-PreWarning_Fahrer | nicht_aktiv | aktiv |
| SBR-PreWarning_Beifahrer | nicht_aktiv | aktiv |
Fahrer = Driver / Beifahrer = Passenger (front passenger)
! Risks & How to Revert
Low risk for both procedures. These changes are software-only and reversible in under 5 minutes. No modules are flashed or damaged. The headunit reboot during VIM unlock is expected — it always comes back.
To revert VIM: Open BimmerCode → Headunit module → "Video in motion" → set back to the locked state. Or in E-Sys, set VIDEO_NUR_MIT_HANDBREMSE back to aktiv.
To revert seatbelt reminder: ACSM module → set all four parameters back to aktiv. The chime and indicator lights will return immediately after the next ignition cycle.
BMW software update may revert VIM. Dealer software updates sometimes reset headunit coding. If you get a VIM update at a dealership, you'll likely need to re-code it. This is normal and not a sign that something went wrong.