I Customized My BMW 128i’s Hidden Convenience Settings Via Its OBDII Port

This new-to-me form of customization is unlike anything I’ve ever messed with before.

byPeter Nelson| PUBLISHED Apr 26, 2022 4:15 PM
I Customized My BMW 128i’s Hidden Convenience Settings Via Its OBDII Port
Peter Nelson
Share

After owning a three-car succession of modestly appointed subcompacts, I've finally upgraded to some neat technological features in my beloved 2011 BMW 128i. Even though I've driven many new cars over the past few years, this was the first time that I used technology beyond what the manufacturer splays out on the dash for owners to do themselves. I used the BimmerCode app and accompanying OBD II Bluetooth adapter to customize various settings that can't be accessed without it.

My previous cars have all been fairly analog. My old Mk2 Volkswagen Jetta was made before the Berlin Wall fell, so its tech features are quite basic by today's standards. The 2003 Protege ES I owned was modestly appointed for its day, and my Mazda 2 is the Jetta's spiritual successor. Its only real technological showpieces over the Vee-Dub are airbags, an anti-lock braking system, and more advanced fuel injection with OBD II. First experiencing new and interesting tech with my BMW 128i, on the other hand, is probably how people felt when they first saw Hackers on the big screen back in 1995. "Woh, you can use a computer to do that?" 

Plugged in, ready to party.

I originally found out about this customization app by mistake. I'd heard from my 1 Series’ previous owner and read on various forums that its electronic control unit can be accessed via software to code out various annoyances. It allows me to tinker with things such as keeping an exhaust baffle open for a better tone and wiping its rear e-diff feature in lieu of swapping in a mechanical limited-slip differential. Oh, and I could also delete some joy-killing line of code that cuts power when the car thinks you're overheating the brakes, but it can't confirm this via any sensors. When I googled "code bmw" like the simpleton I am, one of the top results that caught my eye was this app.

Imagine if opening-weekend Hackers viewers were told that someday you could do all of the following with a phone? The BimmerCode smartphone app gives you the ability to access various customization settings inside the 1 Series and many other generations and models in the Bavarian automaker's portfolio. It does this by accessing the Digital Motor Electronics (DME, or what everyone else calls the ECU or ECM) via the OBD II port. It gives you a set menu of coding options that allow the user to turn them on or off, tune them, and more. 

To do all of this, I threw down my own hard-earned scratch on BimmerCode's recommended OBDLinkCX Bluetooth adapter, priced at $79.95. That's not exactly a small piece of green, but I figured I might be able to use it for other vehicles, and possibly apps, in the future.

The BimmerCode app is quite easy to use. Open it up, select the adapter you're using, connect to it through Bluetooth, select what car you're behind the wheel of, and voila, you have some neat stuff to play around with. As a precaution, it's a good idea to keep the car off with the ignition on (in my case, hitting the start/stop button but not with the clutch engaged) and make sure that your phone has plenty of battery life. If one or the other dies while code is being written, it could spell disaster for the DME. I actually started out by messing around with stuff while the car was running, but please note that you should not do this.

There are more advanced settings to play with, which I held off on for the time being. They're all in German, and I actually speak the language, but I want to research them further before changing stuff around. Plus, apparently messing around without proper guidance can lead to needing a reflash to fix the DME, which I certainly don't want to do, as it generally costs an hour or more of a BMW dealership's time.

The settings that I wanted to change were lighting, the seat belt chime, and window opening options.

I don't like having the interior lights come on and stay on for a prolonged period of time when I unlock the car, if at all, so I changed them to only briefly light up. I also wear my seat belt compulsively and try to avoid BMW's annoying warning chime as much as possible, so I turned the driver's side seat belt reminder off. 

I also programmed a neat feature that has the windows roll down if you hold the unlock button on the fob or roll up if you hold the lock button on the fob. It's so annoying to forget to roll up the windows after parking, and having to walk back to the car, open it up, and do so. Similarly, why not remotely open them up to cool off the interior a tad?

As for the rest of the settings, I perused around and got an idea of what I could alter in the future if I wanted to. It's cool to have options and keep them in mind if I want to change things up or alter my process of hopping in or out of the car. I think I'll play around with having the doors lock at certain speeds after getting underway and unlocking when I turn the ignition off.

This ability to customize my car makes the purchase of the OBDLinkCX adapter and the $40 upgrade to BimmerCode Pro worth it, but only just. In the interest of science and writing this blog, absolutely, but if someone's content with what a BMW, Mini, or A90 Toyota Supra does from the factory, it’s an avoidable expense.

Though, it's definitely cool to enter this new-to-me world of customization after driving basic subcompacts since I got my drivers license back in the early aughts. Other makes and models offer this kind of customization, too, so if you're inclined to do similar stuff to your ride, definitely surf the web for options. I know Carly is a popular app that caters to multiple makes.

All of this was the scrumptious amuse-bouche to what my ultimate goal is: using more advanced BMW software via laptop that digs deeper and customizes much more significant settings, such as killing the dreaded e-diff to make way for a helical limited-slip differential and scrubbing other fun-killing features from the factory. I'm happy to now have experience in modest, app-based customization, as it's a great reference for when I dig deeper.