Xiaomi has an interesting history that I recommend you read up on if you don’t already know it. The company, while known to mostly enthusiasts here in the States, has a huge presence in its homeland China, as well as India and other parts of Southeast Asia. Despite a general decline in size and influence in the past year or two, Xiaomi continues to push the envelope of affordable, feature-packed phones. The Mi line represents the best that the manufacturer has to offer. For 2017, Xiaomi has created the Mi 6, a small phone full of the latest and greatest specs.

As you will see below, the Mi 6 looks like a powerhouse on paper. Unfortunately, the stale, old MIUI 8 software really hamstrings the phone. Not only does it hold the Mi 6 back from being a stellar device, but it doesn’t fit with the phone's overall design and aesthetic. It feels completely outdated.

So here we go on yet another familiar tale.

Specs Display 5.15” IPS LCD; 428 ppi Software Android 7.1.1; MIUI 8 CPU Snapdragon 835 GPU Adreno 540 RAM 6GB Storage 64GB/128GB Cameras Dual 12MP, OIS rear; 8MP front Battery 3,350mAh; Quick Charge 3.0 Connectivity Wi-Fi 802.11a/b/g/n/ac, dual-band; Bluetooth 5.0; LTE bands 1/3/5/7/8/38/39/40/41 Misc USB Type-C 1.0, fingerprint sensor Measurements 145.2 x 70.5 x 7.5 mm; 168/182 g Colors Ceramic Black, Black, Blue, Silver

The Good Battery life With a massive cell and the MIUI optimizations, the Mi 6 is an absolute champ in terms of battery life. Camera Xiaomi did a pretty good job with the camera for the Mi 6. Coming from the Mi Note 2, the previous flagship, there was a lot of improvement that I saw here. Ergonomics The Mi 6 is just plain comfortable to hold. It’s heavy and dense, but it fits nicely in my hands. And despite it being a glossy, fingerprint magnet, I found that I was able to grip it quite well.

The Not So Good Software MIUI 8 is boring, stale, and in desperate need of a refresh at this point. Despite being updated to a Nougat base (versus Marshmallow on the Mi Note 2), it feels behind — even when compared to what LG and Samsung are doing with their software. It's also missing some Nougat features like bundled notifications and multi-window. Headphone jack I will continue to rail on phones that drop this. In my time with the phone, I came across several instances where I needed the 3.5mm port and didn’t have the USB-C adapter. Leaving this off of the phone was a stupid decision. Bluetooth The Bluetooth performance of the Mi 6 is absolutely awful. Smartwatches repeatedly disconnect (Wear and Gear S3) and headsets/speakers won't pair or lose connection during playback. Fingerprint sensor I have two issues with the fingerprint sensor on the Mi 6. The first is that it is not as accurate as others – it actually refused to read my thumbs initially, likely due to my callouses. The second is that it is set so deep into the front face of the phone that it's difficult to align my thumbs properly. I chose not to use it. Capactive keys Even Samsung has done away with these. It's time for Xiaomi and its ilk to do the same.

Design

I have to give credit where credit is due: the Mi 6 is quite the looker from the back. It is, by far, Xiaomi's nicest-looking device yet with its compact body, subtle curves, and smooth finish. And in keeping with the Mi tradition, Xiaomi left the 6 small this year. Thanks to the way the back glass melds into the stainless steel frame, it’s a super comfortable phone to hold and use. The glossy, reflective back certainly attracts fingerprints and gets nasty pretty quick, though. The Mi 6 can also be a bit slippery at times — it likes to slide off desks, tables, or any other perfectly flat surface.

I received the plain black unit to review, which reminds me of both LG's dark finish on the G6 and Apple's Jet Black color on the more recent iPhones. All of that to say, it looks nice until you touch it. The front of the phone is a plain black face, with only the fingerprint sensor and capacitive keys (when lit up) underneath the 5.15" screen to break it up; you can barely see the front camera, earpiece, and sensors at the top in most circumstances. Along the back, you'll find the dual camera module, flash, and the Xiaomi logo (and pertinent information) near the bottom. Over on the right side of the shiny frame is the volume rocker, which sits right above the power button — a configuration that I've never been fond of. Neither of those feels good, with the rocker feeling sticky and the power button like there isn't enough travel distance to even click (they're also hard to see). On the other end is naught but the SIM tray. Lastly, the USB-C port and speaker sit along the bottom.

