[Xiaomi Mi 4C] nixnix33:
Hi guys! I have recently unlocked my Mi 4c bootlader. And it just had to be without the famous unlocking code from Xiaomi. I mean even though I got the SMS approval from Xiaomi, I could even then not unlock it.

Even if I cannot be 100 % sure as to what the correct procedure was because I tried so many steps over and over again trying to find out the correct driver and software to unlock this f***ing bootloader I'm gonna share all that I've done to unlock it.

Over the week it turned out I had no nerves left to unlock the phone the legitimate way. I received the approval sms from xiaomi on 25 Feb and more than a week later I still always ended up with the messages Can't get Info (probably the Kedacom driver problem) or Couldn't verify: current account is differen't from the account info on the device. In between I had even updated my ROM to the lastest chinese developer ROM (can be found here) so to have all the developer options available and to bind MiAccount and my locked phone. I guess the reason that prevented me from legitimate unlocking of bootloader was behind the infamous error 86012 (I got it when trying to bind 'account and device' (Settings---> Additional settings---> Developer option) and I see it as a really big Xiaomi failure. Other options as find my device an so on all worked. Tried many times.

So then I followed this guide to unlock my Mi4c phone the other way. It wasn't easy because I'm no tech geek. The reason: I could not easily downgrade via android updater (as here advised for example) because I was already on a higher ROM version 7.2.23 (MIUI8 dowloaded here and installed it via updater: look at Step 3 here) so to have it unlocked the legitimate way – and as I said it just didn't work out. So now I could not downgrade via android updater and I could not flash the 6.1.7 image via MiFlash either. I was stuck at step 3 of this very guide – I could enter fastboot mode and edl mode, but could not connect the phone and MiFlash. I thought there was no way out because of the bloody chinese developer ROM version. But there was.

Well, the first thing you have to pay attention to is drivers (this is true for unlocking with MiUnlock and for flashing device with MiFlash!)

Here I have to admit I really don't know which ones eventually did the trick. I can only say that I installed Mi PC Suite and installed the QDLoader+HS-USB+Driver_64bit_Setup as well. Downloaded and installed the MiFlashUnlock_1.1.1111.1_en (from here: it includes a folder with this qdloader driver) which I installed over the new Windows Kedacom driver that make problems when trying to unlock the phone). I found a guide that requires to roll back the Kedacom driver but mine was greyed out so that was not possible. As I'm using windows 10 I had to pay special attention to this issue. When I found a folder named driver in the MiFlashUnlock_1.1.1111.1_en I manually updated the win10 driver for my Mi4c phone.

I believe this finally got me going further. Anyways: you can always see what is happening with your phone in the Device manager. The phone just pops up here and there, and that depends on which drivers you are running for it and the mode of the phone as well (when in edl mode is not the same as in android nor the same as fastboot mode). So the status seems to change if you have the phone connected and up in android or booted in fastboot for example. I will give you some screenshots for which I cannot reproduce the exact driver and mode-of-the-phone combination but nevertheless might be of some use to you. I have attached some screenshots of my device manager in different modes (combinations of phone modes and installed drivers). The last ones you have to see in order to unlock the phone with unlocker or enter edl mode and flash phone.

Now to easily enter and switch between bootlader (or fastboot) mode and android: because I did it so many times I found the easiest way it is with the help of a program named minimal_adb_fastboot_v1.4.2. When you have it installed there's an icon on your desktop which elevates cmd window every time you click on it. You can then easily run commands from cmd and thus enter different modes on your phone (no need to press combinations power up and vol down buttons). Here are some useful commands:

adb devices (to check whether your phone is connected)

adb reboot bootloader (to enter fastboot mode - you see a fastboot image on the screen of your phone). Once in fastboot mode, you can type commands:

fastboot oem device-info (gives you info on bootloader locked/unlocked status for instance)

fastboot reboot (phone reboots to android)

fastboot oem edl (aka Emergency Download mode – phone enters edl mode with completely black screen and you can connect to it with MiFlash). To exit edl mode you have to hold the power button pressed for 8 secs and phone then boots to android.

As I said I tried to flash this image 6.1.7 with no success and it turns out it's a combination of (possibly) wrong drivers and wrong version of MiFlash. Trying to flash my phone I first dowloaded and used MiFlash 2016.08.30.0 but it did not seem to recognize the USB connected phone in edl mode (refresh button did nothing). Googling this problem I thought at first was due to drivers but I suddenly came across this solution by Santos: only the old MiFlash is working and the new one does not (to have a version 2015.10.28.0, exactly like mine, you should look for a file named MiPhone20151028.exe online). And voila, that really did the trick for me: this old MiFlash suddenly recognized my phone running in edl mode and I was able to succesfully flash the libra_images_6.1.7 (that I had extracted with some difficulties!). Finally, step 8: fastboot oem unlock!

For further flashing and rooting I then installed (you can easily find instructions for flashing twrp recovery online) twrp-3.0.2-0-libra.img (and not twrp-3.0.2-0-libra-aqua-20160612.img which did not work for me although it is stated as the correct twrp img for Mi4C phone).

As already said put the TWRP image file into the Minimal ADB folder (roughly the same place as with img 6.1.7). Then follow these instructions to flash TWRP. Installed UPDATE-SuperSU-v2.79-20161211114519.zip as well so to have root access.

Although I initially did have some problems booting into TWRP (basically the phone booted to MiRecovery instead of TWRP recovery: I guess because of the wrong version of TWRP that I was trying to flash at first). When at last I managed to reboot to TWRP, I flashed CyanogenMod cm-13.1-20161231-TS-libra.zip together with the package banks_dynamic_gapps-6.x.x-20160819.zip that can be found on the Team Superluminal site. At first it gave me Error 7 upon flashing but it seems the reason was I did not wipe the phone beforehand.

On this way I may very well have installed – I had them downloaded anyway, but cannot confirm – all these programs as well:

UniversalAdbDriver.msi

WinDroid Universal Android Toolkit v2.6.exe

ADB.Driver.Installer.v2.0.exe

MiPhone20140509.zip

MiFlash20161222.zip (it is in Chinese or whatever so no use for me)

MiFlashUnlock_1.1.0317.1_en (the version with no drivers within package).

Without the numerous guides on this and numerous other forums the whole thing would not be possible for me. I share this experience here on XDA although I found good advice elsewhere too. Hope it helps someone with problems like mine was!