Sep 01

While browsing some forums i accidently stumbled upon a solution for the well known Apple Logo of Death problem (also known as the spinning wheel of death). For the ones of you who don’t know what this is, i’ll briefly explain. The iPhone OS sometimes has a problem of freezing up after a installation, update or uninstall of a App Store or Cydia or Installer app.

The explanation of this issue is as follows: When the 3rd party application state changes, Springboard “regenerates the application map” which you can see clearly if you watch the system log with the iPhone Configuration Utility.
This can take some time. The more and/or bigger applications you have installed, the longer this takes. This regeneration process happens ANY time a change to installed applications occurs.

Here’s the problem – Springboard is watched by a watchdog process which is handled by configd. The location of the watchdog and it’s configuration files is /System/Library/SystemConfiguration/mobilewatchdog.bundle

The watchdog constantly monitors Springboard, and if it doesn’t respond at least once every 2 minutes, it is killed and forcibly restarted. If this happens approximately 4 times, the watchdog will attempt to reboot the device, but it usually just freezes the system with the half brightness apple logo.

The problem occurs when the number and/or size of applications installed causes a regeneration of the application map to take longer than 2 minutes – it becomes impossible for Springboard to complete the task before it is forcibly killed by the watchdog. It will try again the next time and run out of time and be killed again. Hence stuck at the boot screen until doing a restore.

It is unbelievable that Apple allowed this design flaw, yes design flaw, not bug go out into the wild and it still hasn’t fixed it in 2.0.1. Clearly the watchdog arrangement was put in place before 3rd party application support, and none of the programmers considered the possibility of Springboard taking more than 2 minutes to regenerate the application map.

So, how to recover from being stuck at the apple logo without doing a full restore wiping everything ?

If you have openssh installed so you can log in remotely you can fix it quite easily, as you get nearly 2 minutes of ssh access during the apple logo before the system freezes where you can log in for “emergency surgery”.

If you don’t have OpenSSH already installed then sorry, it’s restore time…

As the device is trying to boot up but still at the apple logo, try to log in as root using ssh. You should find you are able to log in soon after the device is pingable on your wifi network, and you have a few minutes to complete the following steps in time.

For example from a mac, log in with:

ssh -l root 192.168.1.103 (your iPhone iP address)

Where your iphone/ipods own ip address is substituted.

First we will disable the watchdog timer (by temporarily moving its files elsewhere) and then reboot:

mv /System/Library/SystemConfiguration/mobilewatchdog.bundle/ /
reboot

After a few seconds the device will start to reboot, and after approximately 3-6 minutes (depending on how many apps you have installed) you will reach the lock screen as normal, when that happens we now have to re-enable the watchdog timer, and reboot again, so again log in with ssh, and type:

mv /mobilewatchdog.bundle /System/Library/SystemConfiguration/
reboot

You should find your iphone / ipod touch will reboot normally a second time.

The reason this is a workaround is because you CAN’T leave the watchdog disabled, because as well as monitoring Springboard and killing/restarting it, the watchdog also has to periodically reset the HARDWARE watchdog, if this doesn’t happen the device will spontaneously reboot. The hardware watchdog is 10 and a bit minutes, so without the watchdog installed and working your device will reboot itself every 10 minutes.

If anyone knows how to contact or draw this message to the attention of the dev team I have an idea for a simple patch that they could apply to the watchdog as part of the Pwning process (or as a Cydia package) that would for all intents and purposes solve this problem until Apple gets around to fixing it properly. Please send me a PM.

Note: This same issue is the reason why after installing apps with Cydia the system will sometimes freeze. As far as I can tell Cydia is NOT to blame – what Cydia does is tells Springboard to regenerate the application map, and it is that application map regeneration that triggers the problem – Springboard becomes unresponsive for extended periods of time, the watchdog process starts trying to kill Springboard, and all hell breaks loose…this procedure will also recover from that situation.

The reason Installer.app doesn’t trigger this problem is it doesn’t tell Springboard to regenerate the application map – it just kills Springboard and allows it to launch again.

Credit goes to Mandrake

\\ tags: , , ,

