How-to Install and “Hack” Linux on T428 or MK802 IV mini PCs

PicUntu 4.5 installer is probably the easiest method to install Ubuntu on a Rockchip RK3188 based mini PC, but if you want a little more flexibility I’ll provide another method to install Linux on T428, MK802 IV or compatible devices, as well as links to go further: dual boot Android / Linux, create your own official distro, status of Mali-400 GPU support in RK3188…

The method below is not new, as it was posted by Linuxium (Ian Morrison) in Freaktab in September, but this is the first time I’ve taken the time and managed to run Linux on Rockchip RK3188, and I’ll provide some more detailed steps.

Prerequisites

Even though in some cases it’s possible to install Rockchip firmware from Linux, AFAIK the tools available in Linux lack supports for the parameter and loader files, so ironically, you’ll need a Windows XP/7/8 machine to install Linux in your mini PC.

If not done yet, make sure to install Rockchip USB drivers first, as well as RKAndroidTool v1.37. If you can’t uncompress RKAndroidToolv1.37.7z, please install 7-zip.

You’ll obviously need an RK3188 device. T428 and MK802 IV are known to work with this method, but other RK3188 devices may also work although you may lose functionalities such as Wi-Fi, if the Wi-Fi module is different than AP6210. As a site note, you can also buy MK802 IV LE which comes pre-installed with PicUntu, but you’ll probably save money if you buy the Android version, and install Linux yourself instead.

You don’t need (micro) SD card to install Linux, as it will run from the flash. This will fully replace Android, and probably wipe all your data. There are other methods to boot from micro SD card that I’ll link to at the end of the post.

Installing Linux in MK802 IV or T428

Now that the required driver and tool are installed in Windows, you’ll need to download a few files:

To test the method, I decided to go with T428, a 1080p kernel, and Lubuntu 13.04, so I downloaded 5 files from the list above, namely RK3188Loader(L)_V1.20.bin, linuxium-nand-parameter, linuxium-boot.img, linuxium-1080-t428-nand-kernel and linuxium-ubuntu1304-lubuntu-desktop-rfs.img.7z.

First let’s uncompress linuxium-ubuntu1304-lubuntu-desktop-rfs.img.7z to get linuxium-ubuntu1304-lubuntu-desktop-rfs.img (2.7 GB).

Now start RKAndroidTool v1.37 (RKAndroidTool.exe in RkAndroidToolv1.37 directory), and load the 5 files to the corresponding Loader, parameter, boot, kernel and section, by clicking on the cells in the right column called “…” , and make sure the 5 check boxed are ticked as shown in the screen shot below.

RKAndroidTool_v1.37_linux

Now it’s time to start your device in recovery mode. For T428, connect a USB cable to your computer, press the recovery button on the side of the enclosure, connect the other end to the micro USB port to power the device, and release the recovery button. RKAndroidTool should detect your device, and “No Found RKAndroid rock usb” at the bottom of the window change to “Found RKAndroid Loader Rock Usb”. Some other devices may not have an external recovery button, but instead an internal switch accessible with a toothpick, paper clip, or other sharp object via a tiny hole.

Recovery Button on T428 mini PC
Recovery Button on T428 mini PC

Note for VirtualBox only, skip this paragraph you are using a Windows computer: The procedure can also be performed in VirtualBox. Just make sure to enable the device in your guest OS by accessing the top menu: Devices->USB Devices, and select the new device that appears. In my case, T428 in recovery mode is seen as “Unknown device 2207:310B [0100]”. During the installation the stick will reboot a few times, and you have to go to Devices->USB Devices again each time to select the device.

We’re almost done. Now click on “EraseIDB” button, wait a few seconds for the procedure to complete, and click on “Run” to flash Linux to the device. This last step will take a couple of minutes for flashing and verification. You’ll see the progress in the console on the right side of the window, and upon completion the last message should be: “INFO: Run OK”, and the device is exit recovery mode leading to the message “No Found RKAndroid rock USB” at the bottom of the window.

RKAndroidTool_v1.37_LInux_CompleteThat’s it. Linux has now been successfully installed on your RK3188 device. Time to connect the power supply, and give it a try.

Lubuntu in T428 (Video)

