The Complete BimmerCode Guide for BMW F30 & F32 (Every Feature Listed)

Your BMW F30 has dozens of features that BMW disabled from the factory — not because they don’t exist in the hardware, but because enabling them costs money at the dealer or wasn’t included in your trim level. BimmerCode lets you unlock them from your phone in minutes. If you’ve ever wondered why your neighbour’s F30 automatically folds its mirrors when locked, or why their indicator blinks three times on a lane-change tap instead of one — the answer is probably BimmerCode.

BimmerCode is a smartphone app available on both iOS and Android that connects to your BMW via a compatible OBD2 Bluetooth adapter and lets you modify ECU and module settings — a process called “coding.” Unlike dealer diagnostic tools that cost thousands of dollars and require trained technicians, BimmerCode costs approximately $29 CAD as a one-time in-app purchase. There are no subscription fees. You buy it once and use it on every BMW you own.

This guide covers the F30, F31, F32, F33, F34, and F36 — that’s the 2012–2019 BMW 3 Series and 4 Series in sedan, wagon, coupe, convertible, Gran Turismo, and Gran Coupe body styles. Whether you’re on a 320i or a 440i xDrive, the vast majority of these codings apply to your car. We’ve organized every feature by category so you can plan exactly what you want to change before you plug in.

What You Need Before You Start

BimmerCode coding requires three things: the app, a compatible adapter, and your car. Getting the wrong adapter is the single most common mistake new users make — and it will prevent the app from connecting entirely on iPhone. Here’s exactly what you need.

BimmerCode App

Download BimmerCode from the App Store (iOS) or Google Play (Android). The app is free to download and includes a limited set of codings in the free tier. To access the full feature set — which is what this entire guide covers — you’ll need the Expert Mode license, which is a one-time in-app purchase of approximately $29 USD. This is not a subscription. You pay once and get lifetime access, including all future updates BimmerCode adds for your car generation.

Compatible OBD2 Bluetooth Adapter

This is the most important part of the setup, and where most people go wrong. BimmerCode requires a Bluetooth 4.0 BLE (Bluetooth Low Energy) adapter — NOT a classic Bluetooth 2.1 adapter. The $15 ELM327 clones you see on Amazon use outdated Bluetooth 2.1 and will not work with BimmerCode on iPhone. They may partially work on Android, but even then, connection stability is poor and coding sessions may drop mid-write, which can cause module errors.

For iPhone users, BLE is not optional — iOS entirely blocks classic Bluetooth from communicating with OBD2 adapters at the protocol level. There is no workaround. You need a BLE adapter, full stop.

We stock the Vgate vLinker BM+ — the only OBD2 adapter with BimmerCode explicitly in its product name. It’s fully certified for BimmerCode, uses Bluetooth 4.0 BLE, works on both iPhone and Android, and is rated 4.9 stars. Priced at C$79.99, it’s the most reliable adapter available for BMW coding in Canada. If you’re going to invest $29 in the BimmerCode app, protect that investment with an adapter that actually works.

Vehicle Requirements

Your car should be in accessory mode (ignition on, engine off) or fully running during coding. Do not code while driving. Each coding session takes about 5 minutes per module — most changes are instantaneous once written. The car’s battery should be in reasonable health; if your battery is weak, consider connecting a battery maintainer to prevent voltage drops during the write cycle.

Comfort and Convenience Codings

Comfort codings are the most popular category in BimmerCode — and for good reason. These are the everyday annoyances that BMW either charged extra to enable or disabled entirely for markets outside Europe. Most of these changes take effect immediately after coding, without a car restart. Here’s every comfort and convenience coding available on the F30 platform.

Auto Start/Stop Disable

This is the single most popular coding on the F30, and arguably the best. BMW’s engine auto start/stop system shuts the engine off every time you come to a complete stop — at traffic lights, in drive-thrus, pulling into parking. The idea is fuel economy, but in practice it adds engine wear, creates an annoying jolt on restart, and requires you to press the A-OFF button on every single drive.

