Hacking the Kobo Clara HD – 1: Hacking the internal microSD storage
Introduction
The Kobo Clara HD is the latest e-reader from Canadian ebook vendor Rakuten Kobo, sporting a 6-inch 300 ppi e-ink touchscreen, and 8 GB of internal memory.
The Clara HD, like its predecessors in the Kobo range, internally runs Linux, and is surprisingly amenable to customisation and software modifications. Before diving in, though, it's worthwhile taking a look at the hardware of the device.
Despite being advertised as having no removable storage, the Clara HD uses an ordinary 8 GB SanDisk Edge microSDHC UHS-I class C4 card for its internal storage, which can be easily removed and replaced. This means that we can easily image the internal storage, and if we ever brick the device, fixing it will be as easy as reflashing the image.
This also means that we can expand the storage of the Clara HD beyond its standard 8 GB by installing a suitable microSD card.
Removing the back cover and microSD card
The back cover of the Clara HD can be removed with bare hands, if not easily, at least with little fuss. The back cover snaps into place, so removing it is a simple matter of prying it apart. See this video for a quick demonstration.
I had good success wedging a thumbnail around the edge of the back cover. Note that because the back cover does not sit flush with the front plastic, but rather sits a little inside, it will be necessary to manoeuvre one's fingernail underneath the lip of the back cover before it can be pulled apart. It's easy to feel when this has happened, since the fingernail will be lodged much deeper within the device.
Since the back cover attaches to the front at a number of places along the edge, it can be worthwhile trying a few different places. I had success on the side edge around 2 centimetres from the top of the device.
Once some leverage is gained, it's a simple matter to use another fingernail (or even a plastic card), sliding along the interface between the back cover and the edge to separate the two pieces.
Doing so reveals the microSD card in a standard microSD slot, from which it can be easily removed. The fit is fairly snug, so I had good success grasping it using thumb and index finger(nail)s from either side and gently jiggling it from side to side while pulling until free.
Imaging the microSD card
Once the microSD card has been removed, it can easily be accessed from a computer using a standard microSD adapter, and therefore imaged (backed up) to the computer.
On Windows, this can be accomplished using a tool like Win32DiskImager. Make sure to select ‘Read’, not ‘Write’.
On Mac or Linux, the standard dd
tool can be used. Identify which block device the microSD card has been mapped to, for example using lsblk
. The microSD card contains three partitions, which will display e.g. as mmcblk1p1
, mmcblk1p2
and mmcblk1p3
. To take a backup, we are interested in the whole device itself, e.g. mmcblk1
.
To take the backup, simply run in a terminal e.g.:
dd if=/dev/mmcblk1 of=kobo_sdcard.img bs=4M
Which will dump the contents of the microSD card to kobo_sdcard.img
in the current directory, which could take around half an hour. Make sure to get the if
and of
options the right way around.
(Note that because the microSD card is 8 GB, the image cannot be saved to a FAT file system, which only supports files of up to 4 GB. This may be an issue if saving to a USB.)
Optional: Using a larger microSD card
Now that an image has been created from the stock microSD card, the image can be transferred to a larger microSD card if one is available. On Mac or Linux, simply run e.g.:
dd if=kobo_sdcard.img of=/dev/mmcblk2 bs=4M
Then use a tool like gparted to resize the data partition (the large third partition) on the new microSD card to fill the remaining space.
microSD cards of up to 128 GB have been tested by users on MobileRead.com.