In that mini tour of the Mi 6, you will likely have noticed that I failed to mention the location of the 3.5mm headphone jack. Well, Xiaomi decided that it would be best to leave that off of this year's Mi phone. The reason is anyone's guess, though I have my own (inconclusive) hypothesis which I will not share here. Regardless, this is the first decision made here that is a real downer. In my time with the Mi 6, I can recall multiple instances when I wanted to use a 3.5mm cable, but I did not have the included USB-C adapter. Whether or not you agree that it's time for the venerable audio port to be put to rest, a lot of the world is not ready yet. Bluetooth devices/connections are not as readily available or reliable as one might wish.

My final major gripe with the Mi 6 externally is the fingerprint sensor. It's not as quick as something from Google, Huawei, or OnePlus, nor is it nearly as accurate. To put this into perspective, the phone would decline to accept either of my thumbprints at setup. It took a long time to get even one of my thumbs registered. Now, I realize that my hands and fingers are riddled with callouses and scars, which tend to throw off some sensors, but I've never had this much of an issue before. Also, Xiaomi elected to recess the fingerprint reader deep into the bottom bezel, which made setup and actual use of it even more difficult (I have thick fingers). In the end, I told the fingerprint sensor to sod off.

Display

Xiaomi has not made its name with great displays; the last time the company was praised for something screen-related was the Mi Mix. So when I approached the Mi 6 and my notes for writing this section, I did not expect anything wonderful. The best that I can say of the 5.15" 1080p IPS LCD display is that it's adequate. There's nothing to truly complain about, per se, but there is certainly nothing to commend or praise. The Mi 6's screen gets the job done.

I am not bugged by the choice to go with an FHD resolution. At 5.15" diagonally, the pixels are smashed together making for a nice density (428 ppi). The rest of the screen itself is mediocre; it doesn't get as bright as I would like outdoors nor quite dim enough for nighttime use (a problem I have with a lot of LCD displays, even the one on the G6). The colors have a washed out look to them most of the time and the default calibration leans more toward the warmer side, so blues especially suffer. Thus far, the options you're given in the settings do very little to address these issues. I mean, moving the slider toward Cool in the settings helps with some of the blues looking awful.

However, the viewing angles are excellent on the Mi 6, which I would expect for a flagship in 2017. At no point did I see light bleed or any gaps. It's only when your gaze is just barely shy of perfectly parallel do you start seeing some weirdness, and if you're using this phone like that, you have other problems to address. MIUI also comes with an automatic blue light filter for nighttime, if that's your thing (it's one of mine).

Overall, I don't hate the Mi 6's display, but nor do I love it. Like I said, it gets the job done. I am not saying that a phone this size needs a higher resolution — it's plenty crisp as it is — but I think that the backlight is lacking and needs work. The outdoor performance was also pretty pathetic (versus some other phones I've used recently which were plenty usable in the sun).

Audio

Audio performance on the Mi 6 was what I expected. The bottom-firing speaker gets pretty loud with the expected distortion at high volume. Bass is completely lacking — again, as expected. Bluetooth 5.0 makes an appearance in this phone, but I don't have any accessories that could take advantage of the higher bandwidth. Sorry.

Since the phone lacks a 3.5mm jack, I had to use the included USB-C adapter to test sound with wired headphones. I did not come away disappointed (like I have with previous phones). The audio performance on the Mi 6 is good. It will definitely do you well should you choose to use it as your gym media player or whatnot.

Performance and battery life

The Mi 6 is no slouch when it comes to raw performance. The Snapdragon 835 is a powerful SoC, especially when put to proper use. However, in this case, the benchmark numbers are quite impressive, but the overall user experience has felt restrained during my time with the Mi 6. I'll explain what I mean.

Xiaomi, among other Chinese OEMs, is notorious for implementing hyper-aggressive RAM management in its software. So even though there's 6GB in this phone, the OS barely uses 3GB before it starts dumping apps from memory — including third-party launchers like Nova and Action. Even after disabling a lot of the "MIUI optimizations," more than half of the RAM is neglected. There are myriad of problems with MIUI, which I will discuss in its own section below, but this one in particular affects performance. This is what I meant when I said the UX feels restrained — there's a lot of latent power to be had here, but Xiaomi has opted to shackle it. For comparison, I've experienced much more consistent and sometimes better performance on the LG G6 that I'm currently using. Perhaps some patch down the line, or maybe even MIUI 9, will improve the RAM management and the overall feeling of being held back.