With this coding, the system is permanently disabled. The A-OFF button no longer needs to be pressed. The engine behaves exactly as you’d expect — it stays running when you stop. This coding is written to the Body Domain Controller (BDC) or Junction Box Electronics (JBE) module depending on build date, and takes effect on the next drive cycle. Many F30 owners code this on day one and never look back.

Seatbelt Chime Disable

The seatbelt reminder chime can be disabled via BimmerCode. This is particularly useful for track day use where the harness replaces the stock belt, car shows where you’re moving the car a short distance, or any scenario where the chime is triggering unnecessarily. Note: the warning light in the cluster will still appear — only the audio chime is disabled. Safety systems remain fully active.

Folding Mirrors on Lock

If your F30 has power-folding mirrors (standard on many trim levels), you can code them to automatically fold inward every time you lock the car. Without this coding, you need to either hold the lock button or press a separate mirror fold button. With it enabled, locking the car via the key fob or the door handle sensor folds both mirrors in one step. This is a very clean feature for tight parking situations, underground garages, or narrow driveways.

Comfort Closing

Comfort Closing allows you to hold the lock button on your key fob to close all open windows and the sunroof simultaneously. This is the feature that people discover has always existed in BMW hardware — it just needs to be enabled. Left the sunroof cracked on a walk-in day? Hold lock from across the parking lot and everything closes. Works with all power windows and the panoramic or standard sunroof if equipped.

Comfort Opening

The counterpart to Comfort Closing — hold the unlock button on your key fob and all windows plus the sunroof begin opening before you even reach the car. Incredibly useful in summer when the interior has been baking in the sun. Approach from a distance, hold unlock, and by the time you get in the car the heat has already started venting. Works with any combination of windows and sunroof depending on what your car is equipped with.

Seat Memory on Door Open

For cars with electric seats and seat memory, this coding automatically moves the seat backward when you open the driver’s door, giving you more room to exit. When you start the car, the seat returns to your saved memory position automatically. It’s a feature found standard on higher-end BMW models and can be enabled on F30s that have electric seats but didn’t come with the automatic slide feature from the factory.

Rain/Speed Wipers Sensitivity

If your F30 is equipped with rain-sensing wipers, you can adjust the sensitivity threshold — how much rain accumulation is required before the wipers activate, and how aggressively they respond to speed changes. Some owners find the factory setting too sensitive (wipers activate on light mist), others not sensitive enough (heavy rain before they kick in). BimmerCode lets you fine-tune both the rain sensor threshold and the speed-dependent interval adjustment to match your preference.

Gong and Chime Volume

BMW uses a variety of gong tones and notification chimes for door ajar warnings, forgotten key alerts, and other reminders. The volume for these can be reduced or muted entirely via BimmerCode. If you find the cabin notification sounds excessive — particularly the loud warning gong that fires when a door is open at speed — this coding lets you dial it back to a level that isn’t jarring.

Lighting Codings

Lighting is one of the most visually impactful coding categories. The F30’s lighting hardware is capable of far more than what BMW enables from the factory — from adjustable DRL intensity to welcome light sequences that weren’t activated from the dealer. Here’s every lighting coding available.

DRL Behaviour

The daytime running lights on the F30 can be adjusted in multiple ways. First, you can set the intensity — the brightness of the DRLs as a percentage from 0 to 100. Running them at 70–80% gives a slightly more subdued look than the blinding factory setting. Second, you can configure the DRLs to flash briefly when you lock or unlock the car — similar to how some luxury vehicles use light pulses as visual confirmation. This adds a premium feel to what would otherwise be a mundane lock confirmation.

Cornering Lights Enable

On F30s equipped with fog lights, cornering lights can be enabled via BimmerCode. With this coding active, the fog light on the side you’re turning toward illuminates at low speeds — typically under 40 km/h — to illuminate the area you’re turning into. This is genuinely useful for night driving in residential areas or on winding roads. If your F30 has fog lights but cornering lights never activated, this coding is likely all you need to enable them.

Lights-Off Delay

The duration that exterior lights stay on after you exit the car and lock it is adjustable. By default, BMW sets a brief follow-me-home lighting period. You can extend this to illuminate your path longer in dark environments, or shorten it if you park in a well-lit area and want the lights to extinguish immediately. The timing is set in seconds and you can choose the exact value that works for your parking situation.

