I am sorry for any typos or mistakes, this is a very long post and I am limited on time. I tried my best to explain and help you find a solution such as I did.
I fixed this problem a few months back, I am sorry for not posting my results. But let me take the time now and explain everything. The component itself is the Wi-Fi chip, the only reason you see it turning off after 15 seconds is because it’s designed to save battery life, how does it save battery life? By turning of the connection and not having to keep a wireless signal and actvie connection. But wait than how is it support to receive push notification?
Simple the Wi-Fi chip supports a feature called WOW (Wake on Wireless) So after the 15 Seconds are up the iPhone turns of all active Wi-Fi connections but keeps the receive signal open in a low power state. It is up to the router, your router to send the signal to wake up the iPhone thus lettings the iPhone know that it has a new notification. The problem here wasn't my iPhone and chances are it is not your iPhone; it’s your wireless router.
A little history on the iPhone OS, back on iOS 4 the iPhone kept the connection open they never used the feature WOW so that’s why back then no one had issues. The problem with that method was that it was a constant drain of battery only those that had the 3G on would than allow the iPhone to turn of Wi-Fi. On iOS 5 Apple introduced pushed notification, which was a method that pushes a notification from the cloud to your device, this means your device had to always be listening for an update from the internet, this feature allows many apps to push from servers making it less of an hassle on the phone to check which was the case in iOS 4 for all apps that wanted to push. This is a huge drain so WOW was brought into it allowing the device to turn off its active wireless connection and rely on the router to wake it up when a new update is available.
Okay enough of me talking about history let me explain how to fix the issue. Some routers have issues with WoWLAN (Wake on Wireless Lan) my guess is that it conflicts with Apples own WoD (wake on demand) or sleep proxy service. Maybe it doesn’t conflict and it’s that apple has rules on what to allow for WOD. In my network set up my router wouldn’t send the wake signal if I was connected with WPA2-Personal < that’s the authentication method or wireless security.
Quick fix, log into your router’s set up page and change
- 1. Update your router to the latest firmware (Extremely important)
- 2. Change the wireless security to WEP – 64bits
- 3. Change the Channel bandwidth to only 20MHZ < if you don’t have the option chances are your router only supports the 20MHZ channel
- 4. Make sure the router has WMM APSD enabled or just “WMM” once again if you don’t have the option chances are your router doesn’t support it. Or has it enabled by default which is most likely the case.
- 5. Set-up a static IP for the iPhone so the lease never expires
Following these steps should have fixed your issues, if you have an old router maybe it’s time to update. I would also like to take this time to apologize for this long post and or any mistakes I made have done, I like to be thorough. Have a great day and thanks for reading.
--
Christian