Sunchip CX-A99

This board is used in at least five similar Android TV box products. So far all known products with this board use eMMC as storage, but the board is prepared for use of NAND flash instead of eMMC.

= Identification =

In FEL mode, the device show up as "1f3a:efe8 Onda (unverified) V972 tablet in flashing mode" in lsusb.

In android, under Settings->About Tablet, you will find:
 * Model Number: 
 * Build Number: 

After opening the case, a sticker with the text CX-A99 becomes visible on the Ethernet connector. The main PCB has "A99-V1.1" and "2014-12-15" printed on it next to the Ethernet connector.

= Sunxi support =

Sunxi/Legacy U-Boot
Like all A80 based devices, there is no support in u-boot-sunxi.

Mainline U-Boot
Like all A80 based devices, there is no support in mainline U-Boot.

Sunxi/Legacy Kernel
Like all A80 based devices, there is no support in our sunxi kernel.

Mainline kernel
In progress. Only UART, SD/(e)MMC and at most 3.5 GiB of memory works so far. Use the  device-tree binary.

Manual build
= Tips, Tricks, Caveats =

FEL mode
The button on the underside of the board triggers FEL mode. This button can be accessed through a hole in the bottom of the case (i.e. without disassembling the device).

Reading from the device fails with "usb_bulk_send ERROR -7: Operation timed out".

Device disassembly
Unscrew each of the four screws under the rubber pad in each corner of the bottom of the case. The case can now be opened carefully.

Unscrew the screw holding the small board with red/blue led and IR receiver to the top part of the case.

Unscrew the screw holding the ground wire to the top part of the case.

Unscrew the four screws holding the main PCB to the top part of the case.

Carefully unplug the antenna cable from the main PCB. The main PCB can now be removed from the case.

Locating the UART (serial console port)
Opposite of the SD or micro-SD card slot, there is a 5-pin header, with a small, white triangle pointing to pin 1. The pinout is:


 * 1	Ground.
 * 2	Ground.
 * 3	+3.3 V.
 * 4	UART0 RX input (GPIO pin PH13) with 3.3 V levels.
 * 5	UART0 TX output (GPIO pin PH12) with 3.3 V levels.

TIP: When logged into the console, use the stty command to set a terminal size that matches that of your terminal window, e.g. "stty columns 262 rows 78", so your screen will not become messed up.

Extracting sys_config.fex
(Note: This is only of interest if you want to construct a device tree file for mainline U-Boot and mainline kernel.)

In the "Draco AW80_SDK3.0_151117" image (which can be unpacked using awutils), the file name is "COMMON _SYS_CONFIG100000". Note that the Ubuntu image made by Tronsmart does not contain a correct version of this file.

Once you have root, you can also extract the file from the eMMC card partition 10:

sed -n -e '/;A80 PAD/ s/.*;A80 PAD/;A80 PAD/' -e '/^;A80 PAD/,/^cpu7/ p' /dev/mmcblk2p10 >sys_config.fex

= Pictures =

= Also known as =

Products using eMMC as storage:


 * Instabox Fantasy A8 (no external antenna)
 * Jesurun CS-Q8
 * Jesurun Maxone
 * Rikomagic (RKM) MK80/MK89LE
 * Tronsmart Draco AW80 Telos (SD card slot instead of micro-SD card slot)

= See also =

Manufacturer images
[Tronsmart Draco_AW80_SDK3.0_151117 image]