Welcome and Goodbye Lights

Welcome lights trigger a lighting sequence when you approach the car and unlock it — interior ambient lights, footwell lights, and potentially the LED rings or DRLs activate as you walk up. Goodbye lights do the same in reverse when you walk away after locking. These are features standard on higher-spec BMW builds and can be enabled via coding on cars that have the lighting hardware but not the software unlock. The result is a noticeably more premium feel to getting in and out of the car.

Angel Eye Brightness

For F30s with LED corona rings or aftermarket H8 halo bulbs, BimmerCode allows you to adjust the brightness of the angel eyes independently from the DRLs. This is useful if you’ve upgraded to higher-output H8 LED bulbs and the factory software is running them at a low duty cycle. You can also set whether the angel eyes behave as DRLs (on during the day), as position lights (on only at night with headlights), or both. Fine-grained control that the factory settings don’t expose.

Rear Fog Light Enable

Many F30s sold in North America ship with the rear fog light hardware present but disabled at the software level, because rear fogs are not required by North American regulations and BMW simply doesn’t enable them for the market. If you drive in conditions where a rear fog is useful — heavy rain, early morning fog, winter whiteouts — BimmerCode can enable the rear fog function in the light switch module. The physical bulb is already there. You just need to activate it.

Indicator Blink Count

The “lane-change blink” feature — where a brief tap of the indicator stalk causes the indicator to flash automatically a set number of times — has an adjustable count. BMW ships the F30 with three blinks as default. You can change this to anywhere from one to five blinks depending on your preference. One blink is popular among drivers who find three excessive for a quick lane change. Five is preferred by some for increased visibility in heavy traffic. It’s a small change that you’ll notice on every drive.

iDrive and Digital Codings

The F30’s iDrive system — whether you’re running NBT (the standard unit in most F30s) or NBT EVO (the updated unit with gesture control in later models) — has several software restrictions that BimmerCode can remove or modify. These codings affect what’s displayed on screen, how the system behaves on startup, and what’s accessible while driving.

Video in Motion

BMW restricts video playback on the iDrive screen when the car is moving. This is a legally mandated restriction in most markets — and a sensible one when the driver is watching. However, it also affects rear-seat passengers and scenarios where you’ve parked but haven’t shut the engine off. BimmerCode can remove the motion restriction, allowing video to play through the iDrive screen regardless of vehicle speed. This works on F30s running NBT or NBT EVO iDrive. Note: as the driver, you’re responsible for not watching video while in motion.

Sport Displays on Startup

The instrument cluster on the F30 has a Sport view that shows a large RPM gauge, engine oil temperature, and G-force readouts. By default, the cluster starts in the Standard view. With this coding, Sport view is set as the default, so every time you start the car you’re greeted with performance data instead of having to manually switch the display. On the 335i, 340i, and M Sport variants especially, this is a coding that fits the car’s character.

iDrive Startup Logo

The iDrive startup screen can be modified to remove or change the brand/dealer logo that appears when the system boots. Some dealers program their dealership name or logo into the iDrive on delivery. BimmerCode lets you remove this and restore a clean BMW startup screen, or in some configurations, set a custom image. If you bought a used F30 and still see the dealer’s name every time you start the car, this is the fix.

Navigation Disclaimer Skip

Every time you start the car, the navigation system displays a “do not operate while driving” disclaimer that requires a button press to dismiss. BimmerCode can code the system to skip this screen automatically, taking you directly to the navigation map on startup. It saves a tap every single time you start the car — minor on any individual drive, but adding up significantly over months of ownership.

Battery Charge Level Display

The F30’s instrument cluster can display battery voltage and charge status on one of its screens. This is useful for monitoring battery health without connecting a separate tool, especially on cars that sit for extended periods or have aftermarket electronics drawing standby current. If your F30 has an EfficientDynamics display or similar energy monitor, this coding can surface additional battery data that isn’t shown in the factory configuration.

Dyno Mode

