33 comments

[ 2.6 ms ] story [ 46.7 ms ] thread
You know, I don't recall ever seeing 1 bar of signal strength on a smartphone. And once it's down to 2 bars, it barely works, if at all.

Human brains: wow, what a bunch of suckers. Damn.

By the way, is it legal to be deceptive in this way?

For some reason, I've spent several weeks (across a few years) in Italy with exactly one bar of signal strength on an iPhone when roaming on Vodafone.

It must actually be tricky to space out towers that sparsely without creating any obvious coverage gaps, but if anyone is up to the task, it's certainly Vodafone (let's not talk about the actual service quality, though).

There's a part of me that thinks there's perhaps a logical and reasonable explanation, I just can't think of one.
this is the difference between selling a technology and selling a product
That is a tricky one. I caught myself comparing bars to a friend’s phone before wondering if changing carriers would give me better signal in a certain area.
IIRC this really took off with the antennagate fiasco on the iphone 4. I was working for Verizon at the time and this was also the first one we were able to sell. I forget who it was that did it but I believe it was Apple in response to people "holding their phone wrong" so they bumped everything up a bar so you couldn't tell. There was a lot of competition at the time but also all the androids had better margins so they wanted us to sell those instead.
contrast with RF emissions which are regulated.

if we cared about signal strength, we'd make it part of the telecommunications regulated sphere: you must back your meter with a path which shows signal strength accurate to xDB in some yUnits of zQuality measured at one of A,B conforming labs

Crazy how they’d rather fake a stronger signal than actually make it stronger.
Don’t worry the camera is only on when the green light is on.
A friend recently got a (carrier-supplied) phone and has been complaining about how it would often have no reception despite showing a good signal; taking mine to the same areas on the same carrier and doing a comparison, mine was indeed showing no bars on the signal indicator. The difference is, mine predates this stupidity, and I can also see the details in the MTK Engineer Mode app, which shows the actual signal strength --- it was around -140dBm when it was showing 0 bars.

The signal strength measurement is actually standardised: https://en.wikipedia.org/wiki/Mobile_phone_signal#ASU

I would rather see a live speed test number, emoji, or something. The signal frequency or strength doesn’t matter if the tower equipment is overloaded with users and running at dialup speeds.

I’ve been in bad tower areas where the solution is to drive to the next town or tower along the highway.

I'm surprised that's not against regulation in a bunch of countries
I implemented the same behavior in a different Google product.

I remember the PM working on this feature showing us their research on how iPhones rendered bars across different versions.

They had different spectrum ranges, one for each of maybe the last 3 iPhone versions at the time. And overlayed were lines that indicated the "breakpoints" where iPhones would show more bars.

And you could clearly see that on every release, iPhones were shifting the all the breakpoints more and more into the left, rendering more bars with less signal strength.

We tried to implement something that matched the most recent iPhone version.

Is there any reason to believe this mechanism is actually there to help carriers deceive users? To me this looks like it's intended to address some other issue, like perhaps "I have zero bars shown, what do you mean I'm still connected? That that clearly means I'm disconnected..." I feel like anything intended to lie to users would not be implemented in this manner.
I frequently find that my data service is completely broken even when I have full 5G bars. Inflating by one is lame but doesn't explain this behavior. Is this a T-Mobile thing or is it widespread these days? I don't remember it happening so much 3+ years ago.
Poking around the config files, AT&T and two other carriers (both of which are subsidiaries, from a quick Google) seem to display 3G connections as if they were 4G:

    $ grep -r show_4g_for_3g_data_icon_bool assets/
    assets/carrier_config_carrierid_1187_AT&T.xml:    <boolean name="show_4g_for_3g_data_icon_bool" value="true"/>
    assets/carrier_config_carrierid_2119_FirstNet.xml:    <boolean name="show_4g_for_3g_data_icon_bool" value="true"/>
    assets/carrier_config_carrierid_1779_Cricket-Wireless.xml:    <boolean name="show_4g_for_3g_data_icon_bool" value="true"/>
Android documents[0] this flag, which they don't appear to do for the `inflate_signal_strength_bool` field outside the source code from what I can tell. It seems like there a bunch of odd flags for controlling user-exposed visuals - another flag `show_4g_for_lte_data_icon_bool` is used by 96 carriers, for example.

I wonder if there's some odd telecom history behind these, or if these flags were intended for some kind of edge-case. It seems like carriers have the option to arbitrarily override the thresholds used for determining signal strength[1], but only four carriers actually do. All only elect to customize the `lte_rsrp_thresholds_int_array` field; and all opt to make things harder for themselves, reporting their network connection as lower strength than the default classification[2] would:

    $ grep -r _thresholds_int_array assets/ -A5
    assets/carrier_config_carrierid_2556_Xfinity_Mobile.xml:    <int-array name="lte_rsrp_thresholds_int_array" num="4">
    assets/carrier_config_carrierid_2556_Xfinity_Mobile.xml-        <item value="-115"/>
    assets/carrier_config_carrierid_2556_Xfinity_Mobile.xml-        <item value="-105"/>
    assets/carrier_config_carrierid_2556_Xfinity_Mobile.xml-        <item value="-95"/>
    assets/carrier_config_carrierid_2556_Xfinity_Mobile.xml-        <item value="-85"/>
    assets/carrier_config_carrierid_2556_Xfinity_Mobile.xml-    </int-array>
    --
    assets/carrier_config_carrierid_1345_Telstra.xml:    <int-array name="lte_rsrp_thresholds_int_array" num="4">
    assets/carrier_config_carrierid_1345_Telstra.xml-        <item value="-120"/>
    assets/carrier_config_carrierid_1345_Telstra.xml-        <item value="-115"/>
    assets/carrier_config_carrierid_1345_Telstra.xml-        <item value="-100"/>
    assets/carrier_config_carrierid_1345_Telstra.xml-        <item value="-90"/>
    assets/carrier_config_carrierid_1345_Telstra.xml-    </int-array>
    --
    assets/carrier_config_carrierid_1839_Verizon-Wireless.xml:  # omitted, same as Xfinity, above
    ...
    --
    assets/carrier_config_carrierid_2032_Xfinity-Mobile.xml:  # omitted, same as Xfinity, above
    ...
[0]: https://developer.android.com/reference/android/telephony/Ca...

[1]: https://source.android.com/docs/core/connect/signal-strength...

[2]: https://android.googlesource.com/platform/frameworks/base/+/...

...
Toggle that off or just remove it entirely.
If you use some app such as Network Survey (open source, Android), you can see that providers also lie about the type of connection. I'm on LTE now, but provider makes phone display 5G.

And this is on non-provider phone, this is built in in the whatever communication they do with the phone, possibly works with every device.

The latest iPhone have pushed this to such extremes that it’s become useless as a signal to users.

It’s showing full or near full bars even in places I can’t load light sites like hn properly.

Psychology tricks like these only work if you don’t overdo it

With Three UK I used gathered evidence over the course of 4 months to wiggle myself out of a £46/month 28-month 5G contract (had to pay £200 remaining on my iPhone 16 Pro) when I demonstrated that my phone was basically useless whenever in the postcode are where I live, even if I always had 1 bar 5G signal.

Not even phone calls would go through, let alone calls on Whatsapp et al, or loading websites using something heavier than just text.

Have raised a _formal_ complaint (they must report it to Ofcom), and after that it was just a matter of ensuring I lost enough phone calls to demonstrate how many ended up in my answering machine.

The fact that Wifi calling is also super buggy and almost never work, played also a big role.

My problem is, all other mobile providers in my area are even worse, showing LTE or 4G. So I just need to wait for them to strengthen signal, or move!