Since Motorola abandoned the Milestone a long time ago, the only way to enjoy an (almost) up-to-date Android experience is to install a custom ROM. In this post I’ll explain how to root your Milestone, backup your data, install CyanogenMod 7 and restore your data again.
First of all, the usual warnings:
- If you don’t know what you’re doing, don’t do it.
- If you mess up your phone (you cannot permanently brick a Milestone without a lot of knowledge and some serious bad faith, but you could easily lose all your data), don’t blame me or mr. muh, and don’t say I didn’t warn you.
- If you think you made a mistake and you don’t know how to continue, then don’t! Connect your Milestone to the wall charger and ask somebody for help; you could, for instance, start up an IRC client, connect to the freenode network and join #milestone or #milestone-modding. I (pontomedon) am usually there, as well as there are a lot of people who know a lot more than i do.
A few general things about the Milestone:
- Motorola signed our boot (contains the Linux kernel) and recovery (contains the recovery) partitions, so we cannot replace either of those with custom built images. CyanogenMod 7.1.2 for Milestone (the current version at the time of writing) runs Android 2.3.7 on the original Motorola boot partition (=kernel) from Android 2.2, which is possible because of a number of advanced hacks i cannot explain in detail here (partly because they’re outside of the scope of this article and partly because i don’t understand them myself).
- In case of the recovery the situation is similar, we cannot replace the recovery partition by a custom recovery, but there is a workaround to get all the functionality of a custom recovery: Due to a bug in the original Android 2.0 recovery code, it is possible to execute modified update.zip files, and it is also possible to create a special update.zip to extend the stock recovery with a lot of special features (this is exactly what OpenRecovery (OR) does, and it is also what the original root-exploit did). By the way, for those who are interested, the bug was instantly fixed after the Motorola Droid (the original, Verizon Wireless version of the Milestone) was rooted, but at that time the Milestone was already shipping with the bug on board.
- From a not-rooted phone, the only way to replace the recovery partition with the vulnerable Android 2.0 recovery is to flash an SBF file. An SBF file is a proprietary Motorola format for mobile device images. Flashing an SBF file is done with RSDLite (a Windows only tool by Motorola) or sbf_flash, a Linux/Mac command line utility created by a member of the Droid/Milestone modding community, [mbm]. I’ll explain the process with both tools.
A quick overview on what we’ll be doing:
- Install the recovery partition from Android 2.0, because this version contains the bug mentioned above.
- Install OR (consisting of an update.zip and a directory with a lot of scripts) on the SD card.
- [Optional]: Prepare your SD card for Apps2Ext.
- Backup your data.
- Install CyanogenMod 7 for Milestone.
- Restore your data.
- [Optional, later]: Update your CyanogenMod to the latest version.
Before you continue: Make sure your battery is fully charged, you won’t be able to charge it while you’re booted into the bootloader or the recovery, and recovery eats A LOT of battery (it will be empty after two or three hours, so don’t take too much time to finish!).
-
Install the “vulnerable recovery”
There are two versions of this step, depending on your operating system. Windows users have to do part A, Linux and Mac users have to do part B.
- Flashing with RSDLite (Windows)
- Download the vulnerable recovery to a directory of your choice (on your computer).
02adc6275a555a3c7dafda399998b109 vulnerable_recovery_only_RAMDLD90_78.sbf
- Download the Motorola Device Driver and RSDLite 5.6 and install both.
de922742e1940283cf8f2af745e7e5d8 MotoHelper_2.1.32_Driver_5.4.0.exe eddaedf5590fdae8d6189cfecae0c721 RSDLite5.6.msi
- Reboot your Milestone into bootloader mode by turning it off and holding the DPad-Up button while turning it on again. You should see some white-on-black text saying “Bootloader” now. It would be a good idea to write down your bootloader version now – it will be one of 80.89, 90.72, 90.73, 90.74 and 90.78.
- Connect your Milestone to your computer and wait until Windows has successfully installed the driver.
- Start RSDLite – the phone should be listed in the lower part of the window; model should be “S Flash OMAP3430″ and status should be “Connected…”. Click on that line, then the “Device Properties” section should be populated with information about your phone.
- Open the SBF file by clicking the “…” button; the “File Properties” section should be populated now.
- Click the Start button and wait until the phone reboots. RSDLite will, after a while, complain that you should manually power the phone on, but you can safely close RSDLite as soon as your phone is booted into Android again (ignore any warnings when closing RSDLite).
- Flashing with sbf_flash (Linux/Mac)
- Download the vulnerable recovery to a directory of your choice (on your computer).
02adc6275a555a3c7dafda399998b109 vulnerable_recovery_only_RAMDLD90_78.sbf
- Download sbf_flash 1.24 and save it in the same directory as the SBF file. You might also want to check here for a new version of sbf_flash.
db8afd24f7a0dc6d3d78556dec811694 sbf_flash
- Reboot your Milestone into bootloader mode by turning it off and holding the DPad-Up button while turning it on again. You should see some white-on-black text saying “Bootloader” now. It would be a good idea to write down your bootloader version now – it will be one of 80.89, 90.72, 90.73, 90.74 and 90.78.
- Connect your Milestone to your computer.
- Open a terminal emulator, cd to the directory with the SBF and type (as root)
chmod +x sbf_flash ./sbf_flash vulnerable_recovery_only_RAMDLD90_78.sbf
- Your phone should reboot automatically after the flash is done.
- Download the vulnerable recovery to a directory of your choice (on your computer).
-
Install OpenRecovery
- If there is a file called update.zip on your SD card, please delete it to make sure you don’t accidentally install a wrong update.zip in step 3.
- Download OpenRecovery v1.46 and unzip the contents of the ZIP archive to the root of your SD card. For your convenience, this download contains the merged contents of two ZIP archives (OpenRecovery v1.46 and an update to it).
bae7b6eaf9c1ee31a8ba5c2085ad7f55 OpenRecovery_v1_46_SHOLS_inkl_ext_mmcfix_parted_update.zip
- You should now have a file called “update.zip” and a directory called “OpenRecovery” on your SD card.
How you can boot into recovery depends on your bootloader version. For the bootloader version 90.78, the hotkey is x (the letter x on your hardware keyboard); for all other bootloader versions, the hotkey is the camera button. You need to press and hold the hotkey while you turn the phone on. Once you see the triangle with the exclamation mark in it, you can release the hotkey. Now press and hold the volume-up button and press the camera button to enter the actual recovery menu. If you see yellow text, you’ve done it right. What you see now is the stock recovery menu, to enter OR you have to select “apply sdcard:update.zip” (navigation is done with the DPad on the hardware keyboard, DPad-Center acts as enter). After a few seconds you should see a different menu, and the top line should say “Motorola MILESTONE Open Recovery”. If not, then something might have gone wrong in step 1. If yes, congratulations, you’ve successfully entered OR!
OR provides a more comfortable method of navigation, you can now use the volume buttons to navigate and the camera button to select. The first thing you should do is selecting the correct keyboard layout for your hardware keyboard:
- Enter the “Settings/Keyboard Layout” menu and select the correct layout for your keyboard.
-
Prepare for Apps2Ext
First of all: This step is completely optional, but it will dramatically increase the available space for installing apps on your phone. If you don’t care for more space, continue to step 4.
Still here? Good! You’ll need a few things:
- More than 1GB of free space on your SD card (actually, 1GB is the absolute minimum, the more, the better, but i suggest at least 3GB).
- Basic knowledge of Linux and partitioning, as you could loose all the data on your sd card if you don’t know what you’re doing – don’t just blindly type the commands, use your brain!
- [optional but recommended]: A backup of the data on your SD card.
We’ll now partition your SD card, such that it contains a FAT32 partition for holding your regular SD data (like pictures, music etc) and an ext3 partition which can be used by CyanogenMod for your apps.
Update (2012-01-21): I received a few reports of errors with tune2fs, and I’m happy to tell you that this issue is fixed. Nadlabak (the creator of CyanogenMod for Milestone) has provided an updated tune2fs binary (a statically linked one, in contrast to the old, dynamically linked one) which i have included in my OpenRecovery v1.46 download. Please download the updated version if you ran into problems with tune2fs before. After rebooting into OR you’ll have to unmount your ext partition before you execute tune2fs:
umount /sddata
For those of you who just started with this guide: you should already have downloaded the updated version in step 2, so you can safely ignore the last paragraph.
- If you’re not in OR, reboot into OR as described in step 2.
- Select “Console” to enter the OR console and verify that you selected the correct keyboard layout. If the layout is not correct you can type “exit” to exit the console and return to the OR menu, where you can change the layout (settings/Keyboard Layout).
- Unmount your SD card.
umount /sdcard
- Start parted, a partition editor (inside parted, the backspace button doesn’t work, so take extra care not to mistype anything!).
parted /dev/block/mmcblk0
- Print the partition table of your SD card.
print
- You should now see something like this, and it’s important that you write down a number now: the exact size of your SD card. There should be a line like
Disk /dev/block/mmcblk0: xxxxMB
(in my case: 7969MB). If you have more than one partition (i.e. more than one line in the table), please stop here and ask someone for help, as you don’t seem to have formatted your SD card from inside Android.
- Resize the FAT32 partition to leave 1GB of free space at the end of the SD card. The resize commands takes 3 arguments: The partition number (1), the new start of the partition (the start of the SD card, 0MB) and the new end of the partition (the size of the SD card – 1024MB, 6945MB in my case).
resize 1 0MB 6945MB
- Create a new ext2 partition (parted doesn’t support formatting to ext3) at the end of the SD card, using all the free space (1024MB). The mkpartfs command takes 4 arguments, the type of the partition (primary), the filesystem (ext2), the start of the new partition (we want it to start where the fat32 partition ends, so 6945MB in my case) and the end of the new partition (this is the size of the SD card, 7969MB in my case).
mkpartfs primary ext2 6945MB 7969MB
- Verify that everything’s ok, your new partition table should look approximately like that (actually that picture shows the partition table after the ext2 to ext3 conversion, at this point the filesystem of your second partition should be ext2):
print
- If everything went well, exit parted:
quit
- Convert the new partition to ext3:
tune2fs -j /dev/block/mmcblk0p2
- If you encountered no error messages you have successfully partitioned your SD card! Now exit the the console and return to the OR.
exit
Update (2012-01-17): To make use of this partition, you’ll have to install your apps to “phone memory” from CyanogenMod. Under the hood, your “phone memory” is extended by the 1GB ext3 partition on your SD card, but if you install an app to your SD card from within Android, it will go to the FAT32 partition (which we don’t want). CyanogenMod even offers a setting to always install apps to internal memory: Settings -> CyanogenMod settings -> Application -> Install location -> Internal. Another advantage of having an app on internal memory (i.e. on the ext3 partition) is that the app will be available even if your phone is connected to your computer. If the app is installed on the SD card (i.e. on the FAT32 partition) it will disappear as soon as you connect the phone to your computer.
-
Backup and Root Phone
Be sure to have at least 1GB of free space on your SD card for this step (If you’ve done step 3 the free space on your FAT32 partition will have decreased by 1GB, but you still need about 1GB of free space for the backup!).
- If you’re not in OR, reboot into OR as described in step 2.
- Enter the “Nandroid/Backup” menu and select “Backup All”
OpenRecovery will now perform a nandroid backup, which is basically a full backup of your phone, including the Motorola firmware. If anything goes wrong you can always restore from this point. Nandroid backups are stored in a directory called “nandroid” on your SD card.
- Once the Backup is finished, return to the main menu by selecting “Go Back” twice.
- Root the phone by selecting “Root Phone”.
- Reboot by selecting “Reboot System”.
We have now created an emergency backup, but we’ll now create a second, more user friendly backup using an extremely powerful app called Titanium Backup.
- Download and install Titanium Backup from the Android Market and start it.
- Upon start up, the Superuser app will ask if you allow root access of Titanium Backup, press allow and yes (you might have to restart Titanium Backup afterwards).
- Change to the Backup/Restore tab, bring up the menu and select “Batch”.
- After calculating the different scenarios has finished, click the Run button next to “Backup all user apps + system data”, then click “Run the Batch operation” (this will take a while).
I would also suggest to check whether your contacts are properly synced to Google: Open GMail, select “Contacts” from the drop down menu and check if all the contacts from your phone also appear there. If not, you might have stored some contacts to your phone memory instead of your Google account, I suggest to put them all on your Google account, they’re safer there. You can also use the chance to perform that long-overdue cleanup of your contacts
.Now you can safely wipe (aka Factory Restore) your phone.
-
Install CyanogenMod 7
Installing CyanogenMod is rather straight forward:
- Download the latest version from https://github.com/nadlabak/android/downloads and put it into the OpenRecovery/updates directory on your SD card.
- You’ll also need the latest Google apps (Market, GMail etc); at the time of writing, the current version is 20111216, but you might want to check here if a newer version is available. Download the Google apps zip to the same directory you downloaded the cm7 update to.
- If your current firmware is below 2.2, you need the following two update ZIP files as well: BPSW update, Devtree Update. Just like the other ZIP files, download them to the OpenRecovery/updates directory. If you’re unsure whether your bpsw and devtree are from 2.2 or not, just download those files, applying them twice is not harmful.
- Reboot into OR as described in step 2.
- Select “Wipe Dalvik Cache”.
- Select “Wipe Data / Factory Reset” and confirm that you really want to clear all your data (we backed them up twice, so they’re safe).
- Select “Clear Cache Partition”.
- Select “Apply Update”, select the cm7 update ZIP file and confirm that you want to install it.
By the way, you can ignore the three update files starting with “test-”, those are only interesting for developers. If they annoy you, you can delete them from the OpenRecovery/updates directory of your SD card.
- Select the Google apps update ZIP file and confirm that you want to install it.
- If you downloaded the BPSW Update and the Devtree Update, then apply those as well.
- [optional] If you have enough free space on your SD card you might want to go back to the main menu and make another nandroid backup.
- When you’re done, select reboot from OR’s main menu and enjoy your first boot of CyanogenMod 7 (The first boot takes longer than the following boots, so don’t panic if it takes a few minutes).
- Once you’re booted into CyanogenMod, check if you have 3G connectivity, if not, you might have to select a different baseband configuration in Settings->Device Settings->Baseband selection. Changing the baseband configuration requires a reboot!
-
Restore
- The first thing you have to do is install Titanium Backup from the Android Market again. When you start the app, it will (like before) ask for root privileges, press remember and allow (you might have to restart Titanium Backup afterwards).
- Just like when you did the backup, enter the Backup/Restore tab, bring up the menu and press “Batch”.
- Scroll down to the restore section and select “Restore missing apps with data” and confirm with “Run the batch operation”.
You should now have all your user apps back, but your system app settings are still missing. You could, of course, just restore them all with the according batch operation (“Restore all system data”), but i don’t recommend that, because most of the system settings contain the default values from the Motorola firmware, and you’re better off with the new default values from CyanogenMod. There are a few system apps you’ll want to restore though; and we’ll restore them one by one.
- On the Backup/Recovery tab of Titanium Backup, click the label “Click to edit filters” in the top-right corner, select the “System” radio button in the second row of radio buttons and click “Apply” in the top-right corner.
- For each system app you want to restore, click the app, select Restore from the pop-up menu and confirm that you want to restore “Data only”. Apps that you’ll want to restore are, for instance:
- Bluetooth Pairings
- [BOOKMARKS] Browser
- [CONTACTS/CALLS] Contacts Storage
- [VOICEMAIL] Dialer
- [SMS/MMS/APN] Dialer Storage
- [SMS/MMS PREFS] Messaging
- [USER DICT] User Dictionary
- Wi-Fi Access Points
If you’re not sure you absolutely need a specific system app to be restored, then don’t restore it, because if you miss anything in a week, you can still open Titanium Backup and restore it then.
-
Update your CyanogenMod to the latest version
CyanogenMod is updated quite frequently, I suggest that you check the CyanogenMod download page every few weeks, because you’ll have to install updates manually. It’s a really straight forward task:
- Download the update ZIP file to your SD card, into the OpenRecovery/updates directory.
- Reboot into OR (you can do this by selecting Reboot->Recovery from the power menu and you don’t even have to bother with the stock recovery anymore, CyanogenMod will reboot you directly into OR).
- Wipe Cache Partition and Wipe Dalvik Cache (they contain only data that will be recreated during the next boot).
- [Optional but strongly recommended]: Make a nandroid backup.
- Install the update you downloaded from the “Apply Update” menu.
- Reboot from the OR main menu (this reboot takes longer than normal).
Well. I’m not sure what to say/write as a closing rate, but i hope you have a lot of fun with your “new” Milestone. I’m sure you’ll discover a lot of really nice CyanogenMod features in the next few weeks, so … enjoy!



One question: the step 3 can be done alone on a phone already using CyanogenMod, but with only the original partition (the one showed on picture 1)?
Yes, CyanogenMod will automatically move all the apps on internal memory to the SD-Ext partition during the next boot. I think you’ll have to re-add your widgets though. Remember to move all the apps you installed to your SD card before to internal memory after the partitioning, and set the preferred install location to “internal”.
Hi!
A question about the Apps2Ext: I partitioned my 8GB SD Card, taking 1536MB for the ext3 partition. I see all the large apps installed on the phone memory (Talking Tom Cat, Battleheart [runs much better on CM7 than on FroyoMod], etc.), something that would not be possible before using Apps2Ext, but the free space shows as 197MB used/155MB free. Is this a known bug, or is there something wrong with my partitioning?
Isn’t 1536MB a bit much? Wonder if you manage to fill it up
.
The free space shown in CM is the actual free space on your phone memory (i.e. the flash memory), the SD-ext partition is not taken into account there. I don’t know if this is a bug or the expected behavior, but i agree that it would be nice to see the free space of the SD-ext partition as well.
is it nessesary to convert the ext2 to ext3 ? because tune2fs didnt work for me, also after downloading the (16.12.2011) update for OpenRecovery which adds support for ext2/3/4 filesystem…
but the mod works anyway
I also would like to see the feature added to see how much of the ext partition i used.
Thx for the good tutorial !!
Strange that the tune2fs command didn’t work for you. Did you download the OpenRecovery v1.46 file I linked? That file should already contain everything you need (support for ext2/3/4, parted, tune2fs etc).
Ext2 will work just as well, but journaling adds some security, so i suggest to use ext3.
I’m afraid it didn’t work for me either, and I installed the tools. I got the error message:
link_image[1995]: failed to link tune2fsCANNOT LINK EXECUTABLE
Could you try to completely delete the OpenRecovery directory from your SD card and and download and extract the ZIP file again? (The one i linked in my last answer)
sorry, no change, still the same error :/
To all of you having problems with tune2fs – this issue seems to have been resolved, check step 3 for details!
after umount sd card i type in the order print
i get an error saying Can’t have a partition outside the disk.
What iám i doing wrong?
Could it be that you left out a command? If not, could you take a picture of the screen with the error message?
I think i have done it as discribed
How do i make a sreenshot and send it to you
Unfortunately there’s no screenshot function in OR so you’ll have to take a picture with a digital camera (a second mobile phone?). I’d suggest that you upload it to ImageShack and post the link here.
http://imageshack.us/photo/my-images/26/cimg5579m.jpg/
above the link with the photo from my milestone with the errormessage
Seems as if your partition table is messed up (it seems to contain an entry pointing after the end of the SD card). Backup all the data on your SD card, then you could try a few things: 1) Examine and possibly fix the SD card with a graphical partition editor (e.g. gparted) on a computer. 2) blindly type the resize command (you can use my numbers if you have an 8GB SD card) and then try the print command again. In any case, be careful!
i am stuck in the same situation.
so far i am not quite used to things like that so could you please explain to me what you explicitly mean by examining and possible fixing the sd card with a graphical partition editor on a computer?
That is a bit out of scope here and hard to explain non-interactively. Basically it involves booting Linux on a computer (probably from a live CD), and trying to repair the partition table with GParted. Do you know anyone who can help you with this? Otherwise i suggest that you leave step 3 for now and continue with the guide. You could also try to format your SD card in Android, that might also help.
I have MIUI installed on my Milestone,
to change to Cyanogenmod, can I start directly from step 5?
In principle, yes. But I guess you’ll have to wipe data, so doing a backup (step 4) first would be a good idea, and if you don’t have an SD-ext partition yet I’d start with step 3. You might have to download the OR update or my OR ZIP file with the update applied (step 2) to do step 3, because the regular OR doesn’t have parted or tune2fs.
Hey, when I tried converting ext2 to ext3, tune2fs told me to input somehow “journaling code”, I didn’t know what it was, and I just type a few letters and press enter, nothing happened then. Finally I had to unload the battery and reboot the device.
So what code should I have input?
I’ve never heard of a “journaling code”, do you remember the exact message? what filesystem is reported by parted now? Could it be that you rebooted your phone after creating the partition? In this case you have to unmount the ext partition before starting parted or tune2fs:
1 512B 6945MB 6945MB primary fat32 boot,lba
2 6945MB 7950MB 1005MB primary ext2
That looks good, can you try to remove the OpenRecovery directory and the update.zip from the SD card and download and install the latest OR zip file? It includes a new, statically linked tune2fs binary.
hmm… it seems working when i converted ext2 to ext3 again.
so thank you all the same!
ok great!
one more question.
What’s the difference between ext3 and ext4?
Is it available and necessary to convert to ext4?
This sums it up. Conversion from ext3 to ext4 is currently not possible in OR. If you convert it on a computer, you’ll have to disable a certain feature (“huge_file”) to make it work. All in all, it’s not really necessary; ext3 is sufficient.
I currently buy a MicroSD 16gb C10 to replace the MicroSD 2gb C4 of my phone, i cant get to clone the old MicroSD to the new one, i can backup the fat32 partition, but how i buckup the ext2 partition? you know some aplication that do that (like Norton Ghost) ?
The easiest way would be to access your SD card from a computer with Linux and a card reader. You could either make an image of the whole SD card
restore the image on the other card
and then rearrange the partitions (move the ext partition to the end of the SD card, resize the FAT partition, easiest with gparted). The other way would be to copy the contents of each partition into a tarball
Then you’ll have to manually format your SD card and restore the tarballs back to the partitions:
I need some advice…with regards to openrecovery….I have Motorola Milestone with Bootloader 90.78 and 15G.8B memory card…I started resize (using Androidiani OpenRecovery 3.3) from 0Mb to 14.8GB about 60 minutes ago…I would like to know how long does it usually takes?
This issue was resolved in an IRC session.
What was the resolution? I’m having a similar problem.
Androidiani didn’t work – remove the whole OpenRecovery folder and the update.zip from your SD card, download OpenRecovery from the link in step 2 and extract it to the SD card. Be sure to have a lot of free space on your SD card, the closer you get to the 1GB limit, the longer the resizing will take.
I lost my Micro sd card but my phone is rooted and I have the lates Rom Cyanogenmod 7 (2.3.7), Do I need to do this all over again?
I think you don’t have to. If you used to store your apps on SD card, then one sideback is that you won’t have then anymore, once the card was removed. Of course, any data you had on card was gone to. But Cyanogen remains intact even with no card (poseidon can confirm this).
you’ll need to do the steps 2 and 3 (or only step 2 if you don’t want to use apps2ext). Actually CyanogenMod works fine without OR, but you won’t be able to update, make backups etc, so i suggest you do at least step 2.
Thank you Rafael and poseidon
It would be a good idea to write down your bootloader version now – it will be one of 90.72, 90.73, 90.74 and 90.78.
my milestone shows the bootloader as 80.89.
do i need to update the bootloader, is it feasible?
Regards
Sandy
Also my machine OS is windows 7, neither ubuntu or linux available to me.
Regards
Sandy
no, you don’t have to update your bootloader, i simply forgot to list your version. I’m not sure what key combination you need for entering the recovery menu – volume-up+cam or volume-up+x. I think volume-up+cam will work, but you might have to try both. Would be great if you could report back which combination works, so that I can update the guide.
edit: you can’t even download and burn an ubuntu live cd? But I think I will update step 1 with an RSDLite version for windows users as well, so you can either google it yourself or wait a few days
thanks,
Download RSD Lite 4.9 –
http://www.mediafire.com/?ufxs9lft9q2xwnu(edited by poseidon, 4.9 is outdated, 5.6 is linked in the guide)also process for going into bootloader is Camera+Voluem-Down and then power.
I will use rsdlite, but to flash vulnerable sbf, does the phone need to be rooted and open recovery installed with update.zip.
alternatively i am downloading ubunto and will burn on a CD, will try if above doesnot work.
Regards
Sandy
No, your phone does not have to be rooted to use RSDLite. That would be a chicken and egg problem, because you need the vulnerable recovery to root…
I think your mixing up bootloader and recovery here. Bootloader can always be entered by holding DPad-up while turning the phone on; there will be a white font saying bootloader. Recovery can be entered by holding camera while turning the phone on, then you’ll see a yellow triangle with an exclamation mark. From this screen, you need one of the two key combinations (volume-up+cam or volume-up+x) to enter the actual recovery menu.
Ok, adding the RSDLite version wasn’t as much effort as i thought it would be – done!
thanks, but flashing vulnerable sbf process using rsdlite failed in my case. it does show S flash OMAP 3430. moment i start flashing sbf, i get error after few seconds:
Failed flashing process. PHone[0000]; Error sending JUMP command Device API Error: 0XE0020047 Address….
Regards
Sandy.
Did you install RSDLite to your windows partition (C: in most cases)? I read somewhere that this is necessary. You could also try an older version (3.9) of RSDLite: http://db.tt/F0gb3TR1 – please report back if it works.
yes its installed on same partition. using same RSDLite i was able to upgrade to MIUI rom also.
installed 3.9 version and tried, new error now:
Failed flashing process:Unable to retrieve initialization values from INI file 0×7029; phone connected
Well if you had MIUI installed, you most likely already have the vulnerable recovery and can directly install OR (step 2). If you really have to flash the sbf (i.e. you get a signature check error when you try to start OR), i suggest to use the ubuntu live cd and use sbf_flash, as can’t remotely debug your RSDLite….
after trying with ubuntu, below error comes:
mobile shows: Critical Error: FEBE 0047
Error shown in emulator is:
>>uploading RDL03: 100.0%
–OK
>>verifying ramloader
–OK
>>executing ramloader
RX(7): [02]err[1E]G[03]
!! failed
>> rebooting
usb_bulk_read -110
hmm very strange.. However – did you try if you already have the vulnerable recovery? Because if you had MIUI then you must have had the vulnerable recovery, so chances are good you still have it.
ok, i tried HONO just now, it failed. but i tried cyanagen 7.1.5, it worked!!!!.
i erased existing openrecovery and used the one mention above. it worked after that. probably issue with openrecovery files in my sdcard.
Regards
Sandy
great!
dum question, can anybody help me , i’ve tried everything , but my milestone keeps rebooting, and i lost my backup
please help
what do you mean by “lost backup”? You can always recover by flashing an SBF, but turn your phone off for the moment, to keep as much battery as possible. The best thing would be to join #milestone-modding, as described at the start of the article.
can u help me with a server for Irc?
click here, enter a nickname and the captcha and click connect.
my phone is working fine ,it’s just rebooting it’s self randomly
and i cant find a sbf file that fixis the problem,can you help me?
can you reboot into OR and restore the nandroid backup?
If your phone is rebooting randomly after booting into android, then it’s likely because you didn’t format data and cache in OR.
If you really need to flash an sbf, you can download the right one for your phone here.
After flashing one of those, you’ll have to start over with step 1.
my i can get it to boot or enter in OR the phone work’s pt it’s annoying. i’ve tried every single one of those sbf’s but nothing seems to soleve the problem.this is way i asked for a fresh backup,
Do we have windows version text available for this:
Prepare for Apps2Ext
This step is done exclusively on the phone, what exactly do you need a Windows version for? It would be possible to do it on Windows instead of on the phone, but you would need third party software like partition magic because windows isn’t too good at partitioning out-of-the-box…
am still with old OR, the attached OR version doesnot work for me. so thought if there is any utility which would allow me to do partition on my sdcard from my machine.
thanks for response.
what exactly doesn’t work? Did you download the updated version with the new tune2fs binary? May i ask where you are from? Does the label under the battery of your phone say “Motorola MILESTONE”, or something like Milestone xt720?
am from india, mine is milestone xt720
well.. the Milestone xt720 is an entirely different phone. This guide (and CyanogenMod for Milestone afaik) works only on a Motorola Milestone. You can see a comparison here.
just log in to say well done!
Thanks!
Since lasts 2 updates using OR 1.46, the Milestone will reboot during OR at any time, including while flashing, scrolling using the D-PAD or in the terminal without touching any key. It does not happen ever inside the normal android boot… only running OR 1.46.
I have buyed a new SDCARD to replace de old 8Gb that came with the phone. I managed to install CM7.12, and now CM7.15 but it stills reboots at any time inside OR. In fact. What I am trying to do now is to repartition following this guide, but I cant stay inside OR Terminal for more than a few seconds before the Milestone reboots.
Sorry about my english!
Does anyone have this issue too? Does anybody have a solution or at least, an idea about it?
Thanks
Rod
EDIT: I suspect that it has to do with touching the hardware keyboard. ¿It is possible to follow this guide using adb and a Terminal from my PC… to avoid touching the phone?
yes, you can connect with
from your computer
That worked in phone normal boot… but I don’t know if it is safe to repartition while the phone is running.
I have rebooted in recovery… and the adb shell command could not find the device.
Should I activate the adb in OR somehow before connect… or is safe to follow this guide inside the adb shell connected to a normally booted phone (mean, running CM 7.1.5)?
no, you cannot do this in android, because the parted and tune2fs binaries are missing there. adb should be enabled in OR (not in the normal (yellow) recovery, only in OR), but i cannot try currently, because I’m not at home. I’ll try later and report back.
Thanks poseidon.
I actually reboot again in Recovery and after connecting the usb and trying again to adb shell into the phone… stills no luck on that. But the interesting fact was that I barely touched the phone… also I haven’t opened the keyboard… only leave the OR main menu untouched and the phone connected to the PC… and suddenly it reboots without any interaction on my part.
Usually, after this, the update.zip file gets erased from the sdcard… and I copy it over and over again. This is odd, because in the past it never erased de update.zip nor rebooted by itself.
It is difficult enough to install a new rom, because I only have some seconds to do it… and it can and will reboot sometimes before a complete flash… leaving me without nothing for a while… forcing me to remove battery and sdcard… coping back update.zip and trying again and again until the flash works. Same for the gapps and radio updates. The strange part is that after all that, the phone works well without any issues.
I am thinking in doing this last mod (the repartitioning thing) to have more memory free for apps… and stop changing things until this 2 year old phone dies by itself
That’s very strange. You can also do the partitioning on a computer, if you have a card reader capable of micro SD cards (or a micro SD to SD adapter and an SD card reader).
Another thing you could try is to flash a 2.2.1 Motorola SBF for your region (giving you factory new state) and then start over from step 1. The service versions keep data intact, the non-service versions clear everything. In your case i would try a non-service one. That *might* help.
My Motorola Milestone have firmware version 2.0 can i upgrade to CM 7?
yes, but be sure to download and install the BPSW update and the devtree update in step 5, otherwise you’ll likely get random reboots of the phone.
How about the radio how can i determine my radio version I’m From Philippines and here’s my build number SHOLS-U2_01.03.1.1259613207 should I install Radio update or not?
I’m not sure. I would try without; if you have 3G connectivity after flashing CM, then fine. If not, you can try to google what 3G Frequencies are in use in your region, and install the a radio update with the same frequencies (Singapore would be a good candidate because of the geographical proximity). AFAIK it’s a planned feature for CyanogenMod for Milestone to have all the different radio files on board and be able to change them from the device menu, so all the fiddling with the radio update files will soon be history, i think.
Well. Thank you so far.
Good news: I have downloaded your OR. Deleted the phones OpenRecovery contents (all but de Updates folder) and copied over with the new one. Also, replaced de update.zip with the new one.
Rebooting in Recovery works without random reboots in the phone… and also, adb shell works too. The OR menu looks different from the previous one, so I assume that something I have done wrong when I updated to 1.46 some time ago.
Starting to follow the guide, inside parted… it says in the resize that it is moving data… 1% time left 5:12… and it seems stucked
The phone is not hang, because I can move the cursor over the menus… and the terminal from the PC is responsive (I can press enter, and it scrolls).
¿How much should it take to resize a 8GB sdcard? ¿should it give me percent numbers increments… or it will finish suddenly to 100%?. The fact is that it have allready passed 5:12 minutes… and no signs of progress
How long that takes depends on the free space on your SD card. If you are close the the 1GB free space, it might take quite long. Is it still @ 1% or is there any noticeable progress? If it’s really stuck, you have to try to quit parted, or remove the battery and start over as a last resort. I hope you followed my recommendation and created a backup of your SD data, interrupting parted is dangerous.
Yes, I have the backup… I think that I will stop it, and delete 2 more gigas (already backed up in the PC) and start over. Thanks!
Repartitioning with the guide went flawless!!!
Thanks man!
Shoul I reflash de 7.1.5 rom to take advantage of it? do a wipe cache / dalvik? or simply start to move apps to the (newly expanded) phone memory?
If you have CyanogenMod 7.x then all you have to do is move everything to phone memory in the application management menu.
If you’re on a lower version than 7.1.5, then i recommend to update, “new is always better”
. Wiping Cache and Dalvik Cache is recommended on each update.
Everything worked dandy, and also… confirmed that there is no problem with phone’s hardware keyboard… it wont reboot by itself in OR anymore
:D:D thanks again!
you’re welcome!
Thanks for the tutorial, the cyanogenmod-7 is great!
I was using shadowmodbr for a while but was not satisfied at all… The 2.3 android is looking fine and runing smoothly.
I did the part 3 a little diferente from this tutorial, instead of using RO console / parted i did sdcard changes in gparted. Do you thing this is dangerous? (i opted in not backup anything)
Thanks.
No, doing the partitioning in gparted is just as good as doing it in OR. I decided to do the guide for the OR console only because there are so many variables when doing it on a computer (different Linux distros, different sdcard device names, different gparted versions etc etc). In OR, the only variable is the SD card size. Furthermore I wanted the guide to be as Operating System independent as possible.
Help!!!
mkpartfs primary ext2 6945MB 7969MB
i’m stock here at 21% what should i do??
If it’s really stuck, then remove the battery, reboot into OR again. Unmount both the fat and the ext partition (in case it’s already there).
after starting parted, see if there is a second partition with the print command. if yes, remove it with
(2 should be the number of the second partition)
then try the mkparfts command again.
sir no such file or directory
when i type umount /sddata
That’s ok, it was just for safety.
sir when i type print there is no second partition
then just try the mkpartfs command again
still 2% time left 1:00
is it 1hr long?? to finish
it shouldn’t take that long. you could also try the following if it is stuck again:
The first line creates the partition, the second one creates the filesystem. Are you sure your numbers are correct? is 7969MB the size of your SD card and does the first partition end at 6945MB (can be seen in the ‘print’ output).
can i use windows tool to delete the partion like minitool partion then start over again???
My SD card is only 4GB
I used 1024MB then the remaining is 2941MB
Well, then that is your problem. Read step 3 carefully! If you want more free space on your FAT partition, then you can also make the ext partition smaller, a minimum of 512MB is recommended. So if 3965MB is your SD card size you can resize the fat partition to 0MB…3453MB and create the ext partition from 3453MB to 3965MB.
ok thanks I will try again thanks i will post again if I encounter Errors again
thanks sir its done thank you
why there is no market when I finished flashed this ROM
because you didn’t install the google apps update.zip
I have installed the google apps update.zip and I still don’t see the Market app, and this is not my first time that I upgrade the phone.
check if you have the file /system/app/Vending.apk
If not, then something must have gone wrong when installing the google apps update.zip. If there’s any doubt you can safely reinstall it.
hy again i’m sorry to report that the update u give me did not work it only maked it wors, please help!!!
for future reference: random crashes of bp (protocol_driver), likely caused by a broken sim card.
Thanks, everything worked fine, a no-brainer, just right for me
Brilliant!
The battery symbol in the upper right corner doesn’t seem to work, it says “?” I’m using the “beautiful widgets” battery now, but will look out for a fix…
Do you use an aftermarket battery or an original Motorola one? I heard there are some problems with aftermarket batteries. You could try to disable the 1% battery steps in the device menu.
It is the original battery. I Disabled the 1% battery steps as you told me – that did the trick! Great work!
i have successfully ported CyanogenMod-7.2.0-MilestoneXT720-20120124-KANG-signed. which is for xt720.
i have 8 GB card and want to partition it. i have terminal emulator on my mobile as part of this ROM. can i straight away use your instructions given above.
thanks, got the response via irc chat.
Hello poseidon. Thanks for the very useful guide. I managed to get through to the end of step 4 (backing up on Titanium), except for the Factory Restore. I am not ready to update to the new ROM as yet – maybe in a few days. However, I notice now that my Volume buttons do not work! I’ve rebooted a number of times – and still no go. Prior to nandroid backup I had to wipe the dalvik cache in order to get it to go through. I’ve wiped the cache before while trying to backup using G.O.T. OR (which the backup didn’t work) – and the phone continued to work fine. Do you have any ideas on that one?? Thanks.
Ok, first – you should re-do the backup just before you do the update to have the latest data in your backup.
As for the volume buttons – i had this issue a few times myself, sometimes it works after clearing cache/dalvik cache in OR, sometimes i have to reflash the CyanogenMod update.zip to make them work again. I didn’t have this issue since the update to 7.1.5, so i guess it should be fixed in this version. I’m not sure what you G.O.T. OR is, but i recommend only the original OR, which i linked in step 2.
Thanks. It’s good to know that someone else (yourself) had that issue. I will try clearing the cache again. The GOT OR is one from the Group of Ten guys [http://groupoften.wordpress.com/g-o-t-s-openrecovery/] that I had tried a couple of weeks ago. The backup didn’t work for me then. I used the OR you have in your guide above – and the backup worked fine last night.
Seems the G.O.T. OR is just horribly out of date, it is based on OR 1.14, whereas we use the current 1.46 here. Anyway I don’t really like all those OR clones, the original one is simply the best
Well I was able to boot into exclamation triangle with X + Power, and Volume up + camera to get to OR. so I highly doubt that it is a hardware issue. I wiped the cache and dalvik cache (scrolling with the D-pad), but still the volume buttons don’t work in Android. So I have to use the onscreen volume adjustment.
If you don’t have any more ideas – I will work like that for now, until I have some time to upgrade to the CM7 rom.
I talked to nadlabak (creator of CM4Milestone) about it – Did you use the keyboard layout change feature of GOT OR? That might have broken it. You can try to set the keyboard layout again in the “good” OR, but I just discovered that this breaks the keyboard in CyanogenMod as well. It can be fixed by flashing the CM update zip again. I’ll look into updating OR with proper keyboard files, but for now it seems you have to wait until you flash CyanogenMod, otherwise it would be a little too complicated to explain here.
I didn’t touch the keyboard setting from the GOT OR. I did set the layout using the OR in this guide (to qwerty). I didn’t flash to CM yet, since I don’t know what radios I need. I bought an unbranded phone from Amazon (in the US), and I’m in Trinidad – but it’s not on a data plan – so I don’t know what frequencies will or will not work. I need to do the research on that yet.
I just noticed the camera button isn’t working either!! :@ :@.
Nor is your hardware keyboard.
Damn! You’re right! Only the on-screen keyboard. I may need to flash sooner rather than later…
Well I finally upgraded to CM7 from Eclair. So far the hardware seems to work fine. The only thing I’ve found is that the volume buttons don’t work to adjust the focus on the camera – but there is an on-screen focus which is fine. I hardly use the camera anyhow. I just need to figure out on which radio to install for 3G. I haven’t tried the bluetooth yet.
Bluetooth should work fine. you can configure the behavior of the volume buttons in the camera menu -> advanced settings. The radio will likely be changeable directly from cm in a future version, then that will be much easier.
This CM rom has a sh!tload of settings – alot of which I’m afraid to touch, ’cause I’m not quite sure what they do. Maybe there needs to be a ‘CM ROM for dummies’ manual?
I have gotten to the end of step 5, but my phone will not fully boot up, it stays on the cryongenmod loading screen. I did not receive any error messages during the process. Any help or suggestions of what to do now would be appreciated
what was the error message? have to tried flashing the CM update zip again?
I did not get any error messages. and I have tried that too.
hm strange. i guess you did wipe data/cache/dalvik cache? As a last resort, I’d suggest flashing an original SBF to get factory new state, and then start over.
Just followed this guide to update a Milestone from 2.2.1 official to CM7.1.5 – worked like a charm.
Only thing I might add is to be careful about restoring any phone or dealer settings from TiBackup; some will cause a conflict with the 2.3.7 dialed and push you into a force-close loop with com.android.phone. If you’re stuck here, the best option is to erase your data and start over.
I just installed Cyanogen Mod 7.5.1 on my milestone for the first time. I live in the US and bought an unlocked Telus milestone and it worked on AT&T (without 3G) just fine. Now I have my APN settings set up the same as before, I tried the Canada-Telus radio update and just the Canada one, but I can’t connect to the network. Wifi and all that works fine and everything else seems to work. What did I do wrong?
I meant Cyanogen Mod 7.1.5*
Thank you for the great write up.
Upgrade worked smoothly except for an error from parted:
Can’t have a partition outside the disk.
I tried to fix with gparted from a linux system, which completely messed up my SD card. Android then offered to format it. After that I could partition the SD card with gparted as desired.
I am now experiences difficulties getting my old input methods (OpenWnn and OpenWnn Flick for Japanese text entry) to work. I restored the apps using Titanium backup, but that didn’t help. I then tried restoring Android keyboard, but Titanium backup came back with an error message that the application wasn’t installed.
Did anyone have any luck installing OpenWnn on the Milestone with Cyanogen Mod?
Hello, I’ve installed CyanogenMod-7.1.5-Milestone-KANG and I have a question about partition ext3. How can I check if my Cyan is using this partition and how can I chceck how much memory I’ve already used ?? In Settings -> CyanogenMod settings -> Application -> I can’t checked it “Use internall memory”
You can check by opening “Terminal Emulator” and typing
/dev/block/mmcblk0p2 is your ext partition.
What do you mean by “you can’t check use internal memory”? When you click on Settings -> CyanogenMod settings -> Application -> Install location, a popup menu should open, letting you select one of three radio buttons – “Automatic”, “Internal”, “External”. You should also go to Settings -> Applications -> Manage Applications -> Tab: SD card and see if there are any activated checkboxes. If yes, you should “Move to phone” those apps.
yes, I see and checked this radio button internal, but when you go to Settings -> CyanogenMod settings -> Application -> there are 3 checked boxes
“allow application moving”
“Use internal storage” (I can’t checked this one, and I don’t if this is normall)
“Permission management”
“Allow application moving”: You can uncheck this, “external storage” means the FAT partition in this case, and we don’t want anything to go to the FAT partition.
“Use internal storage”: Don’t know what this is for, but I can’t check it either.
“Permission management”: Read this for details, I suggest leaving it alone.
I tried to update from CM 7.1.2 to 7.1.5. I followed your installation routine, but it does not boot. It stops at the MOTOROLA logo. I tried it several times made a new download and whatever one can do, no sucess is just stopps at the logo. I did not make a full wipe (which seems not to be necessary according to you), as I wanted to keep my applications. Any suggestions?
i did exactly that update a few days ago, worked fine.. i guess you did clear cache and dalvik cache? I’d suggest to restore a nandroid backup and try again.
yes, I did clear cache and dalvik cache. I have already tried it 3 times. Downloaded the Zip file again. Always with the same result. It just stops at the logo, when I reboot it. Does the OR play any role, as I use a different one than mentionned above?
Yes it does. I encountered various problems with other OR mods.
But I had no problem with the OR I use to install CM 7.1.2. and have no problems to reinstall it with the nandroid backup. Could there not be another reason?
i have no idea what could be wrong. I suggest you join #milestone-modding on freenode – I’m sure there will be someone able to help you.
I’m having problems with the re-sizing of the fat
resize 1 0MB 3965MB
error: Unable to satisfy all contraints on the partition
please help!
Thanks for this great site!
I wanted to get rid of this buggy Motorola firmware a long time and now I finally did it. Was smooth as a baby’s butt
But I have one question about the ext3 partition as “internal” storage. When I wanted to resize the SD card partition, it had no filesystem on it. So the resize didn’t work because parted didn’t see any partition. I used makefs to get a fat32 partition, then I was able to resize it and finally I created an ext2 partition. Changed it to ext3 with tune2fs without a problem.
Now with CM7.1.5 I have only 194MB total internal storage – not that extra 1GB partition I created. Or is that partition not visible?
Again – poseidon, you did a great job!
you just don’t see the extended memory, you can check it with
in the Terminal Emulator.
I’ve been using CM7 for a while on the milestone and it was generally zippy.
And today before I updated to CM7.1.5 I did step #3, I found out that it became laggier.
Could it be that the class of the SD card makes a difference here? It’s a class 2 that came with the phone.
Also, the memory usage doesn’t really move much. I realised widgets and apps report 1mb for every 10mb actually used or thereabouts.
Yes, a slow SD card will cause some lag in certain areas (e.g. listing all apps, starting an app). I’m not sure what memory usage you mean, the memory usage in the “Manage Application” menu displays only the free space in the actual internal memory (i.e. the flash chip in your phone), the extra space from your ext partition is not taken into account. The reason for this memory to decrease is because application data is still written to internal memory, only the application itself (the .apk file) is written to the SD-ext partition, along with the dalvik cache and the download directory (used by the market to download apps/updates).
I see, that explains why the memory doesn’t decrease.
Only after I installed 10mb worth of apps then it drops by 1mb.
Thanks for the explaination.
Yes, I do find that screen unlock, scrolling through the apps drawer and starting an app is laggy.
What class SD card is recommended? Can i take another 8gb SD card and clone the current one over?
Earlier I did remove the SD card to check it’s class, and when rebooted it looked like a fresh CM7 install. I rebooted and everything came back. Launcher, apps, etc.
The faster, the better. A class 10 will really speed up things
.
Sounds like your SD card couldn’t be mounted for some reason, but if a reboot fixed it, it can’t have been anything serious.
Won’t there be a limit as to the read speeds on the milestone?
At the moment where I am an 8GB class 10 will set me back a handsome sum.
I don’t think so, CPU and RAM should be fast enough to satisfy any SD card, but I’ve never seen a comparison chart, so I can’t say for sure. If a class 10 is too expensive, even a class 6 will be a huge improvement over a class 2..
Thanks, I’ll look around.
Hi poseidon,
first of all, great guide! Great work! I have a question regarding step 3. When I am in parted, I have “Disk /dev/block.mmcblk0: 16.0GB” and “Number 1, Start 4194KB, End 16.0GB, Size 16.0GB, Type primary, File system fat32, Flags lba”
When I type “resize 1 0MB 15360MB”, “Warning: file system is reporting the free space as 143681 clusters, not 142861 clusters. Ignore/Cancel?”
Any ideas as to what I should do here?
Thanks,
Chris
Seems your FAT filesystem is somehow broken. i suggest to copy everything off your SD card (to you computer, check twice that you included hidden files and folders!), then create the partition from scratch (“rm 1″ to remove the FAT partition, “mkpartfs primary fat32 0MB 15360MB” to create the fat partition, and the second mkpartfs command as listed in step 3). If that sounds too risky for you, you could also try to simply format the SD card from your computer, copy everything back and do step 3 as described in the guide.
I had some problem with the SD card initially, where inside parted it gave me this error:
“Can’t have a partition outside the disk”
What I did remove all my files on the SDcard, saved it on the computer.
Use minitool partition wizard home edition to format the card while the card was in the MS connected to PC.
After that somehow i couldn’t repartition it using that tool. But inside the milestone in android setting -> storage, I unmounted the card, then remounted it. Android seemed to automatically ‘prepare’ the card for me. After that I could use parted to partition the card inside console.
can we update our Milestone CM7 with the original updates from CM site, or we must wait them to be hacked to milestone?
Even the downloads on the original CM site are device specific and there’s no official support for the Milestone, so no, you cannot install anything from the original CM site.
When I run print in a parted console the file system doesn´t appear, then the resize give error because it can detect the file system, how to fix it?
copy everything off the sd card (including all hidden files and folders!) and format it using a computer or Android itself, then try again.
What is the difference between Step 3′s “apps2ext” and “lib2ext” listed on CM7 website by nadlabak? http://android.doshaska.net/cm7
In 7.1.2, there are instructions to run lib2ext which sounds like it does the same thing as what step 3′s apps2ext does but seems a lot less complicated. What are the differences, if any, and what are the pros and cons to each method?
lib2ext is an extension to apps2ext (it moves some more files from internal memory to the ext partition, but you need the ext partition first, so you can’t skip step 3). If you have enough free space in your ext partition, you can enable it. I omitted it because i didn’t see the need for it yet, i was never short on space in /data without it.
thanks for the explanation. i wonder why nadlabak doesn’t mention app2ext over on his site. i never had a ext partition and i never would if it weren’t for your site! thanks for posting the info.
btw, androidiani worked for me no problems.
Hello, i’m stuck at the triangle with exclamation mark. Did everything that was written on the instructions.
Some people find it hard to do the vol-up + camera button combination, but I’ve never heard of a Milestone where it didn’t work. All you can do is trying again.
Pingback: Cyanogen(doshaska)@Milestone: Partitioned 32GB SD-Card does not show up | DIGG LINK
im having problems with the rebooting thing.
after i did the step 3, i rebooted it then it has been an hour rebooting. Bootloop?
please help! thanks!
you must have done something wrong, step 3 modifies only the SD card, it doesn’t touch anything system related… Have you tried removing the battery and turning on again? You can also try to remove the SD card and boot without it.
wait ill try them. Thanks!
DAMN! its worked! thank you so much!
I checked my storange settings in my phone 197mb i don’t know why. I did the step 3
resize 1 2965MB 3965MB
This question was answered more than once here – the memory information in Android shows only the internal memory, without the extension. you will notice that the free space decreases only very slowly, because only the app data goes to internal memory, the app itself goes to the SD-ext partition.
But – just to repeat it one more time: This will only work on CyanogenMod. Plain Android will ignore the SD-ext partition completely.
How do you delete a partition?
where X is the number of the partition you want to remove.
after using the parted /dev/block/mmcblk0 command i am getting this error-
bash: parted: command not found
please help.
re-download OR and don’t use any other OR than the one i linked.
Thanks a lot. Got it right. but now after giving print command it is telling this-
Warning: dev/block/mmcblk0 contains GPT signatures, indicating that it has a GPT table. However it doesn’t have a valid fake msdos partition table.
It goes on to ask if this is a GPT partition table?yes/no.
what should I do now?
i would backup all data from the sd card (including hidden files and folders) to a computer, then enter parted, (doesn’t really matter what you answer to the GPT question) and make a new msdos partition table. You’ll lose all your data with this, but you’ll have a clean partition table afterwards.
Example commands for creating a new partition table and creating both partitions: (use your own numbers as described in step 3!)
i did step 3 on feb 3 and everything seemed to work but for some reason today feb 10 my phone said “low storage” and I check i only had 20MB free.
i cleared my cache and davlik cache and still the same thing.
How come?
what’s your CM version? you can check the free space with
in the terminal emulator, look for the line with /sd-ext in the end.
CM 7.1.2
/sd-ext is 918.9MB size, 109.8MB used, 760MB available, 13% use%
i found the culprit but still don’t understand why i ran out of space.
the culprit was a chat program’s diagnostic logs stored in /data/data//logs
i deleted about 121MB of txt files and regained exactly that much space.
shouldn’t some of that have been stored on the sd card?
No, only the apps (i.e. the .apk files) are moved to sd card, the application data remains on internal memory, because most applications that write large amounts of data, offer to write them to the sd card (fat partition) anyway. obviously not all apps do that though
Hi!
Is there a way to reverse this stuff? I mean: “Motorola Milestone from CyanogenMod 7 back to Motorola Firmware”
I want to sell my phone and the shop want stock OS…
Thanks!
I would make that optional to the potential buyer, I think you’ll get more money for a Milestone running CM… If you really want to revert to stock Motorola firmware, you have to flash the appropriate SBF for your region:
http://and-developers.com/sbf:milestone221
non-service versions clear everything, service versions *should* keep user data, so you’ll need a non-service version.
Yeah, I agree with that, but this isn’t my choice…
Thanks again, it worked!
hallo
graet work ! after reading this website i have think that i’m able to to so.
but after step 2 i lose all hope.
my bootloader is 70.13 and the phone tells an version OMAP 3630
and after flashing “vulnerable recovery” there it goes to error:
Critical errror 0047
so i stop all work and will take a question to you.
is ist the wrong phone or what can i do ?
thanks for help
heiner dancker
Do you have an original Milestone (the first Milestone version)? Milestone 2, Milestone XT720 etc won’t work.. What software did you use to flash the SBF?
Can I do this process to upgrade Motorola XT800 ?
Sorry, but no. All this is very specific for the Motorola Milestone.
Thanks sir.
I see in this blog that Sandeep, on 26. January 2012 at 04:19, wrote “i have successfully ported CyanogenMod-7.2.0-MilestoneXT720-20120124-KANG-signed. which is for xt720.”
So if this process worked for XT720, Should I give it a try for XT800 ? I am also from India.
Also, this link http://www.motorola.com/Consumers/IN-EN/Consumer-Products-and-Services/Mobile-Phones/MOTOROLA-MILESTONE-XT800-IN-EN makes me believe that Milesstone and XT800 are same phone.
If you dont advise to follow this process for XT800 then is there any other option available for the same ? I searched the net but dont see anything which can upgrade xt800 from 2.1.
Regards
the xt800 and the milestone are not the same phone:
Milestone XT800 vs Milestone.
There is a CM for xt720 available here (which is what sandeep used), but i don’t think there’s anything for a XT800. Sorry.
Is Clockworkmod recovery neccesary to perform nandroid backup?
There is no clockworkmod recovery for the milestone. just do everything as i wrote it down
In Open Recovery Nandroid Backup during the ‘Compressing the backup’ process some progress bar would be nice.
hm I should include in the guide that it’s generally not a good idea to compress nandroid backups… it takes ages to complete…
I followed the guide, but when I perform parted resize it hangs. I performed it 3 times and it hung at 5%, 0% and 60%. I’ve also performed nadroid backup and it hung 2 times at “dumping logo” and one time at “dumping system”. Each time I had to pull the battery.
Sounds like an SD card issue, I’d copy everything to a computer (include hidden files and folders!), format the SD card with Android, copy everything back and start over.
Hi, I have a faulty keyboard, and when I type in parted, sometimes I get double input and other crap -.-, so it’s impossible to me to use parted with the console into openrecovery… there are any alternative solution?
ADB should be enabled in OR (i haven’t tested this, but I’m pretty sure it works), so you can install the android SDK on your computer and open an ADB sh. This is completely equivalent to the OR terminal. By the way the keyboard is easily replaced: buy here, install like here.
Hello,
thanks for the good tutorial!
Your download link for gbapps (http://www.multiupload.com/NQAPSYPKIW) doesn’t work at the moment, is there a mirrow available?
Sorry i meant gapps. Download link still doesn’t work. Can i use the official version 20110828?
I contacted nadlabak yesterday and asked for a re-upload, I’ll remind him once more…
I’m not sure whether the original gapps will work, because they’re not fully compatible with odexed ROMs, I’ll report back as soon as i have nadlabaks gapps
link updated.
New link works, thx!
How long does it takes to make a Nandroid backup? He is dumping for about 30 minutes… is this normal?
If you selected “Compress Backup”, then yes. The CPU is really too slow for compressing that much data in reasonable time, therefore compressing is not recommended.
Pingback: Motorola Milestone ganhará nova ROM CyanogenMOD 9 com Android 4.0 Ice Cream Sandiwch | UnderCyber Wonders
Great work thanks!.
The following explanation is necessary at the end of the step 3 of the tutorial.
”
you just don’t see the extended memory, you can check it with
df -h
in the Terminal Emulator after the reboot
“
I’ll add it.
it doesnt show me…
it says:
-h: no such file or directory..
Followed the instructions and have successfully installed Cyanogen mod 7.2 on my Milestone. A massive improvement over stock Android 2.1 – many thanks for the instructions
Hi poseidon, thak you very much for this post, it was clear enough to change update my motorola milestone…
But, the only problem I get is that I can’t install Gmaps. I installed gmaps and youtube without problem.
When I tried to install Gmaps, the following message appeared: ‘This item cannot be installed in your device’s country’.
I dont know what to do, in the previous version I could use Gmaps and the others google apps.
Here some information of mine:
- Location: Perú
- Carrier : Movistar
Thanks in advance =)
I’ve never heard of such a problem, I’ll do some research..
Edit: It seems that google maps with navigation is only available in certain areas, see this thread for details.
You can try to use Market Access, please report back if it works for you.
I could install Gmaps without downloading it from Market…
I get Gmaps 6.2.0 version from http://www.freewarelovers.com/android/app/google-maps, until now its working well.
Thanks for the time devoted to answer this comment =D.
It sucks a lil bit, that you can’t see more than 190mb app space. my app2ext works fine, but still only 190 mb available, still it moves the apps to the 1gb app2ext space, i hope this will get fixxed. seems to be a cynagonmod problem.
I cannot believe I’ve been working with CM7.1.0 RC10 for about 6 months now! Just updated to stable 7.1.5 and it is great!! super fast in compare to the RC I used till now… thanks
i created an ext2 partition on my sdcard
now when i try to use tune2fs it gives the following error:
tune2fs: resource busy while trying to create the journal file
what should i do?
reboot your phone and try again. you’ll have to unmount both sd card partitions after the reboot, so type
before the tune2fs command.
thanks it worked…
now on cm 9
awesome work guys
Hi, I am having trouble with Nandroid backup, The process always gets stuck at “System..Dumping” or “Data..Dumping”.
This is the second time I am trying to Mod my phone. My phone was earlier running CM7 but had sent it to the service center and they did a full wipe and flashed a new SBF.
Here is what i did–>
I flashed the vulnerable recovery successfully.
installed open recovery version you provided.
Backed up Formatted and partitioned my SD card for a clean start.
But still my Nandroid backup gets stuck at the same place.
I also tried using FuFu mini mod open recovery and Andriodiani open recovery which had worked for me earlier, but I just am not able to complete the Nandroid backup.
Any suggestions?
hm, very strange. is it possible that your SD card is bad? you could check it in windows. Do you have any data on the phone? because if you just received it from the service center, you can simply install cm7 without a backup…
Hey .. Thanks for all you help.
My SD card is actually brand new and seems to be working perfectly fine.
But i tried another SD card and got a successful nandroid backup.
Running HO NO! CM7.2 … hope the ext3 partition works…
Thanks again…
Thx, this site helped me through the prozess. It feels like a quick and new mobile phone
A few points:
to Step 3 )
I got a “error partition outside a disk” and no partition showed. Using
“parted -> mklabel msdos” opend the possibility to
parted -> mkpartfs primary fat32 0mb xxxxmb
I got the hint from http://forum.xda-developers.com/showthread.php?t=534714
“No Implementation: Partition 1 isn’t aligned to cylinder boundaries. This is
still unsupported.”
partition 1 is no bootable, but this ist not nessesary
to step 4)
I had do repeat step 1 and 2
(funny enough, a part from this loop the new partition table was accepted with no serious data-loos)
to Step 7.)
small typo
OR writes “Clear Cache Partition”, not Wipe
have a nice day
Actually i have been using my phone for a while, and the real reason i want a backup of this stock ROM is because this version of froyo that they put on my phone has by far been the most stable and snappy one which i ave come across till now..
So any ideas on what i should be trying?
I have lib2ext and apps2ext and they’ve helped free up space on internal storage, however I find I’m still running low on ram when running minimum apps. I heard zram would help? but I can’t find any info on how to enable zram?
lib2ext and apps2ext have nothing to do with ram usage. You can’t do much about it, sorry. zram would help, of course, but it is currently not possible with our kernel – people are working on it, though. (But nobody can say if it will ever lead to a usable result)
Hi,
I installed cm7 on my motorola milestone and it was running well I loved it. But now I am unable to reset factory data and also unable to get into recovery mode.
what should I do??
Plz anyone help.
a more detailed error description would be helpful… if you really cant get into recovery, you can *always* get it back by reflashing the vulnerable recovery sbf and unzipping OR to the sd card.
I did all the steps you’ve been wrote..if I re-flashing with vulnerable again, will it delete the partition?
Colud you tell me how to do app2sd step by step? thanks
reflashing the vulnerable recovery sbf will overwrite the recovery partition inside the phone’s memory, it won’t delete anything important. I’m not sure what you mean by apps2sd, if you mean the thing with the ext3 partition, there’s a detailed step-by-step description in this guide. If you mean the Android “move apps to sd card” feature, then you have to enter the manage applications menu, click on the app you want to move, and select “move to sd card” (only available if the apps allows it).
chmod +x sbf_flash
./sbf_flash vulnerable_recovery_only_RAMDLD90_78.sbf
Just a note to say that Ubuntu/Mint users will need to preface the second command with sudo
Otherwise it worked like a charm. Kudos. Thanks.
That’s why i wrote to enter the commands as root, all distros should be covered that way
So you did, and I didn’t notice
Hi, thx for a very nice tuto.
I got stuck at step 2: when I boot in recovery I get:
E:Can't open /cache/recovery/commandbelow the blue menu.
Then if I try to apply the update, I get:
-- Install from sdcard...Finding update package...
Opening update package...
Verifying update package...
E:EOCD marker occurs after start of EOCD
E:signature verification failed
Installation aborted.
Any clue what’s going on?
you’re not using the vulnerable recovery, please install it (step 1).
Problem solved, by booting recovery right after bootloader mode as you told me. My phone now works like a charm, much faster and smoother than with the Motorola Firmware. Thank you poseidon, for the tuto and the help!
Yes! Real great tutorial!!!
I was always afraid of the root, cm mod and bricking stuff, until i found this here.
For two years i had my stone with this bad motorola stuff on it. i waited so long cause i was afraid of killing my phone, so… now it is like a new phone!
so you just spared the world some electronical waste, if thats an argument for you
i don´t need a new mobile. now i´ll keep my beloved stone.
real good work buddy!
What shall we do with the Nandroid backup we made at step 4 ? Is it fine to delete once we find that everything is ok with the new installation ?
Personally, I’d backup it somewhere, but yes, it’s very unlikely that you’ll need it.
Thanks x 100000000000000 !! the best tutorial i could find and the only one that allowed me to update stock froyo to Cyanogenmod 7.2 !
What terminal emulator did you use
https://play.google.com/store/apps/details?id=jackpal.androidterm is included in CyanogenMod for Milestone.
as in on Step 1B what terminal did you use to get the sbf file to flash
?????????????
being impatient just makes me take longer to reply, especially when it’s such a strange question.
Anyway, here’s your answer: It doesn’t matter in any way, just use the terminal emulator provided by your linux distro. You can also use one of the virtual consoles directly (usually accessible with).
In case you wanted to know which shell you should use: That also doesn’t matter. I usually use bash, but any shell capable of running an executable (so… every shell) will be fine.
I’m even answering a third question you didn’t ask: Yes, you have to run sbf_flash as root (how you do that depends on your distro, on ubuntu-like distros you will have to put a “sudo” in front of the call, other distros might requiere you to type “su” to enter a root shell)
Im sorry for being impatient, i apologize can you provide with a link please thank you + do you do step 1B on your Desktop or on your phone?
IM SO SORRY FOR ALL THE QUESTIONER FOR BEING IMPOLITE I READ THE STEPS WRONG IM SO SORRY. TAKE YOU FOR THIS GUIDE AND YOUR FEEDBACK ID GIVE IS YOU IS AMAZING.
Hi. I completed every step and finally instaled Cyanogenmod but when the cellphone tryed to boot it just doesn’t start. It keeps showing this blue android on the skateboard and the animation restarts itself (wich I don’t know if it’s normal, the blue guy enters all the time with the skateboard after the arrow completes two circles).
Hope you can help me, I’ll try to reinstall it now. Thanks in advance
did you do all the wiping steps? (dalvik cache, cache, data)? If yes, i’d try again, clear everything, re-install cm7.
Hi,
Thanks for this awesome guide.
One question:
I created an ext3 partition and I’m running cm7, I was planning to upgrade to cm9. Do I need to format my ext3 partition? Or will the data wipe do that?
Thanks again!
Stu
I don’t think a data wipe will format the ext3 partition. You know that cm9 for milestone is still an alpha version?
wow, thanks for the quick response!
and yep! I know, but it looks largely functional though and I thought it would be fun to try out.
So I need to format it manually? e.g.
umount /sdcard
parted /dev/block/mmcblk0
rm 2 <- or whatever number the ext3 partition is.
mkpartfs primary ext2 6945MB 7969MB
quit
tune2fs -j /dev/block/mmcblk0p2
or is there an easier way to do it?
Thanks again,
Stu
why not simply:
(be careful, double check you’re inside the sddata directory before issueing the rm command …)
So /sddata is the ext3 partition?
yes, you can check that by looking at the output of ‘mount’. /dev/block/mmcblk0p2 should be mounted at /sddata.
removing the partition and recreating it will work just as well though. remember to add journalling, otherwise you’ll only have ext2.
Many thanks once again.
Stu
After applying update.zip from android recovery mode.
I have ths error instead of getting into openrecovery. kindly help.
http://i43.tinypic.com/m94wuc.jpg
Did you use the OR i provided? and did you copy both the update.zip and the OpenRecovery folder to your sd card?