I’ve done that with T428. Boot takes about a minute, and my Wi-Fi network was detected. However, the root password is required before entering my Wi-Fi password, so I had to open a terminal, and type “sudo passwd root” to change the root password. For some reasons my SSID was shown twice in the interface, one failed to connected, but the other worked just fine. I haven’t tried Bluetooth. The best with Linux is probably to connect a USB mouse and keyboard, but I connected Mele F10 air mouse instead as it is more convenient for quick test.

I loaded several programs simultaneously: the terminal, minesweeper, a graphics editor, Chromium, Firefox, Abiword, etc.. and all programs loaded fast and the user experience was OK, although not as smooth as Ubuntu on ODROID-X featuring 2D/3D hardware acceleration, which is currently lacking in RK3188 Linux.

Web browsing performance is acceptable, but due to lack of VPU support, YouTube video playback is extremely choppy as the system uses software video decode. Running Ubuntu with the 720p kernel may provide a better experience here. There was also some rendering issues in Chromium with the Webstore, but the few web pages I tried loaded just fine.

There’s 5GB free memory on the flash out of 8GB, and shutdown seems to work fine, although It’s probably putting the device in standby mode, rather than actually shutting it down due to hardware limitation.

If you want to customize features in the kernel used above, the source code is available in https://github.com/linuxium/3188-SRC-AP6210 and can be used for both T428 and MK802 IV.

If you’re interested in dual booting Linux and Android, or just running Linux or Android from an SD card, Linuxium has posted dual boot instructions in G+. His bootloader is quite flexible, and allow you to mix different scenario and choose whether you want to install an OS to the flash, or boot from Android. I did try this method with  MK908, using a kernel built with omegamoon’s MK908 source, but the Android image required for this bootloader, would just not start at all.

If Ubuntu, and close derivatives such as Lubuntu or Xubuntu, are just not your cup of tea, Galland recently posted instructions showing how to create your own image with official ARM rootfs booting from a micro SD card, including OpenSUSE which he tried on Radxa development board.

If you want to follow Linux on RK3188 devices news, I recommend you follow Ian Morrison on G+, as well as Galland Blog. Alternatively, you could also join Google+ Mini PCs community as both will usually post their instructions there, and you’ll also get news about new HDMI sticks, tiny media players, and as well as tips.

Linux for Rockchip RK3188 currently does not support Mali-400 GPU, so 2D and 3D hardware acceleration are both missing. This has already been done on RK3066 also featuring Mali-400MP4 GPU, and I don’t really understand which technical details make it difficult to implement, but it’s clearly a challenge or it would have happened already. On the positive side, lima packages should work on RK3188, and work will soon be done to try it out on Radxa board. In the meantime, if you think GPU support is important you can “+” Linuxium’s post on RK3188 GPU matter to make your voice heard, as well as to motivate voluntary developers. Having said that, it’s possible the lack of ARM SoC’s GPU support in Linux, at least Ubuntu, will disappear in April 2014 with the release of Ubuntu 14.04 because it can make use of Android kernel and drivers via libhybris.

If you want to go further, dig into the kernel internal, and/or help with development, you can also join linux-rockchip community which is working on Linux and Android for Rockchip SoC.

24
Leave a Reply

avatar
24 Comment threads
0 Thread replies
0 Followers
 
Most reacted comment
Hottest comment thread
12 Comment authors
derekLucasVolksPC mini PC runs Debian and Android Simultaneously Thanks to MicroXwin FrameworkEasy and Safe Way to Try Linux on Popular Rockchip RK3188 mini PCsViric Recent comment authors
  Subscribe  
newest oldest most voted
Notify of
Richard Ames
Guest
Richard Ames

Great collection of information. Many thanks! I think if this class of devices improves in reliability, it could become the next wave of desktop devices.

adem
Guest
adem

i had mk908 v3 before i sold it i tried to install picuntu downloaded the latest one but it wouldn’t let me

Gianluca
Guest
Gianluca

Thank you very much for these detailed instructions. I really appreciate it.

Should this procedure work also on a Minix Neo X7?

Wilson
Guest
Wilson

Howdy,

Thank you so much for the detailed guide. Very well done with screen shots.

NOTE TO OTHERS WITH PROBLEMS FLASHING: I had problems getting errors when erasing and running the flash on my T-428. I tried it on another computer(my laptop) and it worked the first try. The problem might be the computer using.

