Table of Contents
When the competition in the smartphone market is so stiff, a manufacturer has to be at their A game in order to even survive, much less succeed. It is only surprising then when we hear about cases where a device’s hardware capabilities are suppressed with software by the manufacturer itself. For instance, Motorola for some reason decides to include a notification LED on their devices but then disables it by software. At least Sony has a reason as to why it disables the fingerprint reader on their smartphones in the US. Xiaomi’s first entry into a completely new series by the company, the Xiaomi Mi A1 has a somewhat similar problem Well, it is not really a problem per say as much as a confusing move.
The Xiaomi Mi A1 is a great device and your only decent option if you’re looking for a vanilla Android experience and fast updates at very low prices. The device is also capable of supporting Android’s Night Light feature as well as the Camera2 API. For some reason though, those are disabled by default. Now you probably know or can at least make a guess about Night Light. It is basically a Night Mode that can be activated from the quick settings.
Camera2 API (Application Programming Interface), on the other hand, is something more important. You’re probably aware how Android devices were just plain bad compared to iPhones when it came to the camera department. Because until Android 4.4 Kitkat, the standard API to access the camera functionality embedded in the OS was very limited. Manufacturers did try to get around and provide the best camera experience they could. Which is why if you’ve only been using skinned versions of Android, you’ve probably never experienced the lack of settings like manual exposure. Third-party app developers, unlike manufacturers, had no other option but to use the limited tools provided to them.
With Android 5.0 Lollipop though, things changed (enter: the so-called Camera2 API). The Camera2 API introduced by Google in Android 5.0 allowed developers better access to more advanced controls of the camera. These include settings like manual exposure (ISO, shutter speed), focus, RAW capture etc.
Different levels of Camera2 API
This is where the second part of the problem arises. While most devices running Android Lollipop and above have it enabled, the degree to which it is enabled varies. There are four levels of Camera2 implementation: Legacy, Limited, Full and Level 3.
- Legacy is as good as disabled since only features from the Camera1 API are made available.
- Limited as you can guess means only a limited number of Camera2 API features are available.
- Full, as obvious, means all the Camera2API features are available for developers.
- Level 3 adds some bonus, more advanced features such as RAW capture on top of those available in full.
Depending on the support level on your device, certain camera apps will work on your device or they won’t. Apps such as Filmic won’t while apps like Lumio Cam will work partially, or fully depending on the level of support.
That was quite a class. But at least now you know why the Camera2 API is important if you are a camera person.
Magisk Night Light + Prop Mod
XDA developer sooti came up with a Magisk module that can enable the aforementioned features among other things on a Xiaomi Mi A1. Since it is a Magisk module you will have to be rooted via Magisk On the Plus side, you can still install OTA updates and this does not break the SafetyNet. Here’s a list of things this Magisk module can do straight from the developer.
- Enables Night light
- Adds EIS to prop file
- Enables slow motion in GCAM (Google Camera, thanks to @simonsmh)
- Disables horrible noise cancellation during video recording
- Forces HAL 3
- Pixel Blue Accent
- Pixel animations (when soft key enabler is installed and enabled)
- Soft Key Enabler disables hardware keys and hardware key backlight and enables on-screen soft keys.
- A Xiaomi Mi A1 rooted with Magisk.
- Magisk v14.4+
Enable Night Light, Camera2 API and more on Xiaomi Mi A1
- Download the mod from the link provided above. Make sure the zip file is available on your phone.
- Open Magisk Manager on your Mi A1 and go to the Modules section. Tap on the + icon at the bottom and then find the downloaded zip file (a1_tweaks_magisk_module_v1.4.zip).
- Now, simply tapping on the file will open the archive so long press on the file instead and then select Open from the top-right corner.
- The module will be installed and when it does, simply reboot your device.