Jump to content
PaulOBrien

Enabling storage adoption in Marshmallow on the Honor 5C

Recommended Posts

Note: This guide is only tested on the Honor 5C B102 Marshmallow release

Marshmallow on the Honor 5C is great, making a very nice device feel even better. But one thing missing is the option to 'adopt' microSD cards as Internal Storage, something that is particularly useful on the Honor 5C given its limited 16GB capacity.

Fear not, you can do it manually!

In order to set adopted storage up, you will need a computer with working 'adb' and, of course, a microSD card in your phone, the faster the better. Here's the process!

1. BACK UP THE DATA YOU HAVE ON YOUR MICROSD CARD. Your card will be formatted by this process, so make sure you have saved any pictures, videos etc. from your card to your PC before you start.

2. Decide how you want to split your card. You can either commit 100% of the card to internal storage, or split between internal storage and conventional SD. This option is useful if you like to unplug your card and put it in your PC. I would probably recommend committing the whole card.

3. Open your command window / terminal on your computer and type the 'adb shell' command (with your phone connected of course). You will need to enable USB debugging in developer settings (which in turn is displayed by tapping the build number of the device 5 times) in order to see the option.

4. Type 'sm list-disks' to list the disks available for adoption. It'll look something like below - take note of the disk ID (disk:179:160 in this example).

Ember Library Mediator.png

5. Partition the disk. For this we use the 'sm partition DISK TYPE RATIO' command. For example, to partition the disk above as fully adopted storage (aka private) I'd use the command 'sm partition disk:179:160 private'. If I wanted a 50/50 split between adopted and regular, I'd use the command 'sm partition disk:179:160 mixed 50'. Easy right?

6. This process will take a while, but when it's done, the Settings -> Additional Settings -> Storage view on your device should show the new Internal Storage. Note that, for some reason, the free space isn't reported correctly, however everything seems to work OK. When you install apps, they will generally install automatically to the adopted SD, although you can manually move things around if you want to, perhaps for performance reasons (the real Internal storage will likely always be a bit faster).

Screenshot_2016-02-19-12-24-40.png

7. If you want to see how you are doing for space, you can use a third party tool such as FreeSpace or FreeSpace Plus.

Screenshot_2016-02-19-12-42-43.png

And that's it! Let us know how you get on, and enjoy your new, expanded Honor 5C!

P

Share this post


Link to post
Share on other sites

Informative post, Paul--thanks! I have two questions though:

  1. Instead of using USB debugging + ADB, can you do the partitioning directly on the phone, using a terminal emulator program's command line? (After all, you're supposed to be able to do this on the device, if the stupid manufacturer hasn't removed the option from the "Storage" tab's UI).
  2. What if you want neither 100% adopted storage nor 50%? Let's say I want to dedicate 80% toward internal storage, but leave 20% for just simple raw storage. What would the necessary command be for this? And this actually leads to another related question... If you do split the card (even 50/50) which partition will be first? The reason I ask is because if one should want to pop the card into a computer running Windows, via USB or a card reader for the purposes of browsing/loading files, Windows will only see the first partition. Any additional partitions will be invisible to the OS.

Thanks in advance if you can clarify any of these questions.

Share this post


Link to post
Share on other sites
23 hours ago, xzyk said:

my advice here is to read on what adopted storage actually translates to else you could be surprised with the end results, this is a good start  https://www.reddit.com/r/Android/comments/3oz7eu/guidelines_for_marshmallow_users_formatting/ 

 

Thanks for this link, very eye-opening! There are indeed a lot of ramifications to what seems like it should be a simple process. I'm hoping that this concept gets simplified in future Android OS iterations, or at least some additional options added so users can tweak the storage as they see fit.

Share this post


Link to post
Share on other sites
12 hours ago, DoctorG said:

Informative post, Paul--thanks! I have two questions though:

  1. Instead of using USB debugging + ADB, can you do the partitioning directly on the phone, using a terminal emulator program's command line? (After all, you're supposed to be able to do this on the device, if the stupid manufacturer hasn't removed the option from the "Storage" tab's UI).
  2. What if you want neither 100% adopted storage nor 50%? Let's say I want to dedicate 80% toward internal storage, but leave 20% for just simple raw storage. What would the necessary command be for this? And this actually leads to another related question... If you do split the card (even 50/50) which partition will be first? The reason I ask is because if one should want to pop the card into a computer running Windows, via USB or a card reader for the purposes of browsing/loading files, Windows will only see the first partition. Any additional partitions will be invisible to the OS.

Thanks in advance if you can clarify any of these questions.

well, the command 'sm-list-disk' just list the label (disk ID) that marshmallow assigned to the external SD card. BTW in MM this is now a series of numbers, e.g. 179:160, and cannot be renamed.
the command "sm partition disk:179:160 mixed 50" presumably is splitting it 50/50 so something like "sm partition disk:179:160 mixed 70" would split it 70/30, but i haven't tested this.
Since windows can only see the first partition, I guess if you use 'mix' it will create the 'portable' partition first and then the 'internal' (which will also be ecrypted).

Share this post


Link to post
Share on other sites
On 7/19/2016 at 7:58 AM, xzyk said:

well, the command 'sm-list-disk' just list the label (disk ID) that marshmallow assigned to the external SD card. BTW in MM this is now a series of numbers, e.g. 179:160, and cannot be renamed.
the command "sm partition disk:179:160 mixed 50" presumably is splitting it 50/50 so something like "sm partition disk:179:160 mixed 70" would split it 70/30, but i haven't tested this.
Since windows can only see the first partition, I guess if you use 'mix' it will create the 'portable' partition first and then the 'internal' (which will also be ecrypted).

Thanks for the reply, it looks like I'll have to experiment with this at some point (I'm still working my way through that extensive Reddit thread, trying to learn as much as I can about it first...)

Share this post


Link to post
Share on other sites

Oh, I forgot to ask...anything to say on whether you can eschew USB debugging + ADB, and just do it on the phone via terminal emulator?

Share this post


Link to post
Share on other sites
2 hours ago, DoctorG said:

Oh, I forgot to ask...anything to say on whether you can eschew USB debugging + ADB, and just do it on the phone via terminal emulator?

I haven't used this function at all so don't know if doing it through terminal can work. One thing to mention though is that I would advise whatever microSD you intend to use as adoptive storage it needs to be a fast one else the OS will actually pop-up a complaint that it is too slow. I experienced this when MM came out on my MotoG 2014. At the time I used a sandisk ultra and it complained, I had to purchase a sandisk extreme pro (which tend to be more expensive) until the OS stopped complaining about microSD speeds.

Share this post


Link to post
Share on other sites

Hello !

So I tried this, worked perfectly, but when I try Freespace plus, I don't see the new partition. Only see internal memory = 10GB and external = 30GB.

How can I do to be able to really see it ?

Thanks

 

Manon

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

By using this site, you agree to our Terms of Use.