Disclaimer: I am not responsible for what happens to your phone. It may break, spontaneously combust, or it may hold a grudge against you forever. This will technically void your warranty (though by flashing back to the original SBF before you send it back they would never be able to tell).
——————
UPDATE 2011-03-29: The official Android 2.2 is out. Commenters confirm if you already have 2.2 you can apply the vulnerable recovery sbf file from here instead of the leaked 2.2 SBF and apply CM6/7 over top in the same fashion as the rest of this guide. (thanks, Jeremy)
——————
This step by step guide should provide a failsafe way of flashing your Motorola Milestone with Android 2.2/2.3 for the Telus mobility network. The steps will be almost exactly the same for any other carrier, you’ll just have to swap out the Telus specific details for your carrier. If you are planning to install a mod, the only step you’ll need to change is the “change baseband” part. (Telus was used as the case study simply because that’s where my phone is from). The guide also explains how to install the unofficial Cyanogen Mod. I highly recommend using Cyanogen Mod (or another mod) in order to avoid many bugs and annoyances in the leaked Android 2.2. If you run into any problems, have any feedback, or even would like to ask questions before you start, feel free to leave a comment at the bottom or email me. ([dan @ my lastname dot ca])
In my personal opinion, it is extremely difficult to ruin your phone doing this. However, there is always the possibility, and I make no personal guarantees that your phone will work correctly after this. Should you run into any problems, please do contact me. The phone can always (unless something extremely unexpected happens) be reset to the stock ROM.
Last Edited: 2011-03-29 at 15:18:55 Read the entire guide before starting.
1) Ingredients
- An SBF flashing program.
- RSDlite (v4.5.3 or higher) for windows
- I cannot provide the link as I’m not sure on the legality of distributing it. Google it.
- On windows, you will also need the USB drivers
- http://www.motorola.com/consumers/v/index.jsp?vgnextoid=bda09ec8009a0210VgnVCM1000008806b00aRCRD
Find the link Motorola 4.8.0 Driver with MotoConnect*
- http://www.motorola.com/consumers/v/index.jsp?vgnextoid=bda09ec8009a0210VgnVCM1000008806b00aRCRD
- sbf_flash for linux (and maybe Mac? Can anyone confirm?)
- RSDlite (v4.5.3 or higher) for windows
- Android 2.2.1 leaked .sbffile.
- Can find at: http://groupoften.wordpress.com/
- Or directly (Telus): http://www.multiupload.com/5S2CYGP3VW
- Androidiani OpenRecovery
- Just download latest
- http://code.google.com/p/androidiani-openrecovery/downloads/list
- (Optional) Cyanogen Mod
- Download latest CM7 ROM and gapps
- http://android.doshaska.net/cm7
2) Prepare everything on the SD card
Unzip the Androidiani OpenRecovery to the root of your SD card. This should add the following to your SD card:
OpenRecovery/update.zip
(Optional) Put the cyanogenmod zip file and the gapps zip file in OpenRecovery/updates/ folder
2.1) Create a script to remove the recovery ROM check
Create a file OpenRecovery/scripts/removeRecoveryCheck.sh with a text editor.
Inside the file add the following line:
rm -f /system/etc/install-recovery.sh
Make sure that if you’re using windows the file is actually a .sh and not a .txt as windows likes to make them. You can ensure this by enclosing the filename in “quotes” when saving.
3) Flash the SBF file
Now you must flash the .sbf file to your phone.
- Shut down your phone
- Plug your phone into the computer, and as it boots up hold down the camera and volume upkeys
- This will boot you into bootloader mode.
- Run your SBF flashing program. Be sure to read the next step before you execute this so that you know what to do when your phone reboots.
- On linux with sbf_flash, in a terminal type
./sbf_flash <SBFFILENAME>.sbf. Don’t forget to allow executable permissions first (chmod +x sbf_flash) - On windows you’ll have to figure it out for yourself, I don’t remember the exact procedure but it’s a graphical interface so it won’t be hard to figure out. It’s something as simple as locate the file and click start.
- On linux with sbf_flash, in a terminal type
- NOTE 1: (read below). Wait for the phone to reboot (this may take 5 minutes or so), when it does hold the camera button down. This should boot you into Recovery mode.
- Some phone require you to hold X button instead of Camera to get into Recovery Mode.
-
- If you miss this step and let the phone reboot, begin section 3 over again.
NOTE 1: You now have a basic install of an Android 2.2 beta on your system. Theoretically, you can stop here, but I strongly recommend you install a mod (herein, Cyanogen Mod is explained) to remove some bugs and avoid some annoyances with the 2.2 leak. At the very least, I recommend you at least follow the instructions below to remove the recovery check. If you choose not to, your phone will re-flash the recovery partition and you will not be able to root/use OpenRecovery/install mods/do any other mods without restarting over again.
4) Remove recovery check and load custom rom.
You should now be in recovery mode (A little picture of a phone with a 3D arrow should be on your screen). If not, reboot your phone and hold in the camera button as it boots up. This will put you in recovery mode. If there are any problems getting into OpenRecovery, it is likely you didn’t correctly remove the recovery check. Start over from the beginning.
- Hold volume up and press camera to get to the menu.
- Use the d-pad on your keyboard to select
apply sdcard: update.- This will launch you into what is called OpenRecovery. If something glitches your phone may reboot, if it does, hold in the camera button and try again.
- You can now close the keyboard and use volume up/down to move items, and camera to select an item.
- Use the volume up/down buttons to select
run script, then press the camera button. Then run the script you made in an earlier step (removeRecoveryCheck.sh). This will remove the script designed to check the recovery partition of the phone and reflash it if it notices a change. The recovery partition we flashed has a vulnerability in it which allows us to run this OpenRecovery. Now select “Go Back”. If you choose not to install a mod (again, I strongly recommend you do install the mod), you can stop here and select “Reboot System”. Else, continue on. - Wipe your phone. Select
Wipe Dalvik Cache,Wipe Data / Factory Reset, andWipe Cache Partition. - Select
Apply Update- Apply the CM mod
update-cm-<SOMEVERSION>-Milestone-signed.zip - Apply the Google Apps
gapps-hdpi-<SOMEDATE>-signed.zip - Select
Go Back
- Apply the CM mod
- Do all three wipes again. (Dalvik, Data, Cache)
- Select
Change Basebandand selectTelus.zip
You’re done!
If you have found this guide useful, please consider pressing the +1!
Well Daniel, you guessd right all the way. I now have 5 x 5 bars. The previous version must have been a European version all right. At any rate all’s well so far. When you have some time perhaps you could tell me how to get the CM7 update into the phone now. I can’t thank you enough. People like me would be completly lost without guys like you looking out for the “little” guy. lol. thanks again.
I’m glad everything has worked out for you. The CM7 update is fairly straight forward (and you can always go back). If you’ve already applied the remove recovery check script, its as simple as putting CM7 and GAPPS in the OpenRecovery/Updates folder, wiping your phone, and applying them (and don’t forget the change baseband part). Basically, you can start at the fifth step in the fourth section in this guide “Wipe your phone…”
If you didn’t apply the script, start at the top. If you have any specific questions before your start, definitely let me know and I’ll try to clear things up!
Thanks Daniel. I’m afraid that does not make much sense to me. lol. I didn’t apply the script because I don’t know how to write it. I don’t know what you mean by “wipe” the phone. “baseband”?? Greek to me. I also found that one doesn’t use “volume up” to the menu or recovery. I had to use volume down. I wish there was an easier way. You would think in this day and age….
Hi Allan,
The point of the guide is that you don’t need to understand what anything means, just follow the steps from the beginning. You’ve already made a comment:
“I opened Notepad. Inside I pasted this line rm -f /system/etc/install-recovery.sh, then I named the “file removeRecoveryCheck.sh” . I would then copy the file into OpenRecovery/scripts/ ON MY PHONE?”
To which I responded you were correct (albeit, accidentally at the wrong depth). Sounds like you understand perfectly, but you’re nervous. The guide should take you through everything step by step. If you mess anything up, use RSD Lite to go back to the Telus 2.2 SBF you’re currently using and you should be fine! You can then leave me a comment on anything that needs to be clarified.
Cheers!
Hi. I just reset my Milestone to stock Telus 2.1 so that I could apply the official 2.2 update. When reverting back to 2.1 RSD Lite worked just fine. I then planned to install CM7 over 2.2 and hoped to use this vulnerable recovery to do so, as you noted in the update.
So I started my phone in the bootloader and started RSD Lite and selected the file. However, when I try to start RSD Lite gives me an error: “Failed flashing process. Failed flashing process. Error processing flash file (0X700F); phone connected”
When I check the error log, I see the following:
“17:25:52, May 15, 2011
Line: 565
ERROR: Error processing flash file.
File: D:GitProjectsReleaseshdt_windows_flashflashcodeflashdllFlashHdlr.cpp
Device ID: 0″
Any suggestions would be most appreciated.
Thanks!
Hi David,
RSD Lite gave you that error when trying to flash what SBF file? The official 2.2 SBF or the vulnerable recovery SBF?
Make sure the SBF you have is not corrupt, try downloading it again.
RSD Lite also tends to have odd behaviour with long file paths. Try placing the sbf in the root of your C drive or something to rule this out.
I’m not entirely familiar with the RSD Lite program, unfortunately, it seems to be where most of the questions are directed.
Thank you for writing this document. I finally have a phone that doesn’t behave like digital molasses!
I went with CM7 after following the instructions, unfortunately I can’t seem to receive MMS messages. They show up, but when i go to download the data the download always fails. Anyone else having this issue?
I was wondering if this will work from an updated 2.2 milestone? I already got the update from motorola, so I’m running Froyo but i’d like to flash cyanogenmod if i can.
I was able to get Cyanogen mod 7 running on my Milestone which had been updated to 2.2.
See “UPDATE 2011-03-29″ at the top of this page.
Thanks for your advice.
I tried it and it worked without a hitch!
Same here! It works great!
FINALLY I have a stable phone! I was scared to attempt this, I thought it would be way more complicated. Then I found these instructions, and everything went perfectly! I still don’t fully understand exactly what I did, but hey, it worked! lol. Thanks for the guide!
Hi Daniel,
Thanks for the instructions. I had jailbroken ipods/iphones before, but got a milestone 8 months ago. After praying that Telus would release 2.2, they did a few months back. Peformance sucked. Freezeups, hangups, reboots, you name it. Not to mention all the bloatware that motorola throws on there. Never had any free space even with most apps on sd card.
Finally got the stones to follow your instructions and i’m using the latest release with CM7. The only other thing I had to do, since my phone had the latest bootloader, was to hold down the X button instead of Camera to get into Recovery Mode after flashing SBF.
My phone is so stable, and I’m happy that i’m running what looks and acts like 2.3! And tons of internal free space! Should have done this a long time ago!
Thanks a lot!
and PS, I love the on/off old tube tv animation. I was pissed that my friend had it on his new Nexus S, and had an app that would do almost the same thing, but it used to freeze my phone. Built in now!
Now i’m gonna go play with my phone for a while. Tons of stuff to customize.
Glad to hear this is still useful as it’s a little outdated now. Perhaps I should update it when I grab some free time
Cheers!
Hello Daniel and all posters.
I finally got the nuts to go for this and am now running CM7 on my Telus Milestone.
I had updated it to 2.2 via the Moto update but discovered after doing so the phone
kept crashing. Discovered your tutorial and decided I had to give it a go.
Did all this with my Ubuntu OS. It was a little intimidating and some of your instructions
were above my skills. But with some help from a Linux pal I succeeded.
Now my daughter has a new and improved phone.
I feel I will have no problem keeping this phone up to date from now on with any further Cyanogen releases due the the fact this blog is so awesome.
Thank you,
Gil
If you do have any further problems, please let me know and I’ll see if I can help.
If there are any sections in the guide you’d like to suggest that I should clean up for clarity, please let me know. I’m always glad to hear feedback.
Hello Daniel
If I want to update to the newest CyanogenMod 7 which is currently: CM 7.1.0 (2.3.7) update-cm-7.1.0.09.30-Milestone-signed.zip. What are the steps to do this?
Thank you,
Gil
Hi Gil,
You should be able to start at step 4 after you’ve put the .zip file in the appropriate place (OpenRecovery/updates folder on SD card) since you already have a previous version running.
In order to avoid possible glitchy programs and bugs, I’d recommend doing a wipe (dalvik, data, and cache). You can backup your daughter’s text messages and call logs, and any other application data (games?) using titanium backup if you’d like to keep these.
If you have any questions, please feel free to ask me ahead of time.
Hello Daniel
Thanks for your reply.
Did as you suggested and just did the last step 4.
Worked like a charm.
Thanks so much. Daughters happy and so am I.
A great feeling of accomplishment.
Till next time. Take care.
Gil
Well I finally took the plunge. I’ve read this forum several times over the past few months and while my Milestone has been complete crap since the 2.2.1 update, it wasn’t until tonight that I finally got fed up with the issues with it (I basically have only been using my phone as a phone because of the horrible performance)… I was unable to answer a call yesterday because the swipe to answer wouldn’t answer the call, it was the last straw.
Took the plunge. And followed your instructions and instructions on post 21, and between the two I was able to muddle through it. A couple spots I had to figure it out on my own – like when RSD was at 100% Execute in the progress, the next column said In Process… and one of the columns said to manually turn on the phone… Well, the phone was still on… And I didn’t see the PASS that was mentioned in post 21… So I manually turned off the phone, turned it back on and it went back into the OS. So I went and turned off the phone again and then held the UP on the directional pad and Power, which got me back going again.
In any case, it’s done and working and seems to be much more stable.
I have only one question… Is there anything I need to avoid doing with CM7 installed that would screw it up…? I’m thinking of updates to Google-based apps from the market and so on…
Is there any tweaks (for battery life or performance) or apps that anyone suggests that I install to the base CM7 to make using it better? I still have to poke around a lot in the interface… There is much different from 2.2.1!
CM7 may have prevented me from finally throwing this Motorola PoS against a brick wall…
THANK YOU THANK YOU THANK YOU!
Hi WDM, welcome!
I’m glad other comments have helped you through my lack of Windows experience. This post needs some re-writing, as I have said a few times, but I likely won’t get around to it until September due to deadlines.
Doing updates for any of the Google products is perfectly fine. There is nothing special you need to consider while running CM7 on your phone (aside from the plethora of new options
).
As far as applications for performance goes, I had much better luck with LauncherPro over the ADW launcher that CM7 comes with, and a friend of mine had the same experience. It’s easy enough to install, and if you don’t like it, uninstall it and ADW will be back
Fantastic step-by-step effort here. I had rooted and installed my Android several times trying to update it, but couldn’t access the Telus network. This key line:
“Select Change Baseband and select Telus.zip”
Was never mentioned in any of the previous roots/installs I did.
Many thanks!
Hey Daniel,
Just wanted to say thank you so much for these instructions! I’ve been too chicken to flash cm7 on my milestone and I wanted to wait and see if motorola would release an update to fix the bugs in the official froyo before installing that but they never did. so, last week i decided to try and update to the official froyo to give it a shot. boy was i pissed off though…the motorola software detected my phone but told me i had to update the software, which i did. then when i started it, it didn’t detect my phone anymore. i kept trying to figure out how to get it to detect my phone. it was so frustrating. that was the last straw….i quickly pulled up your webpage and away i went. I should’ve done this LONG LONG ago…the whole process took less than 30 min! prob more like 15-20min, wow! thank you so much for your clear instructions!
you the man haha!
btw, just wondering, do you find that the battery meter drops from 30-20% in an instant? i’ve already calibrated my battery but it still does that. the strangest thing is it only does that if i turn off my screen when i’m between 30 and 20%. if i keep it on n use it, it’ll slowly drop 1% at a time like normal.
it’s all good though. the battery life on my milestone’s improved so much that that 10% i lose between 30 and 20% isn’t even that big a deal anymore haha.
Thanks again Daniel!
Hi,
Just wanted to say thanks for your guide; it really helped with my myriad of issues with this phone.
I don’t have a Milestone but a Defy … I bricked my device yesternight but I see that I can go back with a SBF from any other provider and install CM7 for Defy. The problem that I got once I was with CM7 was that Telus network didn’t work at all. Could it be a baseband problem?
That sounds likely.
Hi Daniel and others ,
Hi, I have a United Kingdom milestone 1 , and I need to use it in argentina with 3g on 850-1700-1800 , but it is working only in Edge .
If I apply the Cyagencm7 and all the process explained here, then change the baseband from the menu to my bands, will it work for you ? , I think that we have same bands than US and Canada. thks ,Marcelo.
It should work just fine if you change the baseband to the UK one.
Daniel – thank you so much for this. Just finished with my wife’s milestone and it’s now running great. She had the OTA 2.2 update already and was rooted with Superoneclick. Entire process was very straight forward and easy. Kudos to the fellow that included the different methods of entering into recovery though as the up volume + camera buttons didn’t do it for me. I really appreciate all the work you put into this and now it’s on to trying to increase the internal storage available for apps. Apparently you can partition the SD card a certain way and Android will see that partition as internal storage. Cheers and thanks again!
Just thought I’d describe how I finally got CM7 on my Telus Motorola Milestone, and it works!
1) Spent about 8 hrs trying to flash an sbf and install a mod, but to no avail. Followed various instructions. But the next day I tried again and here’s what happened.
2) Deleted OpenRecovery folder and update.zip from sdcard root and copied OpenRecovery and update.zip from OpenRecovery-3_3.zip ( I think its Androidini ) to the sdcard root.
3) Merged OpenRecovery folder from OR1.46_extfs_mmcfix_update.zip with the one at sdcard root.
4) Used RSD Lite 4.9 to flash the sbf in GOT_TELUS_2_2_1FULL.zip. Yes, this includes Froyo 2.21, but it was the only way I could get an sbf recovery menu to work. But when RSD Lite started to reboot the phone I held the camera button to get into the recovery menu and also pulled the USB from the phone.
6) In recovery I ran the script in Disable_recovery_check_by_OTA.zip, did a nandroid backup, wiped Dalvik, reset to factory, wiped Cache, then applied update for:
– update-cm-7.1.0-11.10.08-odexed-Milestone-signed.zip
– gapps-gb-20110828-signed.zip
I was shocked to see the CM7 logo at boot. But it was worth 2 days of fiddling around.
Followed your instructions and they worked perfect. Only thing was the market kept crashing but forcefully changing the language in the system settings fixed that. Thanks!
Worked great with my Milestone, thanks. The following combination worked like a charm:
RSD Lite 4.6.rar
OpenRecovery-3_3.zip
GOT_TELUS_2_2_1FULL.zip
update-cm-7.1.0.1-Milestone-signed
gapps-gb-20110828-signed.zip
This was done using a UK originated Milestone, from Android 2.1. The booting combinations are
Drop to bootloader for flashing: hold both camera button and volume up
Drop to Recovery mode: hold camera button and at the recovery logo: hold volume up and then press camera button
Thanks for this writeup, man.
Pingback: Cambiarle la ROM al Milestone en Argentina at Tristán Grimaux
Thank you so much! I have had a telus Milestone almost 5 months no other Guide has led me to where i wanted to get, i would always get satellite incompatibility, or the broken telus moto stalk apps and usb problems. very clean install thank you very much!!!!+++
Thank God for this! Motorola can fuck off with their crappy late unstable updates.
I had pretty good luck with cyanogen mod 7, with each update being a bit more stable, however I think it is still a bit much for the old milestone. they run good at first but start to slow and lag and crash after awhile and installing a handful of apps.
cyanogen mod 6 works amazing though. much better than the piece of crap update motorola shipped a year and a half late. am currently running 6.12.08 pre final. dont know if there will be a final final version out, or if any further improvements will be made though. hopefully future versions of 7 will be much more stable on this device, but i think the shoddy motorola hardware is to blame.
Pingback: Frage zum flashen :confused: - Android-Hilfe.de
Well. Your guide worked NO problem AT ALL! I was quite happy. I was hoping by doing this update, it’d remove my simlock.. but it did not.. Its okay. I’ll just cave in and buy one unless anyone knows how to break it.
Pingback: European Motorola Milestone Getting Android 21 Update You Not So MuchMy Blog | My Blog