But when it's behaving itself, the Mi 6 is blazing fast. Like the OnePlus 5, it lacks the buttery smoothness of the Pixel, but it makes up for that with sheer speed. There is hardly any lag or stutter and animations are very fluid. The Adreno 540 GPU is stellar for gaming, especially at 1080p, and withstood anything I threw at it.

One of Xiaomi's long-time strengths has been battery life. Every Mi phone that I've used in recent years has been a champ when it comes to longevity. With my normal usage, I was able to squeeze about two days out of the Mi 6 with approximately eight hours of screen-on-time (at 50-60% brightness indoors). While its 3,350mAh cell certainly helps, it is well understood that the MIUI tomfoolery aids battery life significantly.

Camera

Hopping on board the dual-camera bandwagon, Xiaomi is really pushing the optics setup on the Mi 6 this year. We have two 12MP sensors here; one is wide-angle and the other is a 'telephoto' lens, allowing you to get a bit closer to your subject. Both of these fit smoothly into the svelte Mi 6 body (i.e. there's no camera bump).

In well-lit conditions, especially outdoors, the Mi 6 takes good pictures. Color reproduction is accurate, the white balance is pretty good in auto mode, and none of my shots came out with exposure issues. Most of Xiaomi's cameras in the last year or two have done well with proper light... as any good camera should. Low-light performance is also decent on the rear cameras — the front one is a different story.

The actual camera UI is fairly simple. Initially, you're presented with the viewfinder and the flash settings, Portrait Mode, and HDR toggle up top (or left). Along the bottom is the shutter button, the camera selector, filters, shooting modes, photographing/recording toggle, camera switcher, and gallery viewer. In order to access the settings, you need to go into the mode selector and tap the gear icon up top. It took me a little while to find it, which was irritating. In that menu, you will find a whole bunch of things to mess with. I recommend disabling the watermark, otherwise you will see "Shot on Mi 6 dual camera" in your photos (you can see some below).

My impression of the Mi 6's camera is that it's a solid shooter. The average consumer will be very pleased with the outdoor performance (if they can see the damn screen) and even grabbing a quick photo at night will likely go better than previous Mi phones. Is it the be-all-end-all of cameras? No, but it sure does a good job, especially in this price bracket.

Software

While the hardware and performance of the Mi 6 are both decently positive, the software is another story. If you will recall, when I reviewed the Mi Note 2 in February, I was not hard on MIUI 8. While the Marshmallow base was not ideal on that phone, the software experience didn't seem too negative. And in comparison to other companies' "skins," MIUI still isn't all that bad. But unlike the black sheep of the past, like TouchWiz and EMUI, MIUI has not changed. At all.

On the Mi 6, the Android version underneath has been updated to Nougat 7.1.1, which is about the best I can say. The notification problems, Bluetooth connectivity reliability (rather, the lack thereof), and power-saving measures are still here and ugly as ever (they showed up on the Mi Note 2 shortly after that review was published). They interfere with usability, sometimes severely, and create far more problems then they "solve." I find that many of the decisions are just stupid, such as not allowing apps to be exempted from the power-saving stuff (e.g. Android Wear, Pushbullet, Tasker); even if you tell the OS to ignore those apps for battery optimization, you will find them back in the "Not Optimized" list after clearing the settings from the recents menu or rebooting.

Like with the Mi Note 2, my Mi 6 review unit defaults to the MIUI 8 global beta weekly builds. While updates do not, in fact, happen every week, they are still frequent enough — and most of the changelogs simply state "Fixed some bugs." Android version bumps are usually slow-coming from Xiaomi, but monthly security patches and such are frequent.

Software design has become very important in recent years. It makes sense, really; who wants to look at an ugly interface several times a day? It's a huge bummer, but MIUI looks and feels quite stale and bland at this point. Even Huawei's EMUI looks fresher and cleaner than ever, but MIUI appears the same now as it did a year ago.

Using the Mi 6 is boring, mostly due to the unoriginal, uninspired software design. This feeling of outdatedness persists through every level of MIUI.

All of the customization options are still here, obviously. One of my favorite little touches is the weather in the notification shade. It's simple and rather unimportant in the grand scheme of things, but it's the little stuff that counts. The header color also changes depending on the time of day and conditions. You can also choose the order of the capacitive keys, whether you want the normal or Samsung (wrong) way. Other staples like Second Space (which allows you to create a second instance of an app for login purposes), App Lock, and the "battery issues analysis" are all present. And yes, the stock launcher still lacks an app drawer.

Notifications remain a sticking point for MIUI. They don't work well at all. Even though it's now based on Nougat, the software won't let you expand notifications in the shade or on the lockscreen, the app icons for each notification continue to clutter the status bar, and Nougat's bundled notification magic is very obviously missing. In short, this part of MIUI is a mess just like it was a several months ago (and when it was based on Marshmallow). Oftentimes, notifications won't even come through because of the atrocious battery saving measures — such times require you to go into the app you want (like Gmail, Slack, etc.), which finally triggers the missing notifications. When you rely on the relative reliability of new emails pushing through when they arrive, this behavior is very unacceptable.

Bluetooth is another spot where MIUI drops the ball. Both of my Android Wear devices and my Gear S3 Classic repeatedly disconnected; each of my Bluetooth headsets and speakers would either fail to pair or drop connection during playback. The latter makes the lack of a 3.5mm jack all the more painful (especially since I never remembered to bring the stupid adapter with me everywhere I went). I don't know whether this is an issue with the implementation of Bluetooth 5.0 with the Mi 6 hardware-wise or something in the way MIUI is handling the standard. What I do know is that it's very, very annoying.

Beyond these specific issues, MIUI is just plain, bland, and outdated — something with which Jeff agreed in his Mi Pad 3 review. And the fact that it's missing some of Nougat's features like bundled notifications and multi-window is utterly sad. Come on, Xiaomi.

Value

Now we come to the crux of Xiaomi's true strength: the value proposition. Starting at roughly $360 USD (for the 64GB/6GB model), the Mi 6 presents an outstanding bang-for-your-buck scenario on paper. Just go back and look at the spec sheet; now think about what you're getting for $360. It's ridiculous and makes even the OnePlus 5 look overpriced comparatively.

But that's at first glance and price is not wholly indicative of the entire story. You just got done reading me ranting about the stale MIUI 8 and the issues I experienced. The fingerprint sensor is not the best and the 3.5mm jack is missing. There are plenty of issues with the Mi 6, but that then begs the question of whether we should expect such cut corners considering the MSRP. Would it have been better to save money on some of the overkill internal components to improve the other lacking areas? It's certainly a conundrum.

However, with TWRP available for the Mi 6 and the inevitable flood of custom ROMs coming (hopefully), I daresay that this phone is one of the best values on the market — you know, other than not being able to buy it with a warranty most places in the world.

Conclusion

Software is the biggest problem with the Mi 6. MIUI is a bore and the biggest contributor to the feeling of blandness that surrounds the phone. But what if it could be replaced, thanks to custom recovery/ROM support? It's a question worth considering. Then you, as a prospective buyer, will only have to tangle with the hardware faults.

Admittedly, most people don't have the same trouble with fingerprint sensors that I do (especially front-mounted ones). The lack of a 3.5mm jack is something that I will continue to criticize until we get to a point where it can be put to rest — Xiaomi should not have left it off of the Mi 6 (the official reason is that it was to make more room for the battery).

I want to like this phone, but I don't. It's more focused on the spec race than actual UX. But unlike OnePlus, Xiaomi continues to fall flat on its face when it comes to software. Yes, it's impressive to stuff a Snapdragon 835, 6GB of RAM, up to 128GB of storage, two 12MP cameras, and a 3,350mAh battery into a phone with a 5.15" screen. Impressive technical accomplishments, however, do not make a great phone. User experience is a crucial element that doesn't show up in spec sheets or in marketing materials, and yet it's often a problem area for many OEMs.

Even though the Mi 6 will likely have some good aftermarket support, I find it inappropriate to recommend a device with the caveat that you will likely need a custom ROM to resolve some or all of the software issues. That shouldn't be the case; we aren't in the early days of Android anymore where such a warning was usually a given. Frankly, MIUI needs a serious rethink - it's time for an overhaul.

Try again, Xiaomi.