I am Dale Hayter, a Microsoft and VMware certified Technical Consultant.

My blog has been built up over the years from my experience of working on an IT helpdesk and also from being out on-site.

How to Downgrade Apple iPhone 3G Baseband so you can unlock

I jumped the gun when 2.2.1 came out and upgraded. I then found out that you could no longer unlock the iPhone to any network using yellowsn0w.

Yesterday though I found a nifty tool which you can use to downgrade your iPhone 3G to an older Baseband allowing unlock again.

I have compilied all the information together that I have read and made hopefully an easy tutorial to follow below.


First of all you need to be running bootloader 5.8 in order to do this. If you are running 5.9 then sorry you are out of luck.

To find out what version of bootloader you are running then do the following :-

– Download the required files here
– Download MobileTerminal in Cydia
– SSH the files above to /private/var/root
– Open MobileTerminal on the iPhone (Case Sensitive)
– Enter : su
– Enter : alpine
– Enter : chmod 755 BBUpdaterExtreme
– Enter : launchctl unload /System/Library/LaunchDaemons/com.apple.CommCenter.plist
– Enter : ./BBUpdaterExtreme queryversion

You will then get loads of output displayed. You need to find the bootloader version. If you are not running 5.8 then you cannot continue.

When you run the launchctl command the mobile signal drops. You might find that the iPhone reboots after a while. This is normal as Apple have made it do this if the service is not running for a while. If it does just let it reboot and be quicker next time.

– Reboot iPhone
– Enter : su
– Enter : alpine
– Enter : cd /var/root
– Enter : launchctl unload /System/Library/LaunchDaemons/com.apple.CommCenter.plist
– Enter : ./BBUpdaterExtreme update -f ICE2_02.28.00.fls -e ICE2_02.28.00.eep

It will then do the flashing. Once its finished type reboot and you should now be running 2.28. Load on yellowsn0w and should now be unlocked.

I actually found when i did mine I wasn’t quick enough to type the last line and the iPhone rebooted before I had chance. In the end I typed only the update command in mobileterminal and SSH’d in to type in the rest up until then. Then hit enter on iPhone and off it went.

Hope this helps someone.