Saurik, the creator of Cydia, has come up with a way to downgrade the iPhone 3GS from firmware 3.1 to firmware 3.0. The method is not for the faint of heart but it can be a life saver if you accidentally upgraded your iPhone 3GS to 3.1. Saurik did a great job at explaining how and why this downgrade works and I invite you to read his article for detailed information. On my part, I will only give you a step by step on how to downgrade from 3.1 to 3.0.

1. First and foremost, you must have saved your ECID file through Cydia. If this was done, you should see the following message at the top of Cydia’s homepage: This iPhone 3G[S] has an ECID SHSH on file.

2. Now we’re going to duplicate the functionality exposed by Apple’s signature server and trick iTunes into thinking it is connected to Apple’s servers. Make sure you have iTunes 9 installed on your computer.

On a Mac, go to /etc/hosts. On a PC, go to C:\Windows\System32\drivers\etc\hosts. Open the file in a text editor and add the following entry at the bottom of the file:

Save the file and close it.

3. Now we have to put your iPhone into DFU mode. To do this, open iTunes, plug your iPhone and hold down the power and home buttons for 10 seconds, then let go of the power button but continue to hold the home button until iTunes recognizes the device with the message: “iTunes has detected an iPhone in recovery mode. You must restore this iPhone before it can be used with iTunes.” Your iPhone screen should be completely black. If you see an image on your screen, you most likely didn’t perform the previous step correctly. Try again.

4. You can now do a “normal” restore to the 3.0 software. To do this, hold down the Option key (on Mac OS X) or the SHIFT key (Windows) while clicking the Restore button in iTunes. Select the firmware 3.0 (which can be downloaded here).

Theoretically, you should be done with the downgrade. That’s just for the theory though… You’re most likely going to get several errors.

If you get the “unknown error (3002)”, it’s because you probably don’t have your ECID SHSH’s for 3.0 on file with Cydia and it is unfortunately impossible to register your device with Cydia anymore. There is no solution, your iPhone can’t be downgraded from 3.1 to 3.0 and you’re gonna have to wait for a new jailbreak.

If you get the “The iPhone “iPhone” could not be restored. An unknown error occured (1015)” error, then re-do the process all over again. You will get the same error again and it is normal. Ignore the error and jailbreak your iPhone using RedSn0w.

I agree that this is definitely not the easiest way to downgrade your iPhone from firmware 3.1 to firmware 3.0, but you don’t have much choice at this point. If you don’t feel like taking on this project, I suggest you just wait for a proper 3.1 jailbreak, which may take days, weeks, or months. I am very confident that the jailbreak community is getting closer to a 3.1 jailbreak though.

If you have any tips and tricks to make this whole process smoother, or if you have any question, please leave a comment.

