What we need is something that indicates network quality. This would be
a third indicator (or replacing the two previous ones). It would
indicate the level of service that one could expect while on a cellular
band.
Whoops, physics!The current signal indicator is based on the periodic heartbeat packets the phone broadcasts. This is the bare minimum for a cell phone to work at all: in order to route a call to a phone, the network has to know which cell it's in.
A "network quality" metric would require, say, a ping running to a host a couple hops away. This requires using the radio to actually transmit nontrivial amounts of data, and (depending on a whole lot of things, of course) more often than the heartbeat.
This would kill battery life. Absolutely murder it. You'd go from 200 hours of standby to 50. Maybe less.
Even worse if you wanted to get an idea of throughput. You'd have to transmit, say, a hundred megabytes of random data. Now we're down to 20 hours of "standby", and dramatically higher load on the backhaul. And, of course, li-on batteries die quicker the more heavily you use them, and the iPhone doesn't have a user-serviceable battery.
Sure enough, google tells us the most frequent check possible is 15 minutes: https://discussions.apple.com/thread/1596018?start=0&tst...
You could use the entire network stack, sure, but that still isn't going to be very fast, since any app that uses the radio frequently is going to drain the battery, and users will complain, which mean such apps just don't exist.
You can settle for only getting an idea of how useful the network is once every 10 minutes, but then we're back at the problem of the "network quality" metric not actually meaning anything relevant.
There are multiple reasons why it's not terribly useful:
1.) Signal quality depends on many different variables, and fluctuates wildly from second to second. You can have a great signal at one moment, but if the guy next to you starts a call, the radio in their phone will ramp up to the full 500mW, and drowns out the tower. You can have a signal graph that realistically reflects "signal strength", and it'll jitter constantly, and the grandmas will complain.
2.) Marketing.
Good overview: http://www.dansdata.com/gz084.htm
As you may have noticed from every cell phone advertisement in the last decade, marketing is heavily invested in the notion of bars. It's in brands, logos, ad copy, everything. More bars are better.
If engineers ran the company, they'd just stick the SNR in dBm at the top of the screen and it'd be wonderfully pure and objective; and everybody else would hate it, and the company would go bankrupt. So we have "bars", and the bars lie.
Think of it as the homeless hotspot thing from SxSW, only brought to the peninsula. One person per train would probably do the trick.
The hardest part is: just how do you get reliable connectivity to your box in order to resell it?
Summary: uses a bunch of different 4G cards from different carriers, large high gain antennas, and link aggregation; to make a single reliable network connection from a bunch of unreliable ones.
Downside: Fills a backpack, is really thrillingly expensive.
This behavior persists until you re-enter and gracefully quit the Field Test app.
At the new neighbourhood I couldn't get service standing at my front door about a mile in line of sight of the nearest tower. After a long and ugly fight with the provider, I was able to cancel my service for half the ETF and move to another provider using an iPhone that I presume connects to the same towers and works as expected. I definitely wasn't happy with the result.
I've noticed that the 5 bar system does not work well for diagnosing actual signal strength and reliability: the display updates too slowly to be of actual use when signal is a problem -- watch people waive their phones around while they try and make them work. The bars don't represent the signal it's getting now, but some normalized value of the last little bit of signal.
At minimum, it would be nice to have an app that does a good job of diagnosing and explaining your current network situation. I'm sure it already exists, I'm just not aware of it.
It's not fool proof, but it's better than nothing.