MK802II A20

aus Metalab, dem offenen Zentrum für meta-disziplinäre Magier und technisch-kreative Enthusiasten.
Wechseln zu: Navigation, Suche

This page is a rough guide on how to get linux running on the MK802II_A20 android hdmi stick.

Cover small.jpg


I'm actually not sure how to call this device since it is sold on ali express under many names. I choose MK802II_A20 since that's the name of the uboot dram config that was closest to the actually config i'm using (see "Bootloader" below). Another good candidate for a name would be "QT800" since that is printed on the pcb (an there is a very similar hdmi dongle out there call "reko qt800")

Serial Communication

The fist thing i needed is getting serial communication with the device working. I didn't know where and if the rs232 pins are exposed on the pcb. Also some of the promising looking test pads were pretty tiny. So i soldered cables to those test pads and hooked them up to an oscilloscope.

Cables mk802ii a20.jpeg

And those are the RX and TX pins i found. For ground i soldered to the base of the hdmi plug.

Serial mk802ii a20.jpg


The stick comes with a boot1 bootloader configured to allow booting from the micro sd card. If no sd card is inserted it boots uboot as secondary bootloader from the internal nand which boots android. So i needed a compatible uboot written to an sd card that will boot the linux kernel. But how to know which uboot configuration to choose? After having a few tries guessing sensible values from dram configurations of similar devices i found out about fel. Fel is a really cool tool for Allwinner cpus that let's you do all kind of interesting things but in our case we are interested in dumping data from the internal nand device. That way i was able to access the script.bin data which is compiled from a fex file. Luckily there are also the sunxi tools which let you decompile the script.bin back to a fex file. And it this fex file i found the exact values in order to use for the dram config. I edited the dram file corresponding to mk802II_a20 and compiled uboot with spl. After writing it to an sd card i had a working secondary bootloader.


I decided to use kernel version 3.4.90 since it's quite recent and i've already used it for A10 based devices. Based on my experience with similar devices and a bit of guess work i came up with this configuration.