Take the 2-minute tour ×
Ask Different is a question and answer site for power users of Apple hardware and software. It's 100% free, no registration required.

My iPhone refuses to switch over from WiFi to 3G when the WiFi signal gets too weak to be usable. It will sit there indefinitely, unable to load a web page because I'm too far from the router, and not switch to the strong 3G signal that is available. Has anyone else had this problem? Is there anything I can do about it? Would it be better if I bought an Apple router? Do Android phones do this? I already submitted a bug report to Apple. It seems like such a simple thing to switch to 3G when WiFi stops working.

I know how to switch manually, but that's not a good solution. I think it's an iOS bug. I don't think it's the router's fault either, because the phone should be the one to determine when to switch to 3G. It should happen when WiFi fails to respond for a certain amount of time. I have a high-end Linksys router and an iPhone 4S. Router works great with all other devices and iPhone works well besides this one problem. This only happens when I'm outside my house and the router signal is no longer strong enough for data to get through. Once I go far enough down the street the signal switches to 3G, but there's about 30 yards where it hangs onto WiFi even though it can't get anything through.

share|improve this question
add comment

5 Answers

The expected behavior is probably for the phone to stay on WiFi as long as it can connect, and then switch to 3G; as of iOS 5, I don't think the capability is there to automatically notice a dead WiFi connection and switch to 3G. So what you're seeing is perhaps a lack of functionality, but it's not strictly speaking a bug.

I can't really see Apple making that the default functionality, though. They'd get a lot of flak for making the iPhone too smart; nerds would complain that they don't have control. If it was done, it would probably be an option.

It also would be very difficult to do well automatically. How does iOS know a connection is bad? What exactly does "when WiFi stops working" mean?

  • Lack of public internet access? Windows 7 (and maybe Vista) does this by requesting a text file from Microsoft's website with predetermined content; that's how it knows if your connection has internet access or not. But what if you're on a network at work that only offers access to intranet sites, and not the public internet?
  • Lack of data transfer despite network requests going out? What if you're repeatedly trying a site that's experiencing a lot of traffic? How many repeated failed requests mean a bad connection?
  • Long response times for outgoing requests? How long is too long? It could be averaged over time, but where's the threshold?

It could probably be done, but it would be difficult to do well, and the gain in widespread user satisfaction probably isn't that huge in comparison to other things.

share|improve this answer
1  
Thanks for the thoughtful answer. The iphone knows it's not getting anything because it will display a message saying "cannot connect to internet" after about 15 seconds. I think that's way too long when there's a healthy 3G signal right there. And even after it posts that message it still doesn't automatically switch to 3G. I can see how you would consider it a missing feature, but it seems uncharacteristic for Apple to not provide such basic functionality. –  James Feb 2 '12 at 1:57
    
Mr.Jefferson made a good point about this being difficult to do well. Especially as not all users are on unlimited data contracts and care a lot about being in control of the 3G usage. Think also about the restrictions of using 3G vs. wifi (i.e. app downloads etc.) –  Turismo Feb 2 '12 at 6:18
add comment

I had the same problem, and I contacted a technician from my Service Provider since Apple wouldn't want to help me because the warranty on my phone had expired. The technician guided me through these few options. If the 1st one doesn't work go to the 2nd and so on. I had to go all the way to number 4 before it worked.

  1. Make sure your 3G network is ON.

    Go to SettingsGeneralCellularEnable 3G: ON.

  2. If #1 is OK, try switching ON the "Airplane Mode" for about 10 seconds and then turn it back OFF.

    Go to SettingsAirplane Mode: ON, wait 10 seconds and turn OFF.

  3. If #2 doesn't work, reset the network settings.

    Go to SettingsGeneralResetReset Network Settings.

  4. If #3 doesn't work, back up your iPhone using iTunes or iCloud and reset your phone to the factory setting:

    • Back up using iTunes: Plug your phone to your computer and open iTunes. Click on the "File" icon on the upper left corner go to "Devices" and select the Back Up option.

    • Back up using iCloud: Go to SettingsiCloudStorage and BackupManage storage → Delete the backups that appear there by tapping them and selecting Delete Backup.

      Once you have deleted the old backup, go to SettingsiCloudStorage and Backup → Make sure iCloud Backup is turned ON then tap Back Up Now.

    Once your iPhone is backed up, you can reset your phone to factory settings.

    • Reset using iTunes: Plug your phone to your computer and open iTunes. Click on iPhone in the upper-right corner. It will open your iPhone information. Click on Restore iPhone and follow the instructions.

      Once your phone is reset, go to File button in the upper left corner and go on Devices and click on Restore from Backup. Your phone will then restore from the last iTunes backup.

    • Reset using iCloud: Go to SettingsResetErase all Content and Settings. When your iPhone restarts, tap Restore from iCloud Backup. Connect your device to WiFi and enter your Apple ID and password.

If these steps don't work for you, contact your service provider as you might be in a 'dead zone' for 3G. They will ask you for your Zip Code or Postal Code and verify what's going on. They might even give you another option that they didn't need to give me since the #4 worked for me.

share|improve this answer
add comment

It's a bug, plain and simple. The phone should route your traffic thru the best connection. It does this well when you are in 3G and it finds wifi then gives you that better route. It just has a lousy algorithm to switch back to 3G or LTE. In some cases LTE is better than wireless so apple has some work to do here.

share|improve this answer
add comment

It does not know if Wifi "works" or not. Simply the signal strength. Just manually turn off wifi when the signal becomes unacceptable.

share|improve this answer
add comment

Try switching iphone messaging off in Settings Messages but leave MMS Messaging on - then the phone will thinks its a phone and not a computer. It worked for me.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.