Home > Android, Linux, Rockchip RK32xx, Ubuntu > Boot Ubuntu (Linux) or Android from an SD Card on Rockchip RK3288 Devices

Boot Ubuntu (Linux) or Android from an SD Card on Rockchip RK3288 Devices

December 11th, 2014 Leave a comment Go to comments

There’s already a method to boot Android from an SD Card on RK3188 devices, which should work with all Rockchip RK3188 devices. Ian Morrison (Linuxium) has now provided a instructions to boot Linux or Android from a (micro) SD Card in Rockchip RK3288 based devices, leveraging work from linux-rockchip community, and especially naobsd.

The Android flashing method is slightly different between RK3188 and RK3288, because most Rockchip RK3288 devices make use of eMMC flash, while older Rockchip RK3188 products feature NAND flash, and it appears Rockchip RK3xxx boot priorities (in the BootROM stored in the SoC itself) are as follows: eMMC, SD card, and NAND flash. All that means is that an updated version of the bootloader is needed which looks for a bootable SD card, and although very unlikely, your device could end up being bricked during this procedure. This is not a problem for Open Hour Chameleon since there’s no internal storage at all, so it will always boot from SD card and is really unbrickable.

First, you’ll need to download create-sdcard.7z with the tools, and images required.

Updating the bootloader

Then may want to make sure your device is using RK3288Loader_uboot_V2.17.02.bin bootloader (or latter). You can do so by loading the firmware file (currently installed in your device)  in AndroidTool, flashing the firmware with upgrade_tool, running ‘cat /proc/cmdline’ in a terminal, or simply trying a bootable SD card with the method below.

If you are pretty sure you need to upgrade your bootloader, download RK3288Loader_uboot_V2.17.02.bin, and flash it to your device in Linux with:

If you prefer to use Windows, you can use AndroidTool v2.3 or greater instead using the “Loader” row.

Creating a Bootable Android SD Card

At this stage, flashing an Android SD card image is easy, as you just have to run:

where firmware_update.img is your device Android firmware. The script default to /dev/sdc, but you’ll be asked to confirm the device path, and have the ability to change. Please run lsblk first to make sure you are using the right storage device, or you may wipe out important data on your PC. For extra safety, you may even consider doing this procedure from a virtual machine in VirtuaBox.

That’s it now, you can just insert the SD card into your device to boot Android.

Creating a Bootable Ubuntu SD Card

For a quick try, you could download one of Ubuntu 12.04 or Ubuntu 14.04 SD card images, uncompress it, and flash it to a SD card with dd (Linux) or  Win32DiskImager (Windows). Then just insert it in your device SD card slot, and it should boot Ubuntu. This is a generic image so things like Wi-Fi, and audio may not work properly. The username / password are linuxium / p.

You’ll probably want to expand the rootfs to make full use of your SD card capacity, with a command line:

Then reboot, login, and type

to complete the resizing.

If you want an image more suited to your hardware, you may have to use sd-create-linux script instead included in create-sdcard.7z previously downloaded together with relevant firmware files for  Firefly-RK3288 board, Rikomagic MK802V, and Tronsmart Orion R28, and other hardware based on the same hardware platforms. If your device is different, you may want to extract kernel.img and resource.img from your Android firmware, or build these yourself, and rename then as kernel-linux.img and resource-linux.img.

Before running the script you’ll also have to download the rootfs for Ubuntu 12.04 or Lubuntu/Xubuntu 14.10, unzip it, and rename the file as linux-rfs.img.

Finally insert the SD card into your Linux PC, and run the script to create the SD card:

It will ask to confirm/change the SD card device path, and create a bootable Ubuntu SD card for your RK3288 device.

Boot from SD card with Rootfs on USB flash drive

Some SD card (class 4) can be pretty slow, and USB flash drives may even be faster than some Class 10 SD cards, so Linuxium published another short guide yesterday, booting from SD card, but with the rootfs on the USB flash for potentially better performance, and especially more flexibility.

