- Published on
If you’ve ever glanced at your cluster and wished the speed limit just popped up like it does on newer or higher-spec cars, you’re in the right place. A lot of F-series and G-series BMWs already have the screen real estate ready for Speed Limit Info (SLI), but the factory never turned it on properly. That’s where an SLI emulator comes in.
I’ve helped quite a few guys get this working, and I’ve done it on my own cars too. It’s one of those upgrades that feels really nice once it’s sorted – the little speed number just sits there in the cluster (and HUD if you have one) and quietly keeps you honest. No more squinting at every sign or relying only on the nav.
Quick important note right up front: an SLI emulator is not the same as a full factory KAFAS camera system. It feeds the car speed limit data (usually map-based or from the module itself). Signs can be outdated, missing temporary limits, or wrong after roadworks. Always trust your eyes and the real signs first. This is a helpful extra, not a replacement for paying attention.
OEM SLI vs SLI Emulator – What’s the Actual Difference?
Factory Speed Limit Info uses the KAFAS camera to read signs, cross-checks with navigation data, and needs the right activation plus sometimes an FSC code. It’s pretty slick when everything works.
An SLI emulator is a small extra module you install. It simply provides the car with the SLI data so the cluster, HUD and head unit can display it. You still need proper coding afterwards. No camera required.
If you only code the cluster without any data source (no emulator, no working KAFAS, no FSC), you usually just get three dashes. That’s the classic “display is on but nothing is feeding it” look.
Which Cars Does This Work On?
This is most common on:
- 1 Series F20/F21
- 2 Series F22/F23/F45/F46
- 3 Series F30/F31/F34/F35
- 4 Series F32/F33/F36
- 5 Series F10/F11/F07 and G30/G31
- Various X models in F and G generations
- Some i3 and MINI F-series (check your specific emulator)
Every car is a bit different. Control units and exact CAFD names can vary with software version and options, so always double-check what you actually have before changing anything.
What You Need Before You Start
- A compatible SLI emulator made for BMW F/G-series
- The emulator properly installed (follow the seller’s wiring and DIP switch instructions carefully)
- E-Sys (or another solid coding tool)
- Good ENET cable
- Stable power supply / battery charger – don’t skip this
- Backup of your original coding (NCD/CAFD files)
- Some patience and basic FDL coding experience
Back everything up first. Seriously. Five minutes of saving files can save you hours later.
Coding the F-Series
On most F-series the main work is in the instrument cluster (KOMBI or BKOMBI).
Typical values that get the job done:
- ANZEIGE_NPI = aktiv
- KI_PIA_SPEED_LIMIT = aktiv
- SPEED_LIMIT = aktiv
- SPEED_LIMIT_GENERATION = sli_gen_2_npi
- RCOG_TRSG_APPL = aktiv
- RCOG_TRSG_TIMEOUT = aktiv
These turn on the speed limit display and the extra NPI info in the cluster.
Coding the G-Series
G-series usually use the digital cluster (DKOMBI). Values can look a bit different and not every car has every parameter.
Common ones that work well:
- ADDITIONAL_SIGN_ENABLE = aktiv
- ANZEIGE_NPI = aktiv
- CB_TACHOZEIGERBAND = aktiv
- CB_SLI_NPI = aktiv
- PIA_SLI_NPI = aktiv
- RCOG_TRSG_APPL = aktiv
- RCOG_TRSG_TIMEOUT = aktiv
- SLI_PERMANENT_ENABLE = aktiv
- SPEED_LIMIT_ENABLE = sli
- TACHOZEIGERBAND_ENABLE = aktiv
- NO_PASSING_ENABLE = aktiv
- SPEED_LIMIT_UNIT_ENABLE = Wert_02
Wert_02 usually shows the unit (km/h or mph). Some files show Wert_0 or Wert_00 for off – just match whatever your CAFD actually uses.
Head-Up Display Coding
If you have a HUD and want the limit up there too, code these (only the ones that exist in your file):
- HUD_NPI_ENABLE = aktiv
- HUD_PIA_SPEED_LIM = aktiv
- HUD_SPEED_LIMIT_ENABLE = aktiv
- HUD_SLI_ENABLE = aktiv
- PIA_HUD_SLI = aktiv
- PIA_HUD_SLI_NPI = aktiv
- PIA_HUD_SLI_PORTIERUNG = aktiv
- PIA_HUD_VSLI = aktiv
- HUD_PIA_SLI = aktiv
- HUD_PIA_NPI = aktiv
Get the cluster working first, then tackle the HUD. Some older or base HUDs are more limited in what they can show.
Head Unit Coding (NBT / NBT EVO)
For the iDrive side:
- SPEEDLIMIT_INFO = aktiv
- SLI_NAVI_DISPLAY = nicht_aktiv
The second one is often used with emulators so the system doesn’t lean only on the factory nav/OEM logic. Not every head unit has exactly these names – MGU cars especially can differ.
Simple Step-by-Step with E-Sys
- Put the car on a good charger.
- Connect ENET cable.
- Launch E-Sys and connect.
- Read FA/VO, then load SVT.
- Read the relevant modules: KOMBI/BKOMBI/DKOMBI, HUD (if fitted), and the head unit.
- Save the original coding files.
- Open FDL coding, find the values above, change them, and write.
- Let the car go to sleep (ignition off for a few minutes).
- Check the cluster, iDrive menu, and HUD.
- Take a short drive and compare with real signs.
What You Should See When It Works
A proper speed limit number in the cluster. Often extra signs and no-passing info too. HUD if coded. Sometimes a menu item in iDrive.
Troubleshooting the Common Problems
Only three dashes showing
Display is active but no data is arriving. Check:
- Emulator power and connections
- DIP switches (F vs G series, Europe/USA, km/h vs mph, sign style)
- Correct coding in cluster
- Head unit and HUD coding
- Emulator compatibility with your software version
Cluster works but HUD doesn’t
Almost always missing or incomplete HUD coding. Go back through the HUD list.
No menu item in iDrive
Look at SPEEDLIMIT_INFO in the head unit. Newer MGU units can have different parameter names.
A Few Real-World Tips
Set the DIP switches on the emulator before you button everything up. Most need the correct series, region, and unit selected.
After coding, do a proper test drive on roads you know. Compare the shown limit with actual signs, especially around temporary limits or new signage.
Keep your expectations realistic. Map-based systems lag behind fresh changes. Construction zones and variable signs are the usual weak spots.