History log of /frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
edba852930bd2e9ab41f74f340595dafe500c756 17-Oct-2012 Irfan Sheriff <isheriff@google.com> Handle null BSSID

The root cause of why bssid needs investigation, but for now,
we can avoid crashing wifiwatchdog.

When bssid is null, just treat it as a good link.

Bug: 7357232
Change-Id: I080dfc990f3412646976cdc6ef75112ab093d326
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
17cf1f2bbc3f7d4f367dbbee935d2939957c0ef6 10-Oct-2012 Irfan Sheriff <isheriff@google.com> Fix build

had local changes from b/7318044

Change-Id: Idc6907d648a07d36f93dee859e361e9655cdd8e6
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
bbe461b78f9697775281d986bcf3c00904e1e62c 10-Oct-2012 Irfan Sheriff <isheriff@google.com> Disable poor network avoidance by default

Bug: 7318044
Change-Id: Icf27e823453eeaba901aad6f3f8eedea242794f9
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
bdfce2ec05a3e9ca6acd6711de6133e06f2446e6 27-Sep-2012 Jeff Sharkey <jsharkey@android.com> First step towards cleaning up Global settings.

Remove all @Deprecated @hide settings, and clean up any stragglers.

Bug: 7232125
Change-Id: Ibf67093c728d4a28565129b923edb1701d3b2789
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
da6da0907b28d4704aabbdb1bbeb4300954670d1 16-Aug-2012 Irfan Sheriff <isheriff@google.com> Captive portal handling

We now notify the user of a captive portal before switching to the network as default.
This allows background applications to continue to work until the user confirms he
wants to sign in to the captive portal.

Also, moved out captive portal handling out of wifi as a seperate component.

Change-Id: I7c7507481967e33a1afad0b4961688bd192f0d31
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
f6307820c88e694e102824225b9d8caa6de75a30 14-Aug-2012 Yuhao Zheng <yuhaozheng@google.com> CTS test for WiFi watchdog - framework support.

The new WiFi watchdog requires kernel/driver to export some packet loss
counters. This CTS tests whether those counters are correctly exported.

Change-Id: I41999676f8488e86f35f1f8214ce668f1a2b5638
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
b33227d23eb0ec3507192f94c2eee651a0f97783 20-Jul-2012 Yuhao Zheng <yuhaozheng@google.com> WifiWatchdog changes for poor link detection

- use packet loss (wlutil pktcnt) instead of frame loss, retune all parameters
- use wpa_supplicant to get packet loss counters, instead of netd
- handle BSSID roaming in all situations
- improve flapping avoidance mechanism by setting different target RSSI
- handle high packet loss in high RSSI (never seen in real testing)
- add more comments on how to set all parameters

Signed-off-by yuhaozheng@google.com

Change-Id: I33429f063d8625a458be4791edd83a86d5a723df
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
55b9821dffe5991e554841bf871155a2c4024c56 22-Jun-2012 Irfan Sheriff <isheriff@google.com> Move ARP test functionality to ArpPeer

Change-Id: Iecd6037cf8e0faa626ba6c27cef014822a6bc61b
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
ae094b27159864cb47015b96d18c5d32ef84fdc1 31-May-2012 Irfan Sheriff <isheriff@google.com> Fix walled garden detection on nakasi

Bug: 6576101
Change-Id: Iad2ea67e54662cd30a0e7425dab2a6174d13d152
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
0a2a91e8784d00b451caedcd4daf49ccf9f5bcb7 09-May-2012 Irfan Sheriff <isheriff@google.com> Tone down poor connection avoidance

Until we figure out a way to compare a poor mobile network
against and poor wifi network and then weighing in other factors,
tone down wifi avoidance aggressiveness

Bug: 6456541
Change-Id: Idc81e4d83f47c9870abbdb4359ddfeaffdcca838
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
90d57dfac3113247e2d38a2235254fc35d12856a 12-Mar-2012 Irfan Sheriff <isheriff@google.com> Improve network avoidance

Adds a back-off based technique where the amount of time we wait before
avoiding wi-fi is increased.

This will reduce power consumption on devices that are experiencing high
variance on wi-fi

