BMW VO coding and option codes
How the vehicle order works, how to add or remove an option code with E-Sys, and the codes you will meet most often.
What is VO coding?
Every BMW carries its vehicle order (German Fahrzeugauftrag, so FA; in English also VO). It lists how the car was built: series, type key, build date, paint and upholstery, and every factory option as a three-character option code (SA code), for example 5AC for the high-beam assistant.
Modules read the vehicle order to decide which functions to switch on. VO coding means changing that list (adding or removing an option code) and then recoding the modules, so they all switch the function on or off together. It is the clean way to "retrofit" an option the hardware supports, for example after fitting a reversing camera.
Changing one setting in one module is the other way: FDL coding.
Step by step: add or remove an option code
- Connect with a charger on the battery, Read FA and save a copy of the original FA file.
- Open the FA in the editor (in E-Sys: Expert Mode > VCM > Read from the car, then Edit).
- Under SALAPA, add the option code (or remove it). Most codes need the leading
$, for example$5AC. - Calculate FP where your E-Sys version shows it, then Save and Write FA (and the FP) to the car.
- Read FA again and Activate FA, then Read SVT.
- Select the modules the option touches and press Code (not "Code Default Values" unless you want every FDL change reset).
Be careful: an option code tells every module the part is there. Adding a code for hardware the car does not have can cause fault messages. Removing codes can switch functions off in modules you did not expect. Change one code at a time and keep the original FA.
Common BMW option codes
Widely documented codes on F and G-series cars. Names vary a little by model year and market; your car's own data decides.
| Code | Option |
|---|---|
1CC | Auto Start/Stop function |
205 | Automatic transmission |
2TB | Sport automatic transmission |
248 | Heated steering wheel |
249 | Multifunction steering wheel |
2VB | Tyre pressure monitoring |
2VL | Variable sport steering |
302 | Alarm system |
316 | Automatic tailgate operation |
322 | Comfort access |
323 | Soft-close doors |
337 | M Sport package |
3AG | Reversing camera |
402 | Panorama glass roof |
403 | Glass sunroof, electric |
430 | Interior and exterior mirrors with auto-dip |
453 | Active seat ventilation, front |
459 | Electric seat adjustment with memory |
494 | Seat heating, driver and front passenger |
496 | Seat heating, rear |
4UR | Ambient light |
508 | Park Distance Control (PDC) |
521 | Rain sensor |
522 | Xenon headlights |
524 | Adaptive headlights |
544 | Cruise control with braking function |
552 | Adaptive LED headlights |
563 | Light package |
5A1 | LED fog lights |
5A2 | LED headlights |
5AC | High-beam assistant |
5AD | Lane departure warning |
5AG | Lane change warning |
5AS | Driving Assistant |
5AT | Driving Assistant Plus |
5AZ | BMW Laserlight |
5DF | Active Cruise Control with Stop & Go |
5DL | Surround View |
5DP | Park Assistant |
609 | Navigation system Professional |
610 | Head-up display |
654 | DAB tuner |
655 | Satellite radio |
688 | Harman Kardon surround sound system |
6AC | Intelligent emergency call |
6AM | Real Time Traffic Information |
6NR | BMW Apps |
6WB | Instrument cluster with extended contents |
715 | M aerodynamics package |
760 | High-gloss Shadow Line |
8TN | Daytime running lights, adjustable in the light menu |
VO coding with E-Sys MAX
- Every option code named in E-Sys's vehicle order tree, in English, also the less common ones.
- The FA checked against BMW's data for your series, so a mistyped or unknown code stands out before you write it.
- Name a code yourself when you know it, and it shows that way from then on.
- Full backup of the FA and every module's coding before you start, and coding history after.
Questions
VO coding or FDL coding: which one should I use?
VO coding when you add or remove a whole option (hardware fitted or removed). FDL coding for a single setting in one module. Do VO changes first: recoding from the vehicle order resets FDL changes in the modules it touches.
What is the $ in front of an option code?
It marks a SALAPA option code in the FA. E-Sys's editor shows codes with it, for example $5AC. Type it the same way.
Where can I see my car's option codes?
Read the FA with E-Sys: the SALAPA list is every option your car was built with (plus any added later). E-Sys MAX shows each one with its English name.
Every option code, named
E-Sys MAX names your vehicle order in English and checks it before you write. Free for 3 days.