Dyno Mode is a coding specifically for rear-wheel drive F30 models that removes the traction control intervention during a standing start, allowing the driven wheels to operate without electronic interference. This is used in controlled settings like a dynamometer run where traction control would otherwise prevent accurate power readings. It is not a street driving mode — use responsibly and only in the appropriate environment. On AWD xDrive models, this coding behaves differently and may not produce the same effect.

Performance and Driving Codings

Performance codings affect how the car drives — from how it remembers your mode preferences to whether the exhaust valve stays open. These are the codings that change the feel of the car rather than just the convenience features. Some are universally applicable; others depend on the specific engine and options your F30 was built with.

Sport Mode Memory

By default, the F30 reverts to Comfort mode every time you restart the car. If you prefer Sport mode as your daily setting — firmer suspension response, sharper steering, more aggressive throttle mapping — you have to manually select it every single drive. Sport Mode Memory coding changes this behaviour so the car remembers the drive mode you were in when you last turned it off and resumes that mode on restart. Start in Sport, turn it off, restart, still in Sport. Straightforward, and surprising that it isn’t factory default for drivers who want it.

Launch Control Enable

Launch Control — BMW’s software-managed standing start system that holds RPM and coordinates clutch release for maximum acceleration — is present in the hardware of the 335i and 435i with the dual-clutch or automatic transmission but is not activated in all market variants. On cars where Launch Control hardware is present but the software gate is closed, BimmerCode can open it. This gives you the factory Launch Control experience, including the RPM hold and the coordinated clutch management, without paying dealer rates for the option to be added.

Steering Weight

The electric power steering assist on the F30 has adjustable weight parameters in Comfort mode. If you find Comfort mode too light and Sport mode too heavy, BimmerCode lets you set an intermediate steering weight in Comfort that sits closer to what you want. This is written to the steering module and changes how much assist the system provides at low and medium speeds. The change is noticeable immediately and can be reversed just as quickly if you want to return to factory.

Exhaust Flap

For F30/F32 owners with the BMW M Performance exhaust or compatible aftermarket catback systems that include a valve, BimmerCode can change when the exhaust valve opens. Factory default is usually Sport mode only — the valve opens for more volume and crackle when you’re in Sport, and closes in Comfort and Eco Pro for a quieter tone. You can code it to always open regardless of drive mode, giving you the Sport exhaust character all the time, or to only open above a certain RPM threshold. A popular mod for the 335i and M Performance exhaust combination.

Throttle Response

The throttle mapping in Comfort mode can be sharpened to feel closer to Sport mode without the other Sport mode characteristics (firmer steering, suspension changes). This is done by adjusting the drive pedal characteristic curve in the DME (Digital Motor Electronics). If you want more immediate throttle response in everyday driving but don’t want Sport mode’s full package, this coding lets you split the difference. The change is noticeable but subtle — more immediacy in the first 20% of pedal travel.

M Sport Differential

On F30 335i and 340i models equipped with the optional M Sport differential (active limited-slip differential), BimmerCode provides access to the lock engagement thresholds — how aggressively the differential locks under power and under lift-off. The factory settings are calibrated for a balance of comfort and performance. Owners who primarily track their car or prefer a more aggressive rear-end response can tighten these thresholds. This coding is only applicable to cars with the M Sport differential option; standard open differentials are not affected.

Safety and Driver Aid Codings

Driver assistance features on the F30 are also accessible via BimmerCode, though these codings are typically about tuning sensitivity and thresholds rather than enabling or disabling safety systems entirely. These adjustments let you adapt the driver aids to your driving style rather than accepting BMW’s factory calibration.

Lane Departure Warning Sensitivity

The Lane Departure Warning system can be adjusted for how aggressively it responds to lane position. Some drivers find the factory calibration triggers too frequently — particularly on highways with worn lane markings, in construction zones, or when the camera misreads the edge of a road. Reducing sensitivity means the system only activates when you’ve significantly crossed a lane marker, reducing false positives. Conversely, if you want earlier warnings, you can tighten the sensitivity. This is one of the most useful driver-aid adjustments for reducing the system’s annoyance factor without turning it off entirely.