Change-Id: I40da03edfb5373ddb51056818ca0744dc26a5600
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
4c8982ad820007512e4e9cbb7f15925228d70761 09-Mar-2012 Irfan Sheriff <isheriff@google.com> Enhancements for avoiding poor connection on wifi

- Avoid flapping
- Increase thresholds and monitor rssi more closely to detect consistently weak signal

Change-Id: I6139a20b7306839b345146a72ce690020a2e00b8
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
07573b32494acbabd21979d8b9584c1ed3f7a6ad 28-Jan-2012 Irfan Sheriff <isheriff@google.com> Improve Wi-Fi hand-off

When Wi-fi connects at L2 layer, the beacons reach and the device
can maintain a connection to the access point, but the application
connectivity can be flaky (due to bigger packet size exchange).

We now use Watchdog to monitor the quality of the last hop on
Wi-Fi using signal strength and ARP connectivity as indicators
to decide if the link is good enough to switch to Wi-Fi as the uplink.

ARP pings are useful for link validation but can still get through
when the application traffic fails to go through and thus not best indicator
real packet loss since they are tiny packets (28 bytes) and have
much low chance of packet corruption than the regular data
packets.

Signal strength and ARP used together ends up working well in tests.
The goal is to switch to Wi-Fi after validating ARP transfer
and RSSI and then switching out of Wi-Fi when we hit a low
signal strength threshold and waiting until the signal strength
improves and validating ARP transfer.

Change-Id: Ica593291ec7772da892f03cf45b649635b730c47
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
c4ea8dfd46a5eeeedd15664a6499ecde32985509 09-Dec-2011 Irfan Sheriff <isheriff@google.com> Remove explicit network disabling code

We are going to always disable the notification

Bug: 5556629
Change-Id: I981eb55a1bb6f44defd674e3a86d9c6f3805f4fc
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
19380daaf46815c80bd89fd9ca3af3c4095952b5 06-Dec-2011 Irfan Sheriff <isheriff@google.com> Disable poor network connection alone

- Keep the walled garden detection in place

Bug: 5719771
Change-Id: I9e5d69b6d56096be904106b1db48c02db4c0fb50
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
40cb30c2df2176c03f24cbdc194e3af5a4f64758 06-Dec-2011 Irfan Sheriff <isheriff@google.com> am 7b62313e: Disable wifiwatchdog for now

* commit '7b62313eab4af8835a64fb3fe1e15e5e534a9479':
Disable wifiwatchdog for now
7b62313eab4af8835a64fb3fe1e15e5e534a9479 06-Dec-2011 Irfan Sheriff <isheriff@google.com> Disable wifiwatchdog for now

Change-Id: I2ac4fa706f3d0a415cb8e86002173b776aba4e02
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
6b66e9e4c95b1c866ea63a0122fc199994fd7053 25-Oct-2011 Irfan Sheriff <isheriff@google.com> Switch to notifications for walled garden

Also, switches the URL for browser to the actual URL used for checking
walled garden

Bug: 5398921
Change-Id: Ie4d4b1d47f4151d0f85975b10190bdcf5f2e7a57
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
a81ac7c450d9d534c46abc7000cc53779a72c283 20-Oct-2011 Irfan Sheriff <isheriff@google.com> Add a delay before walled garden test

This allows a carrier app to authenticate before we notify the user.
For future, we will provide an API that allows app to disable
the walled garden check.

Bug:5398921
Change-Id: Iff98ddaaa9fa38def4f43b1995f4b2c36f93a919
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
7f8a12c75cf2b376fce58fc22b5ecb1b64acf110 04-Oct-2011 Irfan Sheriff <isheriff@google.com> Reduce/Fix system logging

Bug: 5410239
Change-Id: I2f91dfde0b701e8905a1235696591b3154693c7c
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
32f04e9009046f72242932bf4e820802148e423a 23-Sep-2011 Irfan Sheriff <isheriff@google.com> Fix watchdog to stop ping after wifi disconnects

- The pings are delayed async messages that were getting handled
after a disconnect as well

- Increase poll time to 200 ms, so we block on a receive for 1ms every 200ms for a
sent packet

Bug: 5361564
Change-Id: I1931a1c4146e78a87407d541d8c3934ff8232604
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
998196d64d35c1767dbb08f059fe3af171e44e1d 09-Sep-2011 Irfan Sheriff <isheriff@google.com> Finalize wifi watchdog default settings

- Reduce DNS counts from 15 to 5. 15 was for debug.
- Keep success scenario as atleast 1 being successful
- Wait for a second to start checks (for some setups)
- Use one bar as a start for doing periodic DNS checks
- Do a DNS check every hour (instead of half hour)

Bug: 5284337
Change-Id: Ie64d8cac48318a0c4c59f91ad21f8c6712b71338
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
9b2886e24301e5d4e7052ec4a6eaff273d3f516c 31-Aug-2011 Robert Greenwalt <rgreenwalt@google.com> Create new isNetworkSupported API

Useful for checking if on a wifi-only device.
Similar to asking for NetworkInfo for a network type and checking for
null, though here the intent is explicit.

bug:5087537
Change-Id: Ia3ddd09b6b735b8b3ceb7a347891e015fd96b218
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
79e43f679d6102066ee9eff862912806f53bb0e8 17-Aug-2011 Isaac Levy <ilevy@google.com> Added support for multiple DNS servers.

Also increased delay on repeat checks for WWSM.

Change-Id: Ic11b1f37a910c483f48e04dadb539b39fe50e622
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
26a8d71413f107603ad68f4fa80cf2bf3da9dab1 10-Aug-2011 Isaac Levy <ilevy@google.com> DnsPinger -- log setup problems

Changed class to send a pings for 1.5 seconds to see if conn problems are
resolving after time. Turning RD flag on for now

Change-Id: I05bcf208bda3ea8fb98bd7aec8f0109523d64583
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
8dc6a1b2823f374a176fb21b8a174664a5f825fa 27-Jul-2011 Isaac Levy <ilevy@google.com> Watchdog notify on explicit connect

Notifies when user explicitly clicks on wifi dialog.

Change-Id: I5eee37d68b422d748d41e9384d5006482a223dc5
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
d2fe04b71a89a0608eb7c67065dead2a1f540122 22-Jul-2011 Isaac Levy <ilevy@google.com> Rewrote DnsPinger - now is async and concurrant

Change-Id: I93e1374ae857832935202614e34ce18f040fcfc7
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
88bae17cfd3de40758c5296d15f012f06f08748a 28-Jul-2011 Isaac Levy <ilevy@google.com> Changed walled garden to better url

Now checking for walled gardens using 204 error code on
http://clients3.google.com/generate_204

Change-Id: I0a00dc8b956f35f6695d2085c9f03ce40dc7e231
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
4ad39d6ac16961df0e7a3e4b4e7075aaa5202787 27-Jul-2011 Isaac Levy <ilevy@google.com> Will not disable wifi on wifi-only devices.

- Turn off watchdog by default on wifi-only devices, b/5073657
- Do not disable wifi networks if connectivity manager reports
no mobile connection.

Change-Id: I835e753624fc5e447081cde473039011721112c6
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
e046975503e7c6ebd78e35afaad88e3fb1ebfb5a 22-Jul-2011 Isaac Levy <ilevy@google.com> Fixing WifiWatchdog log flag

Accidentally merged verbose logging - setting to false.

Change-Id: I6cd9321c7602d86aac4a8340ef0233310a665bd9
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
d7b3e6a39b6b2e155b24ef470023bafb3b9fa35a 21-Jul-2011 Isaac Levy <ilevy@google.com> WifiWatchdogSM notification for first wifi disable

Also moved customizable settings into Settings.Secure and
added listeners for setting changes into the state machine.

Change-Id: Ia6859c71f7edae13062685867959adc423af4643
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java
654f5090754e4e1bf4c1736d0a24769a15a6037e 14-Jul-2011 Isaac Levy <ilevy@google.com> WifiWatchdog rewrite to formal statemachine

Rewrote wifiwatchdog service to use net.statemachine

Change-Id: Id6fd42b13192ac2e99f842ff50e9edff1696675d
/frameworks/base/wifi/java/android/net/wifi/WifiWatchdogStateMachine.java