UPDATE: If you have an iPhone 3G, you can now downgrade from baseband 05.12.01 to o4.26.08.

  • TJ

    Hi – at the end of your process, I got:

    “The iPhone “iPhone” could not be restored. An unknown error occured (13)”

    So – what the hell error is number 13? Phone is now stuck in restore mode – and I’ll be damned if I go back to 3.1.3 – I miss backgrounder and SBsettings waaaay too much!

  • Allen

    I was getting error 1600 to 1500 to what I can remember. That said I manage to downgrade from 3.1.3 to 3.1.2 so correction it does work what is said here however exspect a full day of installing many times before getting JailBroken. I installed not once but that many times I’ve lost count, Pwnage for Mac was the only one that seem to work and make sure you change that “host” file cause that does help. Do exspect to see at some stage been blocked from your network but don’t worry another re-install will fix that (This is what I had to do).

  • ais

    we are talking about downgrading iphone not jailbreaked !!! so how can you launch cydia if your phone is not jailbreaked !!!!!!!!!!!!!!!!!!

    fucking newbi

  • Allen

    Ais who are you talking to? It better not be me cause I don’t have time for this. My phone is fine! I’ve got it the way I want and don’t need your tone of voice thank you very much!!! I needed to back date so I could JailBreak for both Cydia and Rock, other wise I would of stayed with 3.1.3. I’m done with this, see ya. (Don’t ask me how I got from 3.1.3 to 3.1.2 cause I can’t even remember; just know that it is a pain in the butt so good luck.)

  • John

    Worked for me on the first shot. Since I’m using Windows 7, I had to save the hosts file into My Documents, take off the *.txt extension, then copy it into the \etc\ folder, and select copy and replace. It would deny my permissions if I tried to simply save over the current file in Notepad. Hopefully that helps anyone else have trouble!

    I did this downgrading 3.1.3 to 3.1.2 on 3/15/2010

  • Pat

    This worked for me as well. For people having trouble with the wrong build message, you might try rebooting your win machine. Here is what I did.
    Opened command prompt as administrator.
    Navigated to c:\Windows\System32\Drivers\Etc\
    “Edit hosts”
    add the line noted way above in the tutorial
    saved the file and exited “Edit” and command prompt window.
    Rebooted (hosts might be loaded at startup, changes for me didn’t work until reboot)
    Hard resetted the ipod and plugged it in.
    Opened Itunes
    Held shift and clicked restore. I chose the firmware I downloaded from a TRUSTED source.
    Please note, I opened the restore before finishing the download and after the download was finished, the firmware file wasn’t visible, I had to refresh the dialog window to show it.
    Now it is all dandy.

    If any part of it confuses you, ask a buddy. Sometimes it takes more than one set of eyes to see/think what was missed.

  • Terry

    I was having trouble getting the “device not eligible” message when I went to restore 3.1.2 firmware from the link in this post.
    I put this down to two things: either your ECID isnt backed up via cydia, or the trick with the hosts-file didn’t work.
    I found I had to add a line for “” before it would work.
    if that doesn’t work, (windows7) do a ‘ netstat -f ‘ from a cmd prompt while itunes tries to verify, and see which apple domains are listed.
    You may need to clear the dns cache ( ‘ipconfig /flushdns’ ) or itunes might still try to use the offical server.

  • Mitchell

    I’ve restored my iphone that many time that I don’t even know what firmware it came with XD I guess I must have accidently tapped “make my life easier” one time lmao, coz now I have 3.1.2 running succesfully :DDDD

  • Josh

    Just worked flawlessly for a 3.1.2 to 3.1.2 restore.

  • Just attempted this to go from 4.0 to 3.1.3. Didn’t work.

  • mannix

    dear Sebastien.

    i have my iPhone 3GS, it was 3.1.2, and it was BJ b4, it was working b4, and someday later my phone lost my Wifi, now i update to 3.1.3, and i cant use cyida anymore, so what can i do??? plz help

    my phone
    Austrilan Iphone
    model: MC131X
    Modem Firmware: 05.12.01
    version 3.1.3(7e18)
    ICCID: 8961-0610-0078-8157-833

  • Marky D


    Please note* Your phone will be carrier locked and there’s no solution until a new one comes out!!

    I followed these instructions and it worked perfectly! I even have an untethered jailbreak!

    Word for word I just copied and pasted another comment:

    Memnock said:

    For anyone who can downgrade, but have no carrier and have issues with Irecovery Quickpwn22 is an easier solution. This is from gaetanospqr’s post on modmyi:

    “first download quickpwn22 and unzip to a folder or desktop. I’ll tell you when to use this, this will get you out of recovery and give you your officalcarrier.

    Down grade to a downloaded custom 3.1.2 ipsw, open itunes plug your phone in and put your phone in dfu mode not recovery mode, hold sleep and home 10 seconds let go sleep and contiue to hold home 10 seconds till a pop up on itunes tells you you’re in recovery mode and need to restore in order to continue,

    hold shift and click restore same time navigate to custom 3.1.2 ipsw file and restore when it’s done you will get an error 1015 or 1014, that’s ok that means you’re backed up on cydia and it’s communicating, the you will be inrecovery mode where you will see disk and connection cord on screen, just click shift and restore and insert custom ipsw file again hit restore.

    same error message 1015 will appear, now start quickpwn 22 while your still jacked in on itunes, it will give you a message that says hold sleep and home for 15sec then let go of home and continue to hold sleep for 2 seconds, this will get you out of recovery and your officialcarrier back, next run latest rc3 blackra1n jb, and it’s done~! downgraded to 3.1.2 with firmware 5.12.01 and official carrier with jb”

    This is what I did to downgrade my 3GS and get my carrier signal back.

  • sarah

    what the hell is cydia and how do i get it?

  • justin

    this works thanks lol but now my cydia shows shsh saved for 3.1.2 and 3.1.3

  • Dimang

    Can anyone help me clear with this I have iphone 3gs and accidentally restored to 3.1.3 and now am in Baseband 05.12.01. But think I have SHSH, I use to see in on the Cydia home page. Can I down great? Can I JB and Unlock when the new JB released? Hope someone can help me, thanks

  • Munaz

    Hey Dimang,

    Yes you can JB the iphone 3GS with spirit. its the perfect one for the job and thanks to Comex!!!
    after that you can downgrade and than use fuzzy band to downgrade your baseband and use blackra1n to unlock.

  • Munaz

    BTW all you cannot use fuzzy band or unlock the phone if you have new iboot. if you have MC model than your fucked up..
    just wait for the geohot to release the unlocking tool. It will be out very very soon..

  • Dimang

    Hi Munuz,

    Thanks but every time I jailbreak with spirit I got the error code1.So what is the matter.Now my iphone stuck at the emergency call. And I saw there is the requirement from Spirit the iphone that have this kind of problem and not be jailbroken. Can’t it?


  • Asfand..

    Sir , my brother accidently upgraded my iphone 3g, from itunes…. I was locked, i jail broke it from market… But now the prob is its not detecting any sim…. It says sim not installed…??? Now what shud i do…??? It has a bootloader 6.4…. Give me your expert opinion about it… Thanks…????

  • Chris McOmber


    What’s up my Avocado brother! Found your site trying to downgrade from 3.2 to 3.0 on an iphone I am trying to repair. Hit me back and let me know how you are and when you think I will see your ass again! I don’t have Facebook anymore so email is my only contact aside from a phone call. Talk to you soon!

  • Safa

    downgrade from 3.1.3 to 3.0 worked for me thanks to you :))

  • arsalan

    hi there nice article…
    im having troubles…i followed all the steps mentioned but in the end itunes just says “This firmware is not eligible”
    what should i do????


  • plonka2000

    I get the same error “This firmware is not eligible”.
    Tried on a Mac and a PC.

    Can anyone provide a workaround or help?

  • CwK

    Thanks for the info and tutorial…!

  • Anonymous

    can ANYOne tell me why whenever i download 3.1.2 firmware, then run either itunes + shift key or using redsn0w>Browser. when it comes to either LF or opening my 3.1.2 firmware EVERYTIME all it does is open other files inside that folder. like a Flush_all,fseventds,BuildMenfesto.plist, Kenelcache.release s518900x, restore_plist???
    WHAT AM I DOING WRONG HERE ??? Plz email me how to work around this
    could someone plz email the IPSW I need with 3.1.2 & how to Open this without it opening all the other stuff inside ????
    PLZ PLZ PLZ be VERY helpfull in getting my 3g working again.

  • Anonymous

    NEED help with IPSW file EVERYTIME I try to itunes+shift & browser windows open up to look for my 3.1.2 firmware, I try to open it & ALL it EVER does is open to other files inside it??? What Am i doing wrong here ??? really like to get my 3g working again

    See comments below to plz ???
    PC user

  • Anonymous

    can ANYOne tell me why whenever i download 3.1.2 firmware, then run either itunes + shift key or using redsn0w>Browser. when it comes to either LF or opening my 3.1.2 firmware EVERYTIME all it does is open other files inside that folder. like a Flush_all,fseventds,BuildMenfesto.plist, Kenelcache.release s518900x, restore_plist???
    WHAT AM I DOING WRONG HERE ??? Plz email me how to work around this
    could someone plz email the IPSW I need with 3.1.2 & how to Open this without it opening all the other stuff inside ????
    PLZ PLZ PLZ be VERY helpfull in getting my 3g working again.
    PC user…