I Tinkered With My BMW 128i’s Laptop Coding and Did not Break It

A couple of months again, I wrote about how I downloaded an app and purchased the suitable Bluetooth OBD2 dongle to do customized coding to my BMW 128i. This was uncharted territory for me in vehicle possession. Up till buying the 1er, all I used to be aware of was the uncustomizable econobox life. However this degree of coding was solely the tip of the iceberg of what is attainable with a contemporary computing system and entry to a contemporary BMW’s DME (which is the model’s phrase for ECU). With the proper dealer-service-department-level software program, you possibly can configure a lot extra.

After looking Google, I downloaded the suitable applications to clear fault codes through laptop computer, run diagnostics, and recode a complete mess of options, most notably turning off sure nannies that may affect on-track efficiency. Most of that is unreachable through app-based coding, which is why I’ve dubbed this “deep coding.” This is how I, a simpleton with a brief mood for expertise, discovered that it isn’t that onerous in any respect to do.

Disclaimer: It is a abstract of my expertise, not a step-by-step how-to. In case you’re involved in doing your personal deep coding, I extremely suggest studying by way of all the hyperlinked assets earlier than trying. Your mileage might differ, I am a schlub, not a tech assist skilled, method at your personal danger, the improper line of edited code can do quite a lot of injury, and so forth.

At First It Was a Non-Starter

Perusing round E8X and E9X BMW boards, I occurred upon this website that sells all of the software program you want loaded onto a handy SSD arduous drive. Simply pop it right into a appropriate laptop, and voila, hook up a twine and go nuts. Subsequent, I sourced the twine from Amazon after studying up on this blog about annoying digital BMW nannies, bought an affordable Home windows-compatible laptop computer on eBay, and combined all of it collectively. Lastly, to make sure the battery did not die whereas coding, which may very well be catastrophic for the DME, I purchased a battery tender.

After I hooked every little thing up and did a fast dry run, I discovered that the pc and twine weren’t speaking to one another. So, I did every little thing essential to have the proper {hardware} driver, did some troubleshooting with Google, and tried as soon as extra. Once more, nothing. 

After fiddling round for an excellent period of time, I discovered this easy guide by YouTuber Evan Goyuk and realized that there’s a far simpler plan of assault. I discussed that I am a simpleton relating to this type of stuff, so I made a decision to ditch my technique with a budget laptop, cable, and arduous drive stuffed with software program. I wasn’t out a lot cash, and certainly I might flip all of it on Craigslist to make some coin again.

I switched to my newer laptop computer, adopted Goyuk’s technique of downloading all of the necessary software from Google Docs and putting in it accurately, purchased the cable he recommends, and at last set the cable up correctly in Home windows System Supervisor. After some frustration with the earlier technique, this new one made the pc, cable, and DME all lastly speak to one another.

We’re in Enterprise

It was a cheer-worthy expertise seeing my laptop’s display screen say that the battery and ignition have been on. This meant that the connection was made and that I might get to work. I first began trying round in INPA, which is a program for studying and clearing fault codes. Quite a lot of it’s in German—I even have a level in Bavarian Motor Works’ native tongue however do not actually use it anymore, so it was enjoyable to decipher what totally different choices and messages meant.

The factor about this model of INPA is it does not listing E82 as an out there chassis code. That is OK, because the boards say every little thing an individual wants can be underneath E87, which is the European 1 Collection hatchback of the identical classic as my 128i. I used to be in a position to verify for fault codes, clear any (none have been there), learn up on the totally different laptop {hardware} that my 1 Collection possesses, check sure capabilities, and extra.

I can do most of this through two apps on my telephone, but it surely’s cool to have the choice through laptop-based supplier software program. Per Goyuk’s instructions and different instructables on YouTube, INPA is lots helpful simply as a technique to make sure you’ve obtained a stable connection between the DME and your laptop.

Hack the Planet

With a sick ’90s film soundtrack queued up, it was time to crack my knuckles and hack—er, code deeper. I learn a number of totally different assets for doing all this, and whereas all of the steps I took mirrored their steering, I nonetheless got here up with a type of best-of to code precisely what I needed to do.

The tactic for pulling a giant mess of code is fairly easy: open up NCS Skilled, choose the suitable profile (I used Revtor’s NCS Skilled Profile), have it learn the suitable ECU, comply with all the steps, and have it learn and create a hint file. I downloaded a hint file of the DSC ECU as a result of I needed to do away with some lame track-unfriendly nannies. It then saves to a folder the place the hint file will be accessed to change both in NCS Dummy or immediately in WordPad.

Forgive my ignorance, but it surely’s wild that doing essential automotive-computer-altering coding will be completed in good ol’ original WordPad. Sincere query: Are there different types of programming that may be completed from the consolation of this modest piece of OG software program?

Up subsequent, I edited the hint file directly in WordPad. This concerned scrolling by way of and altering the textual content on sure listed capabilities. I initially discovered the stuff I meant to show off here, nonetheless they’re written otherwise within the E82—this thread gave me the suitable names for Engine Energy Discount to Stop Brake Disc Overheating, Brake Fading Compensation (pointless for good pads and fluid), and Prepared Alert Brake. Disabling them was straightforward: change “wert_01” on every of them to “wert_00.”

128i observe lovers appear to all agree that these both inhibit efficiency or give the 128i awkward pedal really feel on observe, so out the window (or, Home windows 11) they go. Earlier than coding them out, I did not have any main problem with how the brake pedal felt, so it’s going to be attention-grabbing to see what it seems like now. I am going to code out the digital differential once I ultimately improve to an actual helical limited-slip differential.

Up subsequent, I merely saved-as and adjusted the identify of the file and its kind, adopted extra steps for coding all of it again into the DME, and Bob’s your uncle—coding was profitable. I’ve but to take the 1er for a spirited check drive or rip some laps on my favourite native tracks, however I positive am excited to take action. This could all guarantee I’ve obtained most efficiency out there always. Effectively, in addition to the inevitable warmth soak.


I obtained such a robust feeling of accomplishment after doing all this and never destroying the DME within the course of. Or, one way or the other by chance altering a setting and having the BMW Skilled stereo solely play tacky German pop music of yore and never have the ability to flip it off. You by no means know. 

This deep type of coding is a bit menacing, however don’t let it intimidate you. I’m proof that so long as you do your analysis, learn to use the varied applications, learn rigorously, and comply with the steps, it is actually not that unhealthy. I am completely horrible with expertise, and though I most likely took longer to determine it out than a golden retriever would’ve, now that I’ve completed it, I am assured in having the ability to make extra modifications or translate this data into one other future automotive, like an E90 M3, F87 M2, or others. I feel the one draw back is that I am now extra motivated than ever to purchase an actual limited-slip differential and code out the blasphemous e-diff, which my pockets definitely is not excited for.

It is enjoyable stuff like this that retains us lovers motivated to maintain wrenching, study new strategies and applied sciences, hold doing that additional little bit of studying to up our DIY competencies, avoid wasting scratch, and blabber about it with our buddies in our collective love of tuning.