Currently have Ubuntu 12.04 installed. Works great on some HD TV’s. Meaning, for some reason when I use my computer (preferred) using a HDMI to DVI input , it has over-scan issues. The borders all around are cut off and can not see about 3 inches all the way around. There are no options to change refresh / over-scan and did a search in Software Center. Works great on LCD TV direct HDMI in. The build still obviously does not support Hardware acceleration yet.

What flavor is better?
Ubuntu 12.04 desktop
Lubuntu 13.04 desktop (Ubuntu with LXDE)
Xubuntu 13.04 desktop (Ubuntu with XFCE)

Here’s what I am thinking to do. Run Adhoc with it’s own wifi network. Have VNC or Teamviewer SERVER running at start up.
Also have another usb WiFi device (Alfa card) plugged in.
Wished Hibernate was working.

Be able to easily , plug in power and connect via it’s own WIfI Adhoc and manage remotely with a phone or anything with VNC / Teamviewer client support.

wilson
Guest
wilson

Now that I have xubuntu installed and updated on my T428 mini pc, I really need to create image backup in case I crash my system and cant fix it..
PLEASE : Someone with experience doing this on a mini pc.
Im confused since its flashed not intsalled. Someone said I could just create a img file Ghost style.. is this correct? What about the kernel?

Anyone…

Wilson
Guest
Wilson

ANYONE??
I need to back up xubuntu on t428 I installed. It’s updated/configured

Yannick C./
Guest
Yannick C./

Thank you for the detailed instructions,and almost everything worked but for the last step (run) when it says that doanloading file failed… Any clue on what’s going on ?

Yannick C./
Guest
Yannick C./

@cnxsoft
Thanks for the answer… I have since tried to flash lubuntu (instead of ubuntu), and it works on MK809III.
Maybe I had another error on the ubuntu img file…
Also, I don’t if it’s a screen or video support problem, but there is a 1s blank screen every 7s. Not a dealbreaker for what I intend to do (mostly batch usage), but still annoying

Daniel
Guest
Daniel

do you know if it is possible to compile this kernel with 480p?

Pankaj Kumar
Guest

Can I install ArchLinuxARM on MK802 IV LE? If yes then how? Please help.

Abul
Guest
Abul

LUBUNTU PASSWORD IS ‘p’, then do the sudo passwd root, to change the root password… Hope it helps others who ran into the same problem..

Viric
Guest
Viric

The win7 x86 driver didn’t work for me (wrong platform, it said). And hence it didn’t recognise my mk802iv. I installed the driver the traditional way with the rk3088 driver from: http://www.rockchip.nl/downloads/

Which may be more up to date and more correct than these of the tool here presented.

trackback

[…] recently, installing Linux on Rockchip R3188 based TV boxes or HDMI TV dongles meant you had to flash one or more binaries to your device using […]

trackback

[…] been possible to run Linux or Android on ARM based board and producs for a while, with some firmware providing dual boot support, or even simultaneous use running a […]

Lucas
Guest
Lucas

I tried to install ubuntu and lubuntu on MK809III but “Check Download” failed. I don’t know what is happening. Can help me?

derek
Guest

Hello,
I just tried following this and got the same download image failed I am using MK802IV with the images provided.

two main questions: 1, how do I back up the stick before i try flashing it so i can recovery
and 2, not sure what to try next, download images failed, does this mean the parttion sizes are wrong ?

I have this device:
Rikomagic RKM MK802IV Quad Core Mini TV Box Player RK3188 Cortex A9 + 8GB Flash + Bluetooth + Android 4.2

derek
Guest

Hi,
I got it flashing, by using the RockChip Development tool v1.7.
I set the language to english,
set the boot file to RK3188Loader(L)_V1.20.bin,
clicked Erase ID block
clicked Erase all Blocks
Clicked on download.

then went back over to PicUntu 4.5 NAND ROM flash tool (RK_FLash_1.37) and flashed the ROM

It seems to work ok, with the INFO:Run OK displayed when it finishes.
I plug it in a screen, the red light comes on but nothing is displayed on the screen ????

any one any thoughts ?

derek
Guest

@cnxsoft
Ok, perfect, not sure what that is, looked it up and ill order one and see what i can find out.

one of these: https://www.adafruit.com/product/954 ?