FreedomBoxBlog

Introducing the MK802 FreedomStick.

Rob van der Hoeven
Fri Sep 07 2012

Recently a whole range of cheap Android devices have become available, all powered by the Allwinner A10 SoC. Thanks to the way A10 devices boot they are very easy to hack. All that is needed is a bootable SD card. How to make such a card is no big secret, and there are now multiple SD card images available. You can boot for example Lubuntu or Debian instead of Android. One A10 device, the MK802 stick computer, is almost ideal for a small home server. I bought one to examine its potential for the FreedomBox.

What makes A10 devices special?

Before i share my experiences with the MK802 i have to write something about its hart, the Allwinner A10 SOC. This remarkable 400 pin (!) chip only costs about $7 and houses the following:

Wow!

Apart from all the hardware features its boot process is also interesting. Booting goes as follows:

Step 1 can recover a "bricked" device. Step 2 makes loading an alternative OS possible. Very hacking friendly!

What A10 devices are available?

The A10 is used in a whole range of products, from tablets to TV multi media boxes to stick computers. The most popular devices are:

The $70 Mele A1000. This is a complete computer. Some specs: 512 Mb RAM, SD slot, support for SATA Hard-disks, connectors for multiple types of monitor (VGA/HDMI/Analog video), 10/100 Ethernet connector, WIFI, Audio out and two USB host ports.

The $65 MK802. This is a stick sized computer (0.47 x 3.46 x 1.38 inch) that has (of course) less connectors than the Mele A1000. The specs are: 1024 MB RAM (older versions 512 MB), microSD slot, HDMI video out, WIFI, one USB host port and one USB-OTG port.

You will probably agree with me that the $70 Mele is a better deal - the MK802 is overpriced. It would not surprise me if the MK802 drops in price to about $40 in the near future.

Booting an alternative OS.

A10 devices have become very popular the last few months and a lot of development is going on. Most development targets Lubuntu (Ubuntu + LXDE) and the Mele A1000.

The best way of running an alternative OS is download a ready made SD image for your device and write this to a cheap SD card (8GB class 4 is fine). On my MK802 i successfully tried the following images:

A Lubuntu 12.04 desktop version, downloaded from miniand.com. This version has a fixed 720p HDMI output with no hardware acceleration. While i'm not very interested in desktop use, i found the desktop performance quite acceptable. This Lubuntu version seems stable too.

The Linaro-alip armhf version. This image is made by Toby Corkindale and has an 1080p HDMI output, again with no hardware acceleration. Desktop performance is acceptable, stability is OK.

How does the MK802 perform?

A small internet-connected server like the FreedomBox should meet the following performance requirements:

All of these can be measured easily. Measurements are more interesting if you can compare them for different systems, so i decided to do the same measurements for the following systems:

Except for the MK802, all systems have a wired 1Gb Ethernet connection. For the MK802 i did two measurements: one with WiFi Ethernet and one with a wired 100Mb USB-Ethernet dongle.

To measure the performance i used an experimental python-powered version of my blog. This version does not use a database, but stores the individual postings in a simple directory structure. For each request 10 postings are read from disk and served as one HTML page that looks (almost) exactly like my normal blog. The size of this page is 64.9 Kb.

Apache bench was used to measure the performance in pages/sec. I requested 1000 pages with a concurrency of 10. The results are:

             Marvel  MK802  MK802  Atom    Desktop
             6281    WiFi   Wired  330(*)  G620 (**)
Pages/sec.   25      12     39     174     805
MB/sec.      1.64    0.77   2.5    11.2    52
Power (W)    ~13     3-4    4      35      45
Pages/sec/W  2       3      10     5       18

(~) estimation, could not measure without ruining my uptime :-)
(*) 4 threads were used.
(**) 2 cores (= 2 threads) were used.

From the results the following conclusions can be drawn:

My overall conclusion is that the MK802 should do well as a FreedomBox. It's a pity that it has no wired Ethernet connection. It has however an USB-OTG port which could be programmed to behave like an Ethernet dongle (just like those WIFI sticks - you plug one in and it is detected as a new network interface)

Links.

Here are some links to start with if you are interested in A10 devices:

Much pioneering work on the A10 was done by Luke Kenneth Casson Leighton. Luke is the one behind Rhombus Tech. A Community Interest Company, which is developing an open hardware Computer-on-Module that uses the A10. Lots of info can be found at:

http://rhombus-tech.net/allwinner_a10/

A good place to buy an A10 device is "The Cubies hacker shop" at:

http://www.aliexpress.com/store/511685

Tom Cubie (alias hipboi) is very actively involved in getting GNU/Linux working on the A10. Just like Luke he is planning to release open hardware based on the A10.

http://cubieboard.org/

Both the SD card images i used come from the miniand.com website. Miniand sells A10 devices and has a busy forum at:

https://www.miniand.com/forums/

MK802 images are available at:

https://www.miniand.com/forums/forums/development/topics/mk802-guides-and-images

Another company that sells the MK802 and other A10 devices is Rikomagic.

http://www.rikomagic.co.uk/

forum:

http://www.rikomagic.co.uk/forum/viewforum.php?f=2&sid=3c3ef83dd83af61f8af6a82c6b28cf47

Someone named gnexus has a very interesting site about A10 devices:

http://a10linux.org/

Last but not least - i enjoyed the info at Jeff Doozan's site.

http://forum.doozan.com/list.php?6