So my question came up looking an the console output of some iOS 7.0.x devices via iPhone Configuration Utility the other day. I was puzzled to see several indications that the WiFi daemon registers WiFi rssi activity out of the blue for no apparent reason (no background apps active / push messages pending and so on). These all appear as coupled records in the console in the form of:
Mar xx xx:xx:xx iDevice wifid[xx] <Notice>: WiFi:[406330748.823677]:
Mar xx xx:xx:xx iDevice wifid[xx] <Notice>: Too frequent(1.822344 secs) rssi event from driver
Mar xx xx:xx:xx iDevice wifid[xx] <Notice>: WiFi:[406330748.895756]:
Mar xx xx:xx:xx iDevice wifid[xx] <Notice>: Too frequent(0.835468 secs) rssi event from driver, ignoring
...and so on. What got me worried is that the lines above are duplicated every second or so and appear to never end.
Now I'm no programmer in any kind of form, but knowing some of the basics of UNIX and all I've managed to conclude that the WiFi daemon takes up substantial CPU time as shown in an top breakdown using the terminal, which in turn would suggest that this may (or not) be a reason I've also been experiencing poor battery life on some of these devices as of late.
Next up I would obviously ask you all if anyone's familiar with the behavior noted above and if so what would be the source of this "noise"..
At least one app is repeatedly querying WiFi for signal strength, and it's chewing up a lot of battery life.
RSSI stands for Received Signal Strength Indication. It is a measure of the power present in a wireless signal. RSSI queries are made each time the wireless driver tries to determine reachability. You can learn more about it here:
http://en.wikipedia.org/wiki/Received_signal_strength_indication
In this case, a WiFi RSSI driver is caused by querying for reachability - basically, trying to find out if a wireless connection is available.
There are numerous cases of poorly-written apps querying for reachability/connectivity every few miliseconds. You can find examples that query too often all over the web. I'll just put up one here:
http://forums.coronalabs.com/topic/33356-check-for-internet-connection/
Apple's documentation is very explicit about radio usage. The more you use the wireless radio in the phone, the shorter the batter life. They go so far as to say:
Minimizing radio usage is especially important when developing an app for an iOS device, because radio usage has an adverse effect on an iOS device’s battery life.
(Source: https://developer.apple.com/library/ios/documentation/NetworkingInternetWeb/Conceptual/CoreBluetooth_concepts/BestPracticesForInteractingWithARemotePeripheralDevice/BestPracticesForInteractingWithARemotePeripheralDevice.html)
There are several steps you can take if this is shortening your battery life:
Hope that helps!
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With