View Single Post
Old 11-28-2011, 09:51 PM   #106
void_warranty
Junior Member
void_warranty reads XML... blindfoldedvoid_warranty reads XML... blindfoldedvoid_warranty reads XML... blindfoldedvoid_warranty reads XML... blindfoldedvoid_warranty reads XML... blindfoldedvoid_warranty reads XML... blindfoldedvoid_warranty reads XML... blindfoldedvoid_warranty reads XML... blindfoldedvoid_warranty reads XML... blindfoldedvoid_warranty reads XML... blindfoldedvoid_warranty reads XML... blindfolded
 
Posts: 7
Karma: 52426
Join Date: Nov 2011
Device: Kobo Vox
Here's part two, how I made the new internal SD card.

*** IMPORTANT ***
This voids your warranty. I am not in any way responsible if you follow these instructions and destroy your Vox!
*** IMPORTANT ***

Before you take your Vox apart to swap the internal SD card, you obviously need a new card to swap in! This is how I made mine.

You'll need root access on your Vox; I had already used gingerbreak to root it, and I used Connectbot to get a local shell, in which you run "su" to get a root prompt (#). Now the fun begins.

I put the 32G SD card (the Vox's internal one is speed 4 - look for the "4" with the circle around it - so I doubt you want to go slower than this; luckily I got a Black Friday sale on a 32G speed 10 card) into the external slot. If you type "mount" you should see this as /mnt/extsd, probably the last line printed. YOU ARE ABOUT TO OVERWRITE EVERYTHING ON THIS CARD! I unmounted the external card first so Android didn't get confused; you can do this using "umount" or via "Storage settings".

If you're used to reading mount's output and track down the major/minor device numbers that vold's using, you can verify what devices correspond to each SD card. For me, the internal card was mmcblk0 and the external mmcblk1. So I ran the following command:
dd bs=4096 if=/dev/block/mmcblk0 of=/dev/block/mmcblk1
DOUBLE-CHECK THIS COMMAND! If you swap the "if" and "of", or use the wrong device names, bad things are likely going to happen! Now the internal SD card, and all its partitions, are being copied to the external SD card.

This takes a loooooooong time. To a speed 4 card, it took almost 50 minutes. To a speed 10 card, it took almost 30 mins. You can still scroll Connectbot's screen to verify that the Vox isn't hung and to keep it awake during the copy.

Once it was done, I took the 32G card and put it in my Linux netbook's SD slot (via a micro-SD to SD card adapter). On there, the SD card showed up as /dev/sdc, so I ran "sudo parted /dev/sdc". I set the display units to "s" to see the per-block allocation; with "print free", if memory serves, it would print the partitions *and* the unallocated space.

You're looking for partition 4. It should be the last partition, type fat32, primary, with the highest-numbered allocated blocks. The "resize" command can be used to change partition 4's size: start it from the *exact* same block as is currently is, and as the end block use the highest-numbered block on the card. (Sort of: I had to subtract 1 from the highest-numbered block for parted to resize the partition.) It works away briefly, and when you quit parted, you should have a huge partition. You can verify that in Linux; the Vox balked at automounting it in the external slot, but when I mounted the partition manually it worked fine on the Vox.

The next step was physically swapping the 32G card in place of the original internal SD card. If all's gone well, the Vox should show a big honking amount of internal SD storage. Good luck!

John
void_warranty is offline   Reply With Quote