After downloading and extracting create-linux-sdcard-usb.7z, run ./create-linux-sdcard-usb script  to generate a bootable SD card without rootfs, and flash one of the rootfs above or your own with dd / Win32DiskImager to a USB flash drive. Insert the bootable SD card and USB flash drive into your Rorkchip RK3288 mini PC, and enjoy!

  1. December 11th, 2014 at 16:35 | #1

    Does this include harward acceleration (GPU) and VIdeo processing (VPU) ?
    (the idea behind is obviously to use Mplayer (or any video player) on Ubuntu)

  2. December 11th, 2014 at 16:42 | #2

    No, AFAIK nobody has done that yet. You should still ne able to used mplayer to play 720p videos and some 1080p videos smoothly, as shown in my Ugoos UM3 post/video yesterday.

  3. matt
    December 12th, 2014 at 14:34 | #3

    Anyone tried gpu drivers @ https://github.com/rkchrome/gpu ???? Armhf, seems that only ump is missing, with simlinks to gles and egl….

  4. matt
    December 12th, 2014 at 14:38 | #4

    For vpu, seems that some development is being done for the hantro g1 part (vp8, h264) while for hevc nothing moves, still have to understand if it’s using wave410 or what….

  5. matt
    December 12th, 2014 at 18:30 | #5
  6. matt
    December 12th, 2014 at 21:54 | #6
  7. matt
    December 16th, 2014 at 20:21 | #7

    CR12 don’t seems to boot. Using regular fw kernel I got blue led turning on but still no hdmi, suspecting “console=ttyFIQ0” boot parameter as I can’t find anything else form hdmi…

  8. JotaMG
    January 6th, 2015 at 22:37 | #8

    What is the minimum size of the Sdcard, for Android??

  9. m][sko
    March 24th, 2015 at 19:43 | #9

    Anybody have source codes for kernel from image ?
    Image missing all kernel modules and I really need NFS client 🙂

  10. Ameya
    April 29th, 2015 at 03:35 | #10

    Hi, I have been able to successfully boot from the SD Card and run Linux Ubunto 14.10 from the image link provided by you.
    Thanks you very much!!!!

    I have 1 question for you, im trying to update the OS to 15.04 and it is asking me for the root password. Can you please provide the same?

  11. April 29th, 2015 at 09:30 | #11

    I think it’s not defined. You need to create it by yourself with something like:

  12. Jonas Strassel
    May 27th, 2015 at 21:37 | #12

    Anyone got this to work with a rk3288 Tablet? I’ve got the Pipo p7 and would really like to have Ubuntu on it.
    I already tried this method. For now I’m quite sure, that flashing the RK3288Loader_uboot_V2.17.02.bin somehow doesn’t allow to boot neither linux or android on this device.

  13. Jonas Strassel
    June 3rd, 2015 at 22:56 | #13

    Good news! The RK3288Loader_uboot_V2.19.07.bin does allow usb-booting. Sadly it still doesnt boot android or ubuntu. Does someone know how to debug this?

  14. bruce
    June 4th, 2015 at 06:47 | #14

    @Jonas Strassel
    Link to bootloader ?

    did you try discussing on irc ? http://irclog.whitequark.org/linux-rockchip/

  15. Jonas Strassel
    June 8th, 2015 at 23:22 | #15

    I didn’t try to discuss this on irc yet. The bootloader 2.19.07 can be extracted f.e. from the lollipop ifive Air image by crewrktablets (http://crewrktablets.arctablet.com/?p=5207), but I can save you some time downloading:

  16. L Smizer
    June 9th, 2015 at 04:46 | #16

    I’m new to the Linux world, but could this be adapted to the new Haier and Hisense Chromebooks?

  17. coder hex
  18. August 10th, 2015 at 10:22 | #18

    Ugoos has released Ubuntu 15.04 SD card images for their RK3288 devices -> http://ugoos.net/blog/ubuntu1504-sdcard-arm7

  19. R.D.
    September 20th, 2015 at 18:15 | #19

    Can someone tell me how to disable the frame buffer on Ugoos’ SD boot 15.04? Hopefully from inside a running Ugoos SD boot Linux.

  20. ljones
    February 5th, 2016 at 17:28 | #20

    How on earth does this device boot and who created this script? I cannot find anything out about how to even boot this device, and less the couple of images avaliable everything I have tried hasn’t worked; the best I can get is a boot-loop. Does anyone know of any information or list of instructions on how to boot this device at all? x.x

  1. January 6th, 2015 at 21:50 | #1