Friday, August 5, 2011

> The DEFINITIVE iPhone 3G/iOS4 Guide

06.09.12: We're Back! I will loading into my iPhone 3G a beta version of redd00r.  I will test it out, see what's in it, what's not, and see if I can start tweaking away.  Please be patient, I will do a whole new rewrite.  Stay Tuned!

- - -
 > The DEFINITIVE iPhone 3G/iOS4 Guide

NOTICE: I expect who decide to do this to have knowledge of how it is done. I am not responsible for people bricking their phones. All resources are available on the web.  Remember, Google and YouTube are your friends and most of these operations can be found there as well.
- - -

After much searching around, reading and testing, restoring and frustrations, I have finally compiled the ultimate guide to having an iPhone 3G running iOS4, with all it's goodies, and fast, what Apple should've done.  This is the one-stop place for those of you looking to bring your iPhone 3G device back to an everyday usable phone.

This is a complete iOS4-equiped phone with all it's features working.  I personally Multitasking so that's a must, but you can leave out which features you don't need. With all the tweaks found below, your device with be incredibly fast, stable and perform better than the standard iOS4, and comparable to the iPhone 4.

- - -
• Phase 1  
Have a clean install of iOS4 on your iDevice
This custom firmware is based on Apple's iOS 4.1, which is the best choice for the iPhone 3G.   Multitasking runs perfectly in this version, and in this firmware, you will not have the screen glitch problems.

I must remind all of you that for these tweaks to work, your device has to be jailbroken.  Before installing, I always perform a “Erase All Content" from the General section in the Settings pane.  

Install iOS4.1

Remember you MUST set up as NEW PHONE. 