Speed Camera Alerts

Speed camera warning functionality can be enabled through BimmerCode on F30s with navigation equipped. This activates map-based speed camera location data on the iDrive, providing visual and audio alerts as you approach known fixed camera locations. Availability depends on your region and your navigation map database. In Canada, this functionality works where camera locations are included in the navigation map data. Note that the accuracy of alerts depends on the map database being current.

PDC Sensitivity

The Parking Distance Control sensors — front, rear, or both — have an adjustable sensitivity threshold that determines how close to an object you need to be before they begin warning. If you find the sensors start beeping from too far away in tight parking situations, you can reduce the starting distance. If you want more warning lead time, you can increase it. The PDC module stores this as a calibration value and BimmerCode writes directly to the module.

Approach Warning Distance

Separate from the main PDC sensitivity, the approach warning distance specifically controls the threshold at which the PDC system escalates from its standard tone to the urgent close-proximity warning. Adjusting this gives you finer control over when the final warning stage triggers — useful for drivers who park in very tight spaces regularly and want the PDC to continue providing graduated feedback rather than jumping to the urgent alert tone too early.

Important Safety Notes Before You Code

BimmerCode is a powerful tool, and the vast majority of the codings listed in this guide are fully reversible. Before you change anything, it’s worth understanding a few important facts about how the process works and what to expect.

All coding is reversible. BimmerCode shows you the current value of every setting before you change it. You can manually note the original value, or use BimmerCode’s backup/export function to save your entire module’s current settings to a file. Before making any changes — especially on a module you haven’t worked with before — export the current settings. If something behaves unexpectedly after coding, you can restore from backup or manually re-enter the original value. Nothing you do with BimmerCode is permanent unless you want it to be.

Never code while driving. Always have the car stationary in a safe location. Accessory mode (ignition on, engine off) is usually sufficient for most codings. For engine-related modules like the DME or transmission, have the engine running but the car in Park. The coding write process takes only a few seconds per setting, but during that window the module is in a write state and should not be interrupted.

Feature availability varies by build spec and model year. Not every coding listed here will appear for every F30. BimmerCode includes an iLevelFinder tool that reads your car’s VIN and build data and shows exactly which codings are available for your specific vehicle. If a coding you expected to see isn’t appearing, it either isn’t available for your trim/build date, or your car wasn’t optioned with the hardware that the software coding activates. The iLevelFinder removes the guesswork.

On warranties: BMW dealerships do not routinely scan for coding changes during service visits. In the vast majority of warranty claims, the service technician is looking for fault codes and symptoms related to the actual problem — not reviewing every module’s coding values. That said, if your warranty claim is directly related to something you coded (for example, claiming a seatbelt issue on a car where you disabled the seatbelt chime), reversing that specific coding before a service visit is straightforward and advisable. BimmerCode makes it quick.

Conclusion: Your F30 Has More to Give

The BMW F30 and F32 platform is one of the most coding-friendly BMWs ever built. The hardware inside your car supports far more features than BMW activates from the factory — mirror auto-fold, comfort opening and closing, DRL adjustments, Sport Mode memory, exhaust control, and dozens more. BimmerCode puts all of that within reach for the cost of an app and an afternoon in your driveway.

The only thing standing between you and all of these codings is a compatible OBD2 adapter. To use BimmerCode on iPhone or Android, you need a Bluetooth 4.0 BLE adapter. We stock the Vgate vLinker BM+ — the only adapter with BimmerCode explicitly in its product name. It’s fully certified for BimmerCode, rated 4.9 stars, priced at C$79.99, and ships to Canada. Whether you’re on iPhone or Android, it’s the adapter we recommend without reservation.

We’re publishing model-specific BimmerCode guides for the G20 3 Series, E90 3 Series, F10 5 Series, and G30 5 Series shortly. This F30 guide will be updated as BimmerCode adds new features or expands coding options for the platform. Bookmark it and check back — we maintain our guides as the ecosystem evolves.

Shopping Cart

Discover more from Alpina Motorsports

Subscribe now to keep reading and get access to the full archive.

Continue reading