25 Responses to “Apple Logo of Death solution! (SWOD)”

  1. asa Says:

    why not ask bigboss to add on to bossprefs if possible like apple kill switch.

  2. Multinova Says:

    Hmmm, i wonder how this will work? The moment your iPhone is hangin/crashing it’s no longer possible to enable or disable something .. so the only way for now is to go in via ssh.

  3. tom bonez Says:

    the apple kill switch has nothing to do with swod. the apple kill switch as you’ve put it is a way in which apple can blacklist apps on the iphone

  4. Braden Says:

    Asa was talking about adding an option in BossPrefs, like what was done with the kill switch. Asa wasn’t directly relating the two.

  5. jazir Says:

    it shouldnt matter about that. this should be preventable not only fixable on that once ur fucked. right?

  6. asa Says:

    Correct

  7. WaitWhat Says:

    This might be really dumb but what about changing the length of time from two minutes for app map regen to something hire. Boss Prefs could allow you to change the interval by one minute increments as needed. Someone might have to figure out how long it should take given the amount of apps installed in order to give some sort of recommendation. Like if you have 10 apps installed maybe extending the time to 5 minutes will cover the regeneration of the app map. You’d probably have to limit it to 9 minutes tops though, so it doesn’t compete with the 10 min. hardware map regen.

  8. WaitWhat Says:

    higher, not hire.

  9. Jim Corcoran Says:

    Thank you good sir, you are both a gentleman and a scholar.

    I got my phone a week ago, and it was the third time I got stuck on the startup logo, but the first that I was able to wiggle my way out of without doing a full restore. :smile:

  10. FW 2.0: iPhone bricked na gebruik Cydia - iPhone Forum - alles over de Apple iPhone en iPhone 3G Says:

    [...] from Cydia! – Page 6 – iPhone Forums at ModMyiFone.com – iPhone | iPod Touch, news, apps, themes. Apple Logo of Death solution! (SWOD) » iPhone Tips& tricks » iPhoneFreakz Vrij irritant wel… installer zou dit probleem overigens niet hebben omdat deze simpelweg je [...]

  11. iPhone/Web 2.0 » Reset your iPhone’s memory Says:

    [...] To keep your iPhone more stable, I’d also recommend having no more than three pages of apps. The Apple Logo of Death comes because when you install a new program, the OS has to do something called application remapping. There’s a watchdog process that shuts down any process that takes longer than 2 minutes. Thus, if this application remapping takes more than 2 minutes, it’ll reboot. Then on boot, it will do the application remapping, longer than 2 minutes, reboot ad infinitum. Found on iphonefreakz. [...]

  12. Winterboard Problems - Apple Forums | ModMyi.com | iPhone, iPod, Mac, OS X, Mods, More Says:

    [...] Originally Posted by bhz1 Care to elaborate on the watchdog method? As long as you have SSH installed this method should work EVERY time. But since updating to firmware 2.1, have not had to use it a single time. Apple Logo of Death solution! (SWOD) – iPhone Tips& tricks – iPhoneFreakz [...]

  13. zachdr Says:

    i can’t connect via ssh… i don’t think my phone is connecting to my wifi while on the logo screen..

  14. jasoncyap Says:

    What if i can’t get the IP address during the Apple Logo of Death?

  15. jasoncyap Says:

    What if i can’t get the IP address during the Apple Logo of Death?

  16. Stephen Fitch Says:

    hey aight ive been looking for a way to fix this problem because everytime i restore from a backup this happens, and ive been used to the whole jailbreak/ssh mess for a while but im in mobilewatchdog.bundle right now and i dont see mv so could someone help me please i almost fixed my iphone

  17. haha Says:

    haha nvm im stupid i figured it out and will say if this worked later, but y did u put the ssh location backwards with mv anyway? but watever thank you for this good find!

  18. weird behaviour of iphone 2g Says:

    [...] hard way, Installer has done this to me too. Do you have SSH installed? This info is from here: Apple Logo of Death solution! (SWOD) – iPhone Tips& tricks – iPhoneFreakz If you don’t have OpenSSH already installed then sorry, it’s restore time… As [...]

  19. i.k.o Says:

    It doesn’t wooooork ! I can ssh ,then I did the watchdog code and “reboot” code .
    It actually rebooted but then it’s still stuck on the swod apple logo :(

    Could you help me please … I really can’t restore …

  20. Jason Says:

    You’re awesome. Worked for me. Thanks a ton!

  21. Chaanakya Says:

    Another way to fix the SWOD at the boot logo also requires ssh, but it doesn’t mess around with system files. First, log in to your ipod/ iphone via ssh like stated in this tutorial. Then go to /var/mobile and rename Applications to Applications.bak. Springboard should now load! Then, once SpringBoard has loaded completely, rename Applications.bak back to Applications and RESPRING, NOT REBOOT!!!! If you reboot, you will have the same problem again! This has always gotten me out of this mess! Please post if you have any problems!
    - Chaanakya

  22. Chaanakya Says:

    Btw, one way I get around not knowing the IP of my iPod Touch is by setting a static ip. I highly recommend it!

  23. Marky Mark Says:

    Can Somebody Please Help Me!!!

    I ran into the same problem where i cant Get Out of the Apple logo. My 2.0 2G dowsnt have ssh so i wanted to restore it however the phone CANNOT be recognized by my PC. I tried all the USB ports and nothing…

    Has this happened to anybody

    Solution?

    Thanks

  24. Tycff Says:

    I have an iPod Touch (3.1.3 3rd gen) jailbroken and i got the spinning wheel of death but i dont have afc2add or openssh. so… what should i do???????

  25. Rutwij Says:

    wat is ssh????hw shud i use it

Leave a Reply