How to enable BMW F1 hidden features with BimmerCode

Here I have something want to share with you guys, about BMW hidden features esp. X1 F48 coding at the lowest price. 20 usd (a vgate icar 2 adapter) helps me with all coding.

Enabling hidden features at the consumer level is mainly meant to improve Comfort / Convenience and maybe, to activate a few other cool stuff. It is important that the engine / drivetrain parameters are left untouched unless one is trained to do so. It is prudence to limit Coding only to activate the important features that make our life easy on the day to day basis and not to keep meddling with it on a regular basis. As we are just changing the status of the stock features, the changes made are only over-written in the registry. Coding as we do with the BimmerCode does not add lines to the programme and therefore, the checksum or the coding registration should not change. This is similar to selecting options from the iDrive Infotainment system, except that they are not directly accessible.

Hardware remains the same without any changes; it is only that their default status change and that anyway can be altered by the user ON-THE-GO. There is no way this can have any adverse effect on the car as a whole and therefore, denying warranty is not justifiable. However, preserving a copy of the stock setup file can prove invaluable at times.



The App allows coding of BMW cars and has 2 stages; the first being the simple / straight forward one, which covers the most common features, that too in English. This is sufficient for most purpose. The second being an advanced one, needs in-depth knowledge and unfortunately is in German language; therefore, best avoided unless one can understand German language and knows exactly what he /she is up to. The app saves a copy of the log file every time it scans. This can be exported to an iMac through iTunes for later use.

It is a good practice to check error logs through BimmerLink before attempting any changes. This can serve as a reference for future too. It is important to keep the slate clean after every session and therefore, investing on both BimmerCode and BimmerLink makes sense; BimmerCode is used to make changes to the default status of the features and BimmerLink is used to check / clear errors if any.

It is good to turn-on Airplane mode and enable only Wi-Fi connection before starting the activity. This will avoid any calls / messages interrupting the activity itself which can stall communication.

It is recommended to keep the Engine off with the ignition turned-on during the activity. As the modules are reset after applying the changes to the registry, the engine will be turned off. This can create a tense situation un-necessarily.

As the modules are reset during the process, there can be communication drop between modules which can throw-up errors. These errors are automatically erased during the end stages of coding. However, after the coding activity, it is good to manually check for errors through BimmerLink and erase them if needed.

It is best to code features pertaining to one module at a time and verify the results before attempting another module. Some modules which are a combination of analog and digital components will be slower in communication. Therefore, for modules such as Infotainment system, Speedo-Combo, etc. slow communication needs to be selected under settings.

App can be downloaded for free and verified in the Demo mode before purchasing / unlocking the same for coding. Quick start guide and FAQ including the list of supported cars and the options available are all available within the app too.

Make sure that the Mobile battery is fully charged and plan ahead to complete the coding activity within 15-20 minutes so that the car battery does not drain. It is a good practice to keep all accessories switched off during the activity.







A must have for reading and clearing errors. I would not recommend coding without having this app, as it is very important to clear errors if any, after the activity. This will also help as a future reference. The app also has features to display sensor values, control exhaust flap, along with the provision to have required parameters to be displayed as a dashboard. I am yet to check these features as everything is in German; will update as and when I figure out something!



Vgate iCar2 Wifi OBD2 adapter:

It was available with me came in handy. I downloaded both BimmerCode and BimmerLink apps from Apple Store for approximately Rs.2100 each. Wi-Fi dongle worked fine with communication speed similar to that I have experienced with the VCDS.

Vgate iCar2 Wifi OBD2 adapter:

BimmerCode & BimmerLink:

But honestly, I miss VCDS; wish Ross-Tech had their product covered for BMW too.


Features that I could successfully code:

1. Auto Start/Stop system OFF by default
2. Auto fold/unfold ORVM with lock/unlock

Indian variant X1 F48 does not have the hardware pertaining to the front passenger seat belt reminder!! Therefore this non-existing feature can-not be activated!! Crap!!

Of-late, BMW has hard-coded lane change indicator cycle selector. Therefore this can-not be accessed for coding. Choice through Infotainment system is only between 1 and 3 cycles.

Auto Handbrake activation is not possible through BimmerCode. Have to try my luck elsewhere. I read somewhere on the net that this is possible through E-Sys.

I will be glad to support fellow BHPians in Bangalore to activate these features if they need / interested. It will be nice if someone has Carly or the E-Sys in Bangalore, so that they can be compared. Maybe, they can activate a couple of things that the BimmerCode couldn’t.

Thanks for reading!