Because of how different custom firmwares are made, i personally enable the features i use (Wallpapers, etc. via iFile, but you can choose also MyOS from the Repo.  I find that some people tweak the firmwares and I find in different .plists options scattered that to me don't make sense.  
- - -

• Phase 2
System Tweaks and add-ons 

Cydia Apps
Add to your Cydia source. From there install the following:

• Springtimize
• MobileTerminal (NEW)
• Remove Retina
• SysClean
• Daemon Tools
• Appsync 4.0 
• MobileNotifier (optional)
• SBSettings (optional)

Tip:  I have noticed that for best results:  Install/run terminal scripts AFTER you have installed all your apps.
- - -

Tweaks and Settings

Backgrounder (In most hacktivated devices, this interferes with Push Notifications)
Backgrounder is a true multitasker that "runs" the applications in the 'background' instead of 'pausing' them in the memory like iOS4 does natively.  This alternative is much better and consumes far less system resources than the native multitasker. 

This add-on pairs extremely well with Multifl0w.

There are many configuration options but the most important is making sure that in the Global Settings, you set 'Backgrounding method' as 'Backgrounder'.  Then Fall back to Native: OFF. I chose 'Enable at Launch', 'Stay Enabled' as ON, the rest is all OFF.  Personally my App Switching is done by Multifl0w, but any other than the native will do.
Note: I have the Activator set to Home Button: Short Hold.  When you open an app and want to keep it open, short hold the home button and you can swiftly exit the app and it'll run in the background. 
This is perhaps one of the most important tweak mentioned on this site.   Springtomize offers a wide variety of tuning options for iOS4, but from here we will just use 5.

1. Icons: Hide Shadows and Disable Jittering.  (These are really unneccesary, with these settings off, there is absolutely no lag when moving icons or folders around, or loading them onto the springboard, hence system is light and fast.
2. Dock: Hide Icons Reflections. Won't even notice the difference.
3. Lockscreen: Custom String: ON - write " unlock" (leave a space before to center the text).  This eliminates the lag when opening the iPhone.
4. Animations: Custom Duration: ON (Not Recommended if using Multifl0w: jittering instead of fading)
5. Lockscreen: Custom String: ON, use " Unlock" field (leave a space to center the word):  Eliminates unlocking lag. 

Edit System .plists
Using iFile, modify the following Springboard .plists, make sure the following keys are "FALSE":
* gamekit (if you don't use it)
* hdr-image-capture (this is REALLY unneccesary, it 'fixes' the laggy camera app
* hw-snapshots-need-purplegfx
* mms (if you don't use this)

*gamekit (if you don't use it)
* hw-snapshots-need-purplegfx

Springboard tweaks
Lightweight Folders

Rename it to: "FolderSwitcherBG.png".  
Copy it to the following path: \System\Library\CoreServices\

With this background, folders open quicker. Especially if you decide to use FolderEnhancer.

Delete the following entries:

Remove Launch Daemons
DaemonTools will remove launchdaemon which most of us will never really use, and will free system resources. iFile and Mobile Terminal are apps to access the filestructure of your iDevice.
Restart your phone.

Download a Language Pack delete script.
If you installed Sysclean you have a Lang Pack delete script, if not, you can download a standalone from Insanelyi Repo.  This will remove a lot of language files that are useless. Unless you use emoticons (emoji), you can delete all except English and Japanese (required for icons), if you do not use them, then delete all except English. 

Download Retina files delete script.
This will remove the Retina display files (iPhone/iPod & iPads).  Most apps today include retina images regardless of not having the Retina displays.  This frees about 2000 files! and reports of freeing a megabyte or two of RAM.
- - -
• Phase 3 (Optional)
Virtual Memory (New .plist: based on Stinky1's)
Included in the iPhone 3GS & 4 there is a Page File Swaping system which is basically virtual memory.  I've found a better Virtual Memory solution for the 3G that eliminates the constant lagging that is present with Apple's DynamicPager.  Instead of swapping page files, this VM makes a big static file to read/write from.  With this just feels like a whole different phone.

Download the Dynamic Pager:
Using iFile copy it to the iPhone and install in the LaunchDaemons directory.

Disable Power Management (Optional, but I'm not using it)
To reduce lag, I’ve disabled the power management; phone doesn’t clock down to save power, then it’s full processing power is always on tap.  Some people notice battery drain, but it's not noticeable.  Doing this makes the iPhone more useful.  I have done it and using it with the current VM system.

Go to:  System/Library/SystemConfiguration/PowerManagement.bundle/
and rename, move or delete: “”

Soft Reset*, enjoy.   *Hold down home button and press Power until slider appear. Power Off.
- - -
Results:  This is what I have on my personal iPhone.  I've decided to keep it as simple and clean as possible, I have added Multifl0w but not Backgrounder, from testing i noted that when using Backgrounder with WhatsApp, Push Notifications didn't work.  I don't use wallpapers cause I like the black theme, and it works zippy.

With these settings, I believe this is the best that can be done, sure there are more tweaks, but I've seen little gain or cause stability problems.  From here, all we can wish for is someone to truly find how to remove the underclocking, which is what i believe our biggest setback is.  I hope this is worth the effort and help you enjoy your iPhone 3G again.
- - -

• Optional Installs:
A better iDevice.  What Apple should have done...

Before performing this, be sure to set the Home Button to respond to go Home, this is found in the General Settings pane.

Backgrounder is a true multitasker that "runs" the applications in the 'background' instead of 'pausing' them in the memory like iOS4 does natively.  This is especially good if you like receiving instant messages and the sorts.  
Note: I have the Activator set to Home Button: Short Hold.  When you open an app and want to keep it open, short hold the home button and you can swiftly exit the app and it'll run in the background.

In my opinion, this is the best app switcher for the iphone.  It is fast, simple, and much more impressive that the native switcher.
Settings is only: Switcher Style: Cards. (Responds faster than Exposé)
- - -


  1. Thanks for this awesome guide, best I've ever come accross.

  2. hey where is the virtualmemory.plist?

  3. Sorry about that, link added... This Apple Page Swap is the best thing out there, memory never goes below 30ish, it manages everything quite well.

  4. thank you :D

    i've been following you for the longest time with these guides!

  5. Thanks, well, it will all end after iPhone 5 comes out, till then I'll keep picking at my trusty 3G

  6. same for me!!

    and question. to run/use the virtual memory perk, is it necessary to have sbSettings installed. or can i use it without it?

  7. tnx so much!!!

    this a really a definate guide for iOS4 and iPhone 3G. with this tweaks the phone is usable again

  8. I did this on top of using Whited00r iOS4 version and my phone seams to run like butter now..
    But in my experience the real problems start after several months.. so let's see what happens.

    Another thing i did is download ImageOptim ( and run it several times on all images in the folder.. it crushed several kbs of those images as well (especially the battery indicators, but also from your FolderSwitcherBG_iphone.png). Maybe this will help to free some precious memory as well.

  9. Btw.. if you don't own a mac you can use for windows and for linux to compress the PNGs.

    You probably can run this on all images on the phone (icons, apps etc), should help some.

  10. wiedo: thank you very much, I was actually gonna upload a reduced springboard, liveprofile and whatsapp, but I have done it manually using photoshop. Will try this utility and yes, I use Mac. There are tons of little tips and tricks I will posting in different pages, so stay tuned, and everything that works I will post.

  11. The link to the repo no longer works. You don't happen to have a complete modded ipsw to be able to upload do you?

  12. Awesome tips Paul, Thanks!! @anon, try : as the repo to add to Cydia, I think Paul left off the "i" by mistake :D

  13. AWESOME!!! made my iphone 3g a new phone... would you mind if i put a link for this page in a forum?

  14. Cant wait for the upgraded whatsapp!

  15. Go ahead, link all you like... Actually someone made a Lighter Whatsapp here is the link:

    Credit goes to Superglut from Whited00r forums.

    I'm solving 2 image problems in my light LiveProfile....

  16. keep us the good work. thanks for these updates!. cant wait for the optimized springboard! and the LiveProfile!

  17. Thanks for the whatsapp link ill try it out... n yes keep up the good work:) cant wait for the updates:)

  18. hey...sorry im a noob.. can you give me a quick how to, to install the compressed whatsappl.. thnx

  19. Seems to have severley slowed over the course of a couple weeks with no new apps.

    Waiting on the update and hoping this one works for good. :)

  20. lol, naw, it's just that work, class, bar exam coming up, you know how it is... I've been trying to see why the phone get sluggish after about 3 weeks of use...anybody have that happen??? Also i used to restore like 50 apps, now I use just what I need. I should be getting a Samsung Galaxy Ace on Wednesday too. But I'll keep my 3G too :-P

  21. Hi Paul, My iphone 3G had the same problem. After applying your tweaks it seemed a new phone, but after some weeks started to slow down...

  22. Wow, you FINALLY released it :P Great job though, good guide.
    Personally, im just going to get a new iOS device soon, rather than optimize my current iPod touch 2G to full speed.

  23. paul. when will there be an update?

    we have been waiting a while for your great work!

  24. Im only getting +-56 free ram??? um where can i make more free ram? i tried to delete other launch daemons to...

  25. Thanx for your guide! Waiting for great update =)

  26. thanks a lot for updating the blog. Have been eagerly waiting for this.

  27. can i get link for the whited00r ios4,becoz the whited00r website now is can;t open..someone hack it

  28. Uploading a copy to Rapidshare, stay tuned...

  29. Did you upload whitedoor ios4 based in the end mate? Could do with this for my touch 2g

  30. Gavin: I'll re-try to upload, it stopped half way. my internet is a mere 2Mbit DL / 512 Kpbs UP, so bear with me...

  31. Thanks mate, would be handy.

    My internet is not much better these days!.

    Great guide you've written, and thanks for all the help!

  32. I will be waiting for it..

  33. Here you all go:

  34. Thank you very much....

  35. Hi all. I tried to install the firmware OS4 based on my iPhone 3G, but iTunes make me an error 1604. Any idea?
    Thanks in advance and best regards.

    P.S. The first time I tried the firmware on board was whited00r 4 (3.1.3 based). Next I tried also with 3.1.3 firmware Apple original. Same error.

  36. Andy: Using Redsn0w, load an original iOS4.1, and select, Boot DFU pwnd, after that cycle runs it will tell you that you can go into iTunes and load a custom firmware.

  37. Thanks I will try.
    Now I installed the 4.2.1 original firmware.
    So I lunch Redsn0w and select the box Just enter pwned DFU mode right now, then load the custom firmware.
    It's rigth?

  38. Andy you CAN use the 4.2.1 for pwned DFU mode ONLY. After you install whited00r iOS4, if you need to jailbreak, you CANNOT use 4.2.1, you have to use original 4.1 firmware.

  39. Sorry, but if I install whited00r iOS4, this firmware not is just jailbreaked?
    Actually I have a 3G in 4.2.1. If I want install whited00r iOS4, do I need downgrade the firmware?
    (sorry for my poor english)

  40. Whited00r is not unlocked, you have to unlock it. The developer didn't make an unlock version, but with Redsn0w, it can be easily done. If you use the 4.2.1 firmware as the base for whited00r, you will have minor graphical problem (certain lines and images will flicker on the screen). So use a 4.1 IPSW. Whited00r iOS4 is different from all the other whited00r's, which can be found unlocked and jailbroken, and are 3.1.3.

  41. I can explain why the phone gets slow after sometime with this tweaks,is the virtual memory tweak,it was not designed for the 3g and you can see if you take out that,your phone will continue the same after some weeks,but you'll get less RAM

  42. The lag i had was b/c of Multifl0w in my case, with the update it was solved, this week I found another solution to another issue that causes lag. I will update the blog in a couple of days, it's more because of Push Services. Apple's VM page (swap) files overwrite each time, I found some plist mods that help this too. You can view what I'm upto in my UPDATES tab.

  43. hi Paul and thanks for this post, excuse my english... where i can to download "whited00r iOS4" in no found it

    thanks again

  44. King Arthur: Right, site was hacked and links are down. I included a link in the blog. Happy Trails.

  45. @ Arthur

    thanks to paul

  46. Paul - slightly confused - so are you running whited00r os4 tweaked or Apple 4.2.1 tweaked?

  47. Yes, it's whited00r iOS4, but you will need Apple's iOS4.1 for jailbreaking purposes, NOT 4.2.1. 4.2.1 has opengl problems, that even if you enable it, you will get the horizontal lines.

  48. Paul, you have said earlier that you have tried every possible tweak there is for the 3G. What about using the power management plist from the 3GS? Some people say they had good results with it. On the other hand, it supposedly drains your battery as well.
    What about deleting the power management altogether, as you suggested? Is the battery disadvantage really unnoticable? Any long-term observations?
    Thanks a lot for writing up this guide. I'm giving it a try, but unfortunately even the first step (erase all content) takes hours to complete.
    So long and thanks again

  49. shreebles: I've tried all of that, the difference is unnoticeable, if you wanna give it a go, go ahead, but all Power Management does is "step-down" the processor. I have hear with me all iPhones, and even the 4, the battery life is about one day. I popped in a new original battery in my 3G, and did a factory power management test and without it, it lasted one day. You don't HAVE to do the erase all content, but in past instanced i would flash some firmware and noticed settings retained and such, so it's more of a better be sure than sorry kinda thing. Normally i do all these tweaking @ night, i erase before i shower, then my the time im done it's done, etc.

  50. Paul - if I've a valid sim, phone doesn't need to be unlocked, do I still need to go through all the steps, or can I simply install whited00r os 4 and use your tweaks?

  51. You should; Cydia is included in whited00r, so from there just go ahead and install the apps, mods, scripts etc, and let me/us know. Your phone should be a beast, unlocking takes a TON of resources from the phone, so please feedback.

  52. Thanks for the quick reply, Paul.
    I'm halfway through the guide after taking 5 hours to finally get my 4.2.1 iPhone back to 4.2.1 after downgrading to 3.1.3. Now I did use the firmware that you specified in the post, but when using iFile there is no such file as "SystemPowerProfileDefault.plist" in the folder mentioned. There is however a file called "" in it. How come we have different file names? Are they even the same things? I assume not, the filesize is 127kb and it is very short and the only real information it contains is "LastSleepUUID".
    What do you think?

  53. There is a PowerManagement file, i'm looking at it right now, but above it, is the Now you said you have your phone upto 4.2.1, you do not want that. whited00r iOS4 is based off 4.1, so what did u do? cause from 3.1.3 you could have just restored to whited00r...let me check my local whited00r file vs. the link given to me by to be sure too.

  54. ...if that systemprofile plist is not there, its no biggie, they probably tweaked whited00r, since the iOS4 variant never made it our of BETA, there are no revision numbers. But im downloading now.

  55. The problem was, that I couldn't go from 3.1.3 straight to whited00r. It never worked. In fact, after crushing the whole filesystem with the "erase all content and data"-option, I couldn't even get a regular apple update to 4.2.1 to work. The only thing that did work was to downgrade 3.1.3., mess with pwned DFU mode for hours, then update to 4.2.1., then update to the IOS4 whited00r version linked above. So did I get the whole procedure all wrong? The phone is working relatively snappy after the tweaks but I'm still not 100% satisfied.

  56. The whited00r file link is the same one i used, i verified that. Normally what one would do is just that. PWNED DFU from 4.1 IPSW. Then from there flash whited00r. Before whited00r i did do this based from 4.2.1, but multitasking on 4.2.1 is really not designed for 3G, 4.1 was the last version that kinda supported it. Whited00r out of the box is much faster than 4.2.1. Sorry you've spent so much time on this, and I wish i knew what exactly is going on in your case. But in general the directions are clear. But again, PWND DFU from 4.1, then flash whited00r is how it's done. That why i specify it has to be 4.1, if you use 4.2.1, you can have graphic and some operational problems, as it happened to me, so there is a differente between the ios's

  57. First off...GREAT post. You have brought new life to my old phone.

    Second, I'd like to suggest a few minor editing spots to make it easier for others...

    Phase 2:
    -The correct path to "" should be System/Library/System Configuration/PowerManagement.bundle/

    Phase 3:
    -Missing MobileTerminal (New) to run scripts.
    -Fake Clock (as an option)
    -might be a good idea to include the command su root and commands for the scripts so people know how to run them.

  58. Fixed the posts, and thanks for the observation. Regarding wanna have either that or Springtomize (for Animation duration). I've seen icons and other images "corrupt" or blink wildly even with an extreme setting in just Springtomize, in the end, i chose Springtomize cause it does more than just "speed animations". I'd suggest one or the other. Regarding Scripts command...well, i kinda state that who does this should have minimum knowledge, i'm trying to keep it as short and simple as I can. Script should be base knowledge, but again, thanks to the suggestion.

  59. Hi Paul -
    thank you for creating this guide!

    I have implemented many of your suggestions, ready to take the plunge with the Static Virtual Memory. I have downloaded the file you provided via the sendspace link, using SSH (or ifile) where should I place this file?


  60. Figured out my issue ... placed the iphoneVM.deb file into the /tmp directory, and typed this from within my SSH client, WinSCP -

    dpkg -i /tmp/iPhoneVM.deb

    Everything is running well, again thanks for all your hard work Paul!


  61. Anywhere is fine, glad it helps...

  62. Thx for all your hard work! Works fine so far...looking forward to your next findings concerning the memory leak...

  63. paul, whited00r already released the 5.1 . . .do you have any updates here?. .is it recommended to upgrade in wd 5.1?

  64. WRONG: It is very confusing i know but "Whited00r 5" is NOT "Whited00r iOS5". Whited00r 5 (and other versions are based on iOS3. "Whited00r iOS4" is based on iOS4, and development has ceased for "Redd00r" is being developed. Instead of having a "Whited00r 5" and a "Whited00r 5 (iOS4-based), it will bow be called redd00r. This blog refers to the iOS4 variant of Whited00r. I contacted the developed, because the new mobile substrate is not compatible with ultrasn0w.

  65. Can you help me out here? I am doing as you say and when I go to installing Ultrasn0w, the cydia installer crashes at preparing mobile substrate.


  66. Hi Paul,

    I was wondering if you have any news on the update of this post regarding the mobile substrate issue?
    Would be awesome to have it back! :)


  67. It crashes because the iOS4 based Whited00r does not support the newest Mobile Substrate. It therefore crashes when installing MobileSubstrate with Ultrasn0w.
    To avoid that: Before installing anything MobileSubstrate-related, be sure to install it manually. To do that download the last Whited00r-compatible version of MobileSubstrate. In the Whited00r forum it says it’s "mobilesubstrate_0.9.3367+6.g629fcfa_iphoneos-arm.deb"
    Install OpenSSH and MobileTerminal on your iDevice. Then, on your Computer, navigate via SSH (With Cyberduck or any other program that can access the iDevice’s file system) to
    private > var > tmp and put the "mobilesubstrate_0.9.3367+6.g629fcfa_iphoneos-arm.deb" there.
    Back on your iDevice start MobileTerminal, login as root and type: "dpkg -i /tmp/mobilesubstrate_0.9.3367+6.g629fcfa_iphoneos-arm.deb" (without the quotes). It should now install this version of MobileSubstrate.
    In Cydia make sure to disable updates for MobileSubstrate in MobileSubstrate’s package settings, so it will not update to any newer version which would then cause you iDevice to crash again.

    Hope that helps, it worked for me.

  68. I've done that, but whited00r isn't running well, I just tried with 4.2.1 a build w/ hacks, but the multitasking i cant solve, unless you get the lines. Now i'm trying a build with iOS 4.1

  69. Awesome article, thanks a lot for this. Long time Android user but just recently got given an old 3G, looks like I'll be busy for the next few days :) Hopefully the MobileSubstrate manual install will have little/no troubles for me until you share your updated info. *Subscribed*

  70. hi, do you have links from i can download files needed to do this tweek,


    1. Redsn0w for OS 4.1 comes from Google, Ultrasn0w and SAM both come on Cydia. You should already know that, this is not a guide for newbies!

    2. i mean, which version of redsnow would be best for this? thanks

    3. Oh OK, sorry. I used 0.9.6rc16 so just google for that, the newer 0.9.9 versions don't work well with the old 3G's.

  71. Hey guys, sorry for the absence, just that class and studies are getting heavy, 2 weeks of class left. I have lost a modified VM plist (stinky1) that I had, and with the commercially available ones, the 3G doesn't run well. I can't even find it on the net so I gotte check backups, if one of you has this or knows of a repo, please msg me. I'll see if I get things sorted for this weekend.

  72. how disable updates for mobilesubtrate on cydia???

  73. I don't know if this fixes Icy on the whited00r firmware, but when I tried using Icy I couldn't figure out why it kept crashing. Turns out it's because I spoofed my firmware version, and iirc iOS 4 based whited00r has a spoofed firmware. To change it back you,

    1. Go to System/Library/CoreServices with iFile, SSH, iFunbox, etc.
    2. Open SystemVersion.plist
    3. Change ProductBuildVersion to 8B117
    4. Change ProductVersion to 4.1
    5. Save and reboot.

    Hope this helps.

  74. nice articel :D

    speed up iphone 3G :D

    waiting redd00r....

  75. tired of waiting redd00r.
    4.1 with sn0wbreeze-v2.9.1, unlocked and runs not as bad as you think.

  76. Would you be able to unlock with Redd00r?
    I don't have a spare phone, so I want to make sure that I can unlock after updated to Redd00r.

  77. Here is where I am at right now. There are two Firmwares which I am testing out. One is Kiko's 4.2.1 which is great, it's almost what I had before I installed 4.2.1 for the first time and under clocked my iPhone. Redd00r is an add-on, it's not a firmware, which you install over 4.2.1 or Whited00r iOS4. I have installed it over Kiko's to see what happens...and didn't like the results. I will now try using Whited00r iOS4 as a base, which is what is meant to be used, and compare it to Kiko's. So your answer is, Yes, Redd00r is unlock able, just as any iOS4.

  78. Thank you for reply. so I can unlock right after 4.2.1 install, then apply Redd00r? or 4.2.1 > Redd00r > Unlock?
    I probably use sn0wbreese 4.2.1 instead of Kiko's 4.2.1 tweaked version.

  79. Hi Paul, so what do you think about redd00rn and it's base firmware, vs the kikokoko95 firmware 6.0b1?

  80. @Digitalfox: Kiko's 6.0b1 isn't working with many of my tweaks. But...i'll be the guinea pig and see what happens when loading reddoor. Ill post back... New Site in progress too....adding android devices soon.

  81. DO NOT USE Kiko's 6.0b1, it's just......haywire. Use Whited00r iOS4 or Kiko's V5.

    I tested it, and it doesnt work well with redd00r.

  82. Replies
    1. Where is this version?

      Andy from Rome

  83. Also can help on this blog as i have found what makes this thing even faster

    1. used to run Kiko's firmware, now I am using Redd00r, Redd00r crashes a lot, sprintboard seems quicker than Kiko's firmware, but kiko's runs better for me. Redd00r apps take longer to start up.

  84. now.....where is the new redd00r guide?

  85. New bl4ck0ut final best you will ever get for ios 4.2.1 i can bet on it.
    Way better than his old fw and redd00r....especially redd00r stay away from that crap