Rooting the Mi Box (MDZ-16-AB)

by OrionGrant

This is basically a megathread of any bits I can find on rooting the device, most of this comes from an XDA thread but I'll keep updating as and when.

I'm not going to teach you how to use adb, so this guide simply assumes you are already able. If you're not I wouldn't recommend this as at all.

Also of yet, I haven't managed to get SuperSU working so your favorite root apps WILL NOT WORK. I simply used this to change some files so my wireless 360 pad would work properly, if I get SuperSU working I will update this post.

  1. Download this firmware file , I'm not sure why this needs to be done but it does. Unzip it and copy the contents to a FAT32 formatted drive.

  2. Enable developer mode. This can be done in your settings on the Mi Box, find "About" and then click on "build" 7 times to enable the developer menu. It will confirm you've done this with an on-screen toast.

  3. Enable adb. This can be done by going back into settings and clicking the newly-created "Developer options" and then enabling "USB Debugging".

  4. Grab (or make) a USB MALE TO MALE cable to hook up the Mi Box usb to your computer.

  5. Run adb devices on your computer to confirm it's all good, it should be listed. If not, wait for the Mi Box to display a dialogue confirming you want to allow adb on this computer this can take a couple of moments so don't cry yet.

  6. Once adb is sorted you need to run "adb reboot recovery" which will bring you to the recovery screen.

  7. Unhook the cable and plug in your usb, click INSTALL FROM EXT then FROM UDISK and select the zip file then just let the update do it's thing. It will take a while so go and pop the kettle on.

  8. It's done! Reboot and let's get started.

  9. Once we're back, see if the box is still under adb devices. If not, you know what to do.

  10. Run "adb root" then "adb disable-verity" and then "adb reboot".

  11. Once it comes back on, YOU ARE ROOTED! Run Adb root and then adb remount to start making edits. (thanks /u/evilp0tat0 for clarification!)

Bonus: SuperSU is now go , but just be really careful. Bad things could happen! (thanks /u/evilp0tat0)

TLDR; Adb > Cable > Update > Run some commands > ??? > Profit

Most of this is taken from here but it's pretty brief and messy... If I get SuperSU working I will post back here. If anybody knows how to manually push su to 6.0.1 via adb then please help!

evilp0tat0

I wrote the original guide on XDA. To answer your question about why that firmware needs to be installed -- the stock firmware is not a userdebug build, but that firmware is. Userdebug builds allow the "adb root" (run root shell) and "adb disable-verity" (make changes to system partion) commands.

Installing SuperSU is possible, but not advised. Selinux is enforcing on boot and there's a context issue, which results in a hung boot. Since the bootloader is locked, and xiaomi not providing unlock images for this device, the selinux context issue can't be fixed.

Edit-- in addition to step 11-- "adb remount" can be used after "adb root" to unlock system partion

ramblin-man888

followed these instructions to a tee.

BOOTLOOP

repeated, following steps exactly, again

BOOTLOOP

khonakr

Question: Is the firmware file the stock Xiaomi Android TV firmware?

In other words, how do I revert back to stock Xiaomi Android TV firmware for updates / something going wrong?

Manacube

what apps do you use on the mi box that require root?

srzdesigns

So from my understanding if the MDZ-16-AB currently doesn't have a permanent root without leaving it in usb debug mode. Trying to get openvpn to run with out root and its not working.

Magendanz

If people are manually updating OTA system updates while retaining root, can we get an update of the firmware file with a more current system image?

noapologies420

I have one and it wont boot. it loads to the logo then it stalls there for about 10 min then i can see the sub menu of reboot and other options but i cant seem to get anything to work. can anyone hep me.

dre10g

I followed this guide perfectly.. everything went fine until the reboot. It's stuck at the black screen with the faint mi logo inn the middle and the mi, dolby, dts and hdmi logos at the bottom.

I tried to reboot into recovery by unplugging the power, holding back and power on my remote, and plugging the power back in but still getting the same black screen.

After a while, I finally got in, but it was hanging on the home screen, so I did an adb reboot recovery, and flashed it again, as well as wiping/erasing first. It then rebooted to the logo screen again for a bout 10 seconds, then black screen. After about 20 retries of rebooting it finally got to the android animation, then the "press button on the remote" screen, then to the "select language" screen. But then it just hangs on there. The remote doesn't do anything from here on and the screen stays on the "language select". Rebooted again and now it just sits on the black screen again. Can't adb into it anymore as when i did the wipe before the flash, adb usb settings/wifi settings are erased.

Any help would be greatly appreciated.

chanansh

I want to use the MiBox with normal android, NOT androidTV so I can install any app (e.g. I cannot install chrome browser or other applications). Will rooting enable this?

chanansh

I have bought MDZ-16-AB but I hate the androidTV limitations. I cannot install apps I use to. It also doesn't support surfing normally with Chrome/Firefox etc. How can I convert it into a normal Android? I have seen root instructions here but I am not sure if this will do.

DanielLj

Couldn't get past bootloop trying to install SU, gave up :<