Run any Android ROM from SD card

Post date: Nov 29, 2014 1:0:34 PM

Ever wanted to try an Android ROM on your RK3188 device but don't want to flash it and risk bricking your device? Or maybe you've currently installed Linux and want to try Android? I've created a tool to create a bootable SD card that can run Android directly from the SD card.

You will need a PC running Linux and an SD card of 8 GB or more, at least class 10 speed, and your Android ROM(s). In this example I've downloaded Radxa Rock's Kitkat ROM 'radxa_rock_android_kitkat_140909_update.img' from ''.

Download the tool from ''. After unzipping you will see a shell script called 'create-android-sdcard' and a directory called 'Tools'.

First load your SD card into the PC and use a command like 'blkid' or 'lsblk' to identify its device name (e.g. /dev/sdc).

Now run the program and pass the name and location of the Android ROM you want to install onto the SD card, e.g.:

./create-android-sdcard radxa_rock_android_kitkat_140909_update.img

The program will prompt you to confirm the name of the device for the SD card. Once confirmed it will then unpack the Android ROM, create partitions on the SD card that mimic the ROM including a 'user' partition that will use the remaining space of the SD card. It will then install the Android ROM to the SD card and notify you when complete.

Finally just take the SD card and insert into your RK3188 device and power on to enjoy Android.

The initial boot is very slow so be patient. For some ROMs this actually seems like a very long time, so be extra patient! Subsequent boots however are faster.

Everything should work 'out of the box' for Kitkat ROMs. For 4.2.2 ROMs as internal storage is implemented slightly differently, I did find one specific ROM where 'Explorer' didn't recognise the internal storage but 'ES File Explorer' did. All other 4.2.2 ROMs worked fine.

In theory it should work with any Android ROM packed as an image. My program uses standard RK tools which are included in the 'Tools' directory. I've included checks to ensure the ROM's format follows the traditional build layout so if the ROM, and in particular, the 'parameter' file is substantially different then YMMV.