Xiaomi may be hiding actual cellular signal strength from end users
Xiaomi is on the way to be next king among Android modders in terms of development support. While they require you to go through slightly bizarre form of bootloader unlocking process, afterwards you’re good to go.
We listened to your feedback on the bootloader unlock issue and have updated the policy for the @PocophoneGlobal F1. Most users should now be able to unlock within 3 days.
Please apply let us know if you are still facing problems
— Jai Mani (@jaimani) September 4, 2018
For Qualcomm based devices, they usually upload the required source codes pretty quickly (exceptions prove the rule 😜). For their bang-for-the-buck strategy, young crowds have a natural bias towards them. Combining these factors, plus often the generic detest towards MIUI lead making a vast international community of aftermarket modders of Xiaomi phones.
Interestingly, not all portion of the codebase of the phone are actually open sourced. One of the prime examples is the cellular modem which is responsible for handling all the telephony related tasks. The modem AKA the baseband runs another independent miniature operating system. It ‘talks’ with Android via a radio interface layer (RIL).
From an end user’s perspective, pairing with nearest cellular tower, reporting raw signal strength or changing the LTE bands are few things that are done by the baseband. The OS (here Android) can visually represent the outcomes, such as the signal bars on status bar. OEMs often provide updated modems via software updates to boost network compatibility and performance (example).
In case of Xiaomi, there are multiple reports surfaced on the communities since years about incorrect reporting of signal strength. The same device on MIUI may show consistent signal with one particular carrier, but fails to do so under custom roms such as LineageOS (example: here, here).
We have picked up two most popular phones from Xiaomi – Redmi Note 4(X) and Poco F1, to keep the sample size big enough. The issue is on the large, affecting other Xiaomi phones as well as devices from other OEMs too.
XDA’s in house battery stat monitoring tool, BetterBatteryStats gives plethora of details regarding cellular signal strength and associated battery consumptions to play with. Using those stats, it can be seen that custom roms are more sensitive towards the change of signal strength than stock MIUI.
The author himself has done a month long real life test with Redmi Note 4. On xiaomi.eu (a fork of official MIUI) the phone seldom reports signal fluctuations, and both data and calling work without a hitch. To the contrary, the fluctuation on official LineageOS builds is abysmal.
There are some developer notes on the issue as well:
Everybody since the release of the custom ROMs for mido have been experiencing signal issues, dropping and improper signal bars on status bar, but no one has found a true fix for it, only some gimmick.
The reason is that the modem reports a bad signal-noise ratio (RSSNR) to the system RIL which causes a improper read of the signal strength on the statusbar.
The REAL fix is to is to ignore the RSSNR value and base the signal result on dBm (actual signal level), when the noise value is very high which probably is what Xiaomi did to MIUI. This solves all signal issues for Oreo ROMs and Nougat ROMs.
Here is my conclusion on network drop/fluctuation issue on custom ROMs –
1. This issue happens only on certain LTE networks
2. Network Signal strength is almost the same in custom ROMs compared to MIUI ROMs, but MIUI shows fake strong signal even with low signal strength. Eg: for -100 dBm, AOSP ROMs will show 2 bars whereas MIUI will show 5(full) bars
3. On AOSP ROMs, there is a bug where the signal ASU goes to 99 (the valid values are between 0 and 97 asu) for a few seconds randomly. When this happens, the signal bars drops to 0 BUT the network is still connected (you can still make calls etc.). This is purely a visual bug and does NOT mean loss of network
4. On AOSP ROMs, I have observed that sometimes bars behave strange. Eg: Signal strength is “-94 dBM 44 asu”, it shows 2 bars; now the next second strength becomes “-95 dBM 44 asu” which means worse network but the signal bars go up to 3 or 4. This is a weird issue and if a dev is willing to help, this should be resolved
Bottomline – Signal on both MIUI is the same only the signal bar display logic is different on custom vs MIUI ROMs. MIUI exaggerates signal bars. So just relax, ignore the signal bars and enjoy your custom ROMs.
MIUI is certainly performing better in the test scenarios, but how much portion of the performance increment is happening due to placebo effects? We still don’t know the figures. On the other hand, it is known to us that carriers can modify the way the signal bars are shown on Android Pie.
PiunikaWeb has been following the matter for a while – so expect more news in this regard.
PiunikaWeb is a unique initiative that mainly focuses on investigative journalism. This means we do a lot of hard work to come up with news stories that are either ‘exclusive,’ ‘breaking,’ or ‘curated’ in nature. Perhaps that’s the reason our work has been picked by the likes of Forbes, Foxnews, Gizmodo, TechCrunch, Engadget, The Verge, Macrumors, and more. Do take a tour of our website to get a feel of our work. And if you like what we do, stay connected with us on Twitter (@PiunikaWeb) and other social media channels to receive timely updates on stories we publish.