Upgrade Rikomagic MK902 Android MiniPC from Ubuntu
By Leo Gaggl
If there would be an Oscar for the WORST firmware upgrade procedure (and associated drivers, documentation and general quality of software) Rikomagic should win this by a country mile !
Since all the information I found on the interwebs said Linux was not supported I ended up borrowing friends notebooks (as I don’t own any Windows machinery anymore). My main Toshiba Ultrabook seemed to have issues with picking up the USB from a Windows Virtual Machine). After not being able to get the absolute crap USB drivers that come with the firmware download with any of the machines (Vista & Win7_64) I was ready to throw in the towel and put the purchase of this unit (in hindsight I would not do it again anyway) down as a total waste.
I tried a last search on upgrading using Linux it turns out there was a very recent Rockchip Linux Upgrade Tool release.
Download Upgrade Tool
http://dl.radxa.com/rock/tools/linux/Linux_Upgrade_Tool_v1.16.zip
Dependencies
If you haven’t got the Android SDK or tools yet you need to install
sudo apt-get install android-tools-adb android-tools-fastboot
USB Configuration
sudo vim /etc/udev/rules.d/51-android.rules<br></br>#add the following line<br></br>SUBSYSTEMS=="usb", ATTRS{idVendor}=="2207", MODE="0666", GROUP="plugdev"
Restart udev
sudo udevadm control --reload-rules
vim ~/.android/adb_usb.ini<br></br>#add at the end of the file<br></br>0x2207
Restart the adb server
adb kill-server<br></br>adb start-server
You should be able to test with
adb devices
The output should be like the following:
adb devices
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached
0123456789ABCDEF recovery
Please note: for adb to recognise the device it needs to be booted in recovery mode (as per the instructions in the so-called “documentation” from Rikomagic).
Boot into recovery mode
- Plug in USB Male-to-Male connector into the port marked “Slave” – not the other 3 hubs
- Press the “Reset” button using a paper-clip or similar pointy object (I used a letter opener which at times I would have loved to use on whoever came up with the crap Windows-only drivers and wasted hours of my life I will not get back… :P )
- After 3-5 seconds release reset button and plug the other end of the USB Male-to-Male connector into the Ubuntu box.
Upgrading
This bit took me a little while to work out. Turns out the device was in recovery mode and for the firmware upgrade process needs to be in bootloader mode.
Boot Device in Recovery Mode
Set the device into bootloader mode with adb.
adb reboot bootloader
Testing the bootloader mode
sudo ./upgrade_tool
./upgrade_tool List of rockusb connected
DevNo=1 Vid=0x2207,Pid=0x310b,LocationID=10c Loader
Found 1 rockusb,Select input DevNo,Rescan press ,Quit press :
Run the final upgrade of the downloaded image.
sudo ./upgrade_tool uf RKM_MK902_4.4.2_20140515.img
Helpful Resources
Thanks to the respective authors !
http://wiki.radxa.com/Rock/flash_the_image#Linux
http://www.cnx-software.com/2013/11/19/how-to-flash-rockchip-rk3066-rk3188-firmware-in-linux/
http://linux-rockchip.info/mw/index.php
http://www.rockchipfirmware.com/developer-tools
NOTE: If you haven’t bought this device yet and you are thinking of it – my advise is have another look somewhere else unless you have a lot of time AND are a very patient person …..