How can I set the priority of Wi-Fi networks on my iOS device?
I have two Wi-Fi networks in my house, one at one end of the house and one at the other. While signals crossing from one side of the house are usually audible on the other side, they are generally fairly weak and quite nearly unusable - something in the house's construction attenuates signals traveling through certain walls. So, to enable good connectivity while roaming the house, I have to have my Wi-Fi clients configured for both networks.
This works fine on PCs where I can configure both networks and set a priority order, so that the system prefers the network closest to its normal location and should only roam when its usual network gets too weak. However, I cannot find a way to set this priority in iOS. This results in some devices occasionally connecting to the farther AP, despite being in their regular spot where they should prefer the closer one.
How can I customize the roaming preferences for Wi-Fi networks on the iOS devices? I at least want to assign a "preferred" network for each, but would also like to know if there's a way to set a "roaming threshold" - a point at which the device should choose to change APs, versus remaining on the current one.
I'm pretty sure all my iOS devices are running iOS 5 or higher.
Solution 1:
I'm pretty sure this is not possible to do on vanilla iOS, perhaps with a jailbreak.
However, your solution of running two separate WiFi networks is generally not what you want. It is much more common to extend one WiFi network (i.e. a single SSID) with multiple routers. Devices should then automatically switch to the access point with the stronger signal.
You can check this question which describes how to setup two APs for the same network (i.e. a single SSID).
Solution 2:
The answer is Apple's iPhone Configuration Utility. According to one of Apple's webpages, the utility:
...lets you easily create, maintain, encrypt, and install configuration profiles, track and install provisioning profiles and authorized applications, and capture device information including console logs.
Configuration profiles are XML files that contain device security policies, VPN configuration information, Wi-Fi settings, APN settings, Exchange account settings, mail settings, and certificates that permit iPhone and iPod touch to work with your enterprise systems.
It's available for both Windows and OS X.
Here's a tutorial of accomplishing setting a WiFi connection priority configuration to an iPhone.
Solution 3:
Setting an order of priority for the networks will not help you because the devise will only "switch" networks when the other network becomes completely unavailable and it has to reconnect. There is nothing that will indicate that if the signal drops to a certain threshold, search for a more powerful network. I have a similar situation but slightly different.
I have a portable Wi-Fi in my car that has a pretty good range. I have an in-home network whose signal was not strong enough to cover the entire house so I installed a network booster. It creates a different network segment with a different name (the one I have puts "AMPED" in front of the orriginal network name). So sitting in my home, my device can see 3 networks (the mobile network in my car, the regular home wi-fi, and the "AMPED" home wi-fi). The AMPED signal is almost always the strongest, which is what I would expect.
When I get into the car with my iPhone and iPad and leave the vicinity of my house, both devices automatically loose their connection to the home network and switch to the mobile network. When I get home in the evening and walk into the house though, neither device will automatically switch from the mobile Wi-Fi to the home network, because the mobile device remains available.
I either have to: 1) Remember to turn off the mobile network when I get home. If I do that, the devices pick the "strongest" network signal they have available to them (not from a priority based list). 2) Switch the network connection manually.