The Xiaomi Mi Stick 4K

I recently bought a Xiaomi Mi Stick 4K to bring along on vacation and as a secondary Android TV device, and this is a short review of how it fared so far.

Which, as usual, is quite late as I’ve been enmeshed in a number of Real LifeTM stuff that completely drained my will to write–so it’s only natural that I would actually only have the time to put this together while re-surfacing after a sick day.

Why

For a few years now I’ve taken a Chromecast with us whenever we go on vacation so we can watch YouTube “properly” without relying on hotel/AirBnB equipment, and I wanted to replace it with a small, cheap (and, preferably, fast) Android TV device for our next outing–which is usually Summer break, but Easter provided an earlier test window.

Also, things have evolved in other ways–we’ve had an NVIDIA SHIELD Pro in our living room and the media streaming experience on it has been great (sometimes even better than on the Apple TV), since Android TV has apps for all the streaming services we use, and the UX is actually quite good.

Office Use

I had it plugged in to one of my monitor’s HDMI input for over a month, where it worked great for watching TV during lunch breaks–this was completely unplanned, but with the keeping tabs on the news became important, so one of the first things I did was getting the Vodafone Portugal TV app to work on it.

Which it did without any significant issues (well, the app itself has a lot of issues, but at least it works enough times that I can avoid using a set-top-box1).

Overall, performance is OK and it rendered 4K video just fine, although it is definitely not as smooth and responsive as the NVIDIA SHIELD. But you should keep in mind that it costs about half as much as the smaller SHIELD, so you literally get what you pay for.

Game Streaming

Since I got it the weekend after I got Control running one of the first things I did was try to play on , which was not a success since the video would freeze even as audio carried on unabated. Clearly an app bug.

Game Pass worked (I side-loaded the 32-bit APK), so I was able to limp through and play some Tunic on lunch breaks without any significant issues–it was not as smooth as on my SHIELD’s wired connection, but completely playable with a Bluetooth controller.

Things I liked

  • It runs (mostly) vanilla Android 11 (that was actually one of the main reasons I got it–that and Google’s equivalent being sold out here).
  • It’s still small enough to carry anywhere (although it is much larger than modern Chromecasts).
  • Worked off an old BRAVIA TV set’s USB port without any hassles.
  • Does actual 4K streaming with good quality on all the major streaming apps I tried.
  • I plugged it in to my 4K and 1080p video capture dongles and it worked fine with both.

Things I didn’t like

  • The remote is just plain bad. The buttons are hard and very clicky, to the extent where navigating complex UIs felt like playing castanets. It also lacks enough buttons to be truly useful. (See below).
  • I found myself missing the SHIELD’s AI Upscaling mode, which makes low quality streams look much nicer.

Things that just plain didn’t work

  • Xiaomi’s own PatchWall media app gave me a blank display 100% of the time. I have no idea why, but it was just a waste of space, as well as a complete waste of a dedicated button.
  • Right now, I can’t get Button Mapper to intercept any of the buttons for PatchWall, Netflix or Amazon Prime, which is annoying since you can’t double tap the Android TV home button to get a list of running apps like other Android TV devices.
  • Network ADB is locked down, which means I can’t control it remotely (I will have to write a little Android app to have it listen to MQTT commands).
  • It had real trouble with a slow (NOS) 4G connection, to the extent where it constantly complained there was no Internet connectivity and locked out apps.

All in all, I’d give it a 7/10 because when it works, it does work quite well, but it feels like it’s a bit hampered by Xiaomi’s design. I’d give it an 8 if they fixed the remote.


  1. Seriously, WIT Software, don’t you guys do UX testing? Why can’t the app go back to the latest channel I was watching instead of forcing me through its splash screen? ↩︎