Exploring all things .NET and beyond...

Rooting a Motorola MB502 Charm On Android 2.1 Eclair to Store Apps On SD Card

Another post here outside the '.NET Realm' but I wanted to post some information to help users with the same or similar phone and issue. So I recently got a new unlocked Motorola Charm MB502 for $99 from NewEgg.com (here) so I don't have to be under contract for another 2 years with AT&T. This was my 1st experience with an Android based phone and I quickly found out its idiosyncrasies. However overall this is a fantastic phone for its capabilities and price so I am happy with it.

The phone has a miniscule 200mb or so internal memory and came with no MicroSD card. I starting going hog wild downloading all kinds of cool apps (for free of course) and in no time the phone memory was full. It was to the point where the phone would freeze and I couldn't even send or receive texts. So I had already planned to get a MicroSD Card so I got a Class 10 32GB PNY MicroSD card from NewEgg (this model). The card is amazing and has some crazy read/write speeds. So that's it I am all fixed right? 32GB is plenty of space. WRONG!

The Android 2.1 platform (codenamed Eclair and released January of 2010) only allows storing apps on the internal memory, and music and pictures can go on the external memory. Well that's a bit limiting, but there is a work around. Android 2.2 streamlines this quite a bit to a single command line statement, but on 2.1 it’s quite a bit more involved. However, everything I read for was a complete mess of steps and awfully written walk-throughs so I am mostly writing this post in case search engines pick it up to help out users of this phone or with a phone containing Android 2.1.

So let’s begin with the overall steps that have to take place to allow the phone to store apps downloaded to the external SD card:

1. Download the USB drivers for your phone and install them.
2. Buy a MicroSD card
3. Partition the MicroSD card into 2 parts using 'Mini Tool Partition'
4. Install the MicroSD card into the device.
5. Place the phone in 'Debug' mode when connected via USB
6. Connect the phone to the computer via the USB cable.
7. Root the phone with 'Super One Click'
8. Reboot the phone
9. Link the apps to the SD card using 'Link2SD'

It’s not that difficult to accomplish (can all be done in order in < 30 minutes depending on partitioning size on card), but the forum posts detailing these steps are incomplete. This process was compiled by about 6-8 different sources. Before getting started it is important to note, that while this is not an overly difficult procedure it is probably not for you if you do not have some savvy working with computers and mobile devices. The potential exists here to completely screw up your phone and have a mess on your hands. I am just posting this 'as-is' and have no real expertise on Android phones, so advanced follow up questions for anything related here are better directed to one of the Droid forums and not here. So let's get into each step:


1. Download the USB drivers for your phone and install them: You need to connect your phone to your computer and have it recognized. For the MB502 Charm, you can download the USB drivers at the following link -> Drivers for MB502 After installing the drivers, go ahead and connect the phone to the computer and make sure it worked.

2. Buy a MicroSD card: If you are only planning on installing apps and taking a few pictures then 8GB or 16Gb is plenty of space. However if you plan on dropping the entire MP3 library on your phone (as I did) then go for the 32GB size. As for Class? I recommend a Class 10 card because of the 10mb/s write speeds. Nice for transferring MP3 files to the phone and reducing lag time after taking a picture when being written to the device. If just doing simple apps and no music a Class 4 or 6 should suffice. I highly recommend getting a SD card adapter or something to plug in the MicroSD card via USB for partitioning outside the device in Step # 3.

3. Partition the MicroSD card into 2 parts using 'Mini Tool Partition': Download the 'Mini Tool Partition' (for Windows not the phone) utility to partition the MicroSD card from this here: Download Mini Tool Partition Once downloaded and installed, insert your SD Card adapter into a USB slot containing the MicroSD Card so it can be partitioned. The card must contain 2 partitions: 1 for the main externally written files (pictures and music), and the 2nd partition is for the downloaded apps. Before partitioning make sure to copy off an data on the card (unless it's new and has nothing on it). Open up Mini Tool Partition, right click on the drive representing the card (make sure you select the right drive!!) and say 'Delete'. Now let's make our (2) partitions. The 1st should be named 'primary' and be set as a 'Primary' partition. As for the 'File System': if you have a MB502 Charm then you have to use FAT32 for both partitions. The phone does not recognize the other format types. On other Android phones you can try ext2, ext3, or ext4. It is not a limitation of the Super One Click program, but rather the individual phone. As for size, most say 500mb to 1GB is enough for the apps since they are so small. I did 25GB for my primary, and did 5GB for the apps. You can divide the partitions how you feel is needed. Below are the properties for Partition 1:


Now create the 2nd partition; I named it 'Apps_Data'. It too must be created as a 'Primary' partition as displayed below:


Finally, when all selections have been made select 'Apply' in the upper-left hand corned to have the partitions made on the MicroSD card.

4. Install the MicroSD card into the device: Easy enough. Take the back cover off the MB502 and install the MicroSD card. It is not a requirement but I powered off my device, inserted the card, and then turned the power back on just to do the process cleanly.

5. Place the phone in 'Debug' mode when connected via USB: Consult your manual on how to do this. For the MB502 on the home screen tap the 'Menu' button (left soft key) and select 'Settings'. Scroll to and select 'Applications', select 'Development', and then turn on (check) 'USB Debugging'.

6. Connect the phone to the computer via the USB cable: I usually have my phone unlocked and on when I connect via USB. Give it a few minutes and make sure Windows (or whatever OS) recognizes the device.

7. Root the phone with 'Super One Click': In order for apps to eventually be placed on the MicroSD card, we need to have 'SuperUser' permissions for the Link2SD app. In order to gain this level of access we 'Root' the phone. Rooting the phone also allows you to uninstall any 'System' installed apps. I quickly learned one of the apps I downloaded installed a ton of junk as system apps, and I couldn't uninstall them...until I rooted the phone that is. The easiest way to do this is with an app named 'Super One Click' which runs on Windows (not the phone). Download the application from here: Download Super One Click Install the application and open it up in Windows. All you have to do is press the 'Root' button (displayed below). When asked if you want to install the app, I stated 'Yes' which allows SuperUser to work on the device. Once complete the device will be rooted. For a full list of phones which Super One Click works with, check out the following link: Compatibility List for Super Once Click



8. Reboot the phone: If the Super One Click does not prompt for a reboot after disconnecting the USB cable, then go ahead and disconnect the USB cable after the rooting process is complete, and power off and back on the phone.

9. Link the apps to the SD card using 'Link2SD': Go to the Market, and search and download 'Link2SD'. This application will allow you to manually select installed apps and move them over to the SD card. This process does not happen automatically, so make sure to move apps over to the SD card after installation. Sounds like it might be a pain, but it is really easy and takes only about 5 seconds to do. Once 'Link2SD' is installed, open it up. It is going to go through a series of steps to gain 'SuperUser' access and may ask you to reboot the phone after creating some boot scripts to be used. Follow all on-screen instructions including reboot if required. These steps are only 1 time and not required after completed successfully. I think the 1st time I tried Link2SD it didn't work so I rebooted the phone and tried again and it worked, so keep this in mind. After Link2SD finishes it configuration (including reboot), you are done! Open up the Link2SD app and scroll to any app you want to move over to the SD card and select it. Scroll down to select 'Create Link', and the press 'OK'. You will see a message about Link2SD getting 'SuperUser' access and then your app will be moved to the SD card! You can also use Link2SD to uninstall those pesky spam installed system apps if this happened to you. An app is installed on the system if you see its path start with /system/app/.... Don’t uninstall important apps, but it is useful to uninstall something that was never originally wanted.

That's it! If it didn't work, you probably want to go back through step by step and make sure everything worked properly. The Link2SD app is very picky about those partitions so make sure to get them right. If it is not working it might be because it does not recognize the type of partition you created. FAT32 is the safest bet and the only working one I found on the MB502 Charm. If you need more help, I recommend seeking out one of the Android User Forms where you can ask questions and get further help. ...or just fork out the money and buy a newer phone. :P

12 comments:

Anonymous said...

I did the same but while running Superoneclick ...it runs and stops after sometime at certain steps..

adiweka said...

I have done this and it ended bricking my phone. Now my camera wouldn't start and my sdcard couldn't be red. Could you give me tutorial how to undo this

Allen Conway said...

No unfortunately I do not have any 'un-do' tutorial and I really don't think there is such a thing. This is why I made the following comment in Red at the beginning of this post:

"Before getting started it is important to note, that while this is not an overly difficult procedure it is probably not for you if you do not have some savvy working with computers and mobile devices. The potential exists here to completely screw up your phone and have a mess on your hands. I am just posting this 'as-is' and have no real expertise on Android phones, so advanced follow up questions for anything related here are better directed to one of the Droid forums and not here."

My only recommendation is *maybe* see if a 'Master Reset' will work which will reset the phone to its original out-of-the-box state (not sure what this does to the unlocked vs. locked status). Please refer to the online owner’s manual for the MB502 on how to preform this. And lastly, you really should check out 1 of the Android forums as I posted this more as a recipe which worked for my unlocked phone, but the experts will be found in the Android forums. Good Luck.

cyanogen said...

works great..u must restart after rooting.

krbunt said...

Thank You. I was about to give up. It works and I can manage the internal and SD space accordingly. It solves a big problem. Thanks

Anonymous said...

sir,how to create 2 partitions....it showing notification that windows can't recognize the 2nd partition in removable disk

Alejandro said...

Great instructions! Thanks for summarizing in a clear way the information scattered out there. I followed your instructions and I was able to root my Motorola Charm.

I would add that the USB connection has to be "charge only" so that the root works.

gorang joshi said...

how to create 2 partitions....it showing notification that windows can't recognize the 2nd partition in removable disk

Abdul Sami said...

Thanks for all the step by step details..it was of great help

Anonymous said...

Must be in Charge Only...otherwise Superone will freeze. Works Great!

Anonymous said...

Thank you very much it works beautifully!!! I must admit I don't know much about computers and phones but your directions were simple and easy enough for me to follow.

-Nicholas Mathura

Anonymous said...

The method described here certainly works. On the other hand, depending on the phone model and android version, some small modifications and repeated attempts may be necessary.
I did it worked on my Motorola Charm (Android 2.1 Eclair) after a lot of attempts. My modifications:
1. Superoneclick (ver 2.2.3) did its job only psneuter mode (right side, under Exploit menu). It also required USB Debugging ON and OFF a couple of times:
Unplug your USB Cable
Go to Settings > Applications > Development
Uncheck USB Debugging
Plug in your USB Cable
Unplug your USB Cable
Check USB Debugging
Plug in your USB Cable, etc. I dont remember the exact order, I lot of attempts required.

2. I also experienced difficulty also in Link2SD to find second partition. At last, I realized that my 32GB microSD card (no name) should be blamed, since Link2SD worked with another SD card (2 GB). This is strange, because the first card works well for all other tasks and in another devices.

Post a Comment