Amlogic Generic AArch64 TV Box (amlogic-aarch64-tvbox)
![]() Amlogic | |
Manufacturer | Amlogic |
---|---|
Name | Generic AArch64 TV Box |
Codename | amlogic-aarch64-tvbox |
Released | 2015 |
Type | generic |
Hardware | |
Chipset | Amlogic |
Architecture | aarch64 |
Software | |
Original software The software and version the device was shipped with. |
Android |
Extended version The most recent supported version from the manufacturer. |
Android |
FOSS bootloader | partial |
postmarketOS | |
Category | testing |
Mainline Instead of a Linux kernel fork, it is possible to run (Close to) Mainline. |
yes |
pmOS kernel The kernel version that runs on the device's port. |
6.x.x |
Unixbench score Unixbench Whetstone/Dhrystone score. See Unixbench. |
0.0 |
Device package |
![]() |
Kernel package |
![]() |
This is a generic port for various Amlogic-based AArch64 set-top boxes.
It supports multiple ways of booting and also supports selecting generic Amlogic reference boards in order to work on as many Amlogic TV boxes as possible (although functionality may wildly vary depending on the device, so don't assume everything works!).
Refer to your device's wiki page for further information (such as supported features or detailed installation instructions).
Contributors
- User:FerassElHafidi (
f_
on IRC) - User:Exkc (@exxxxkc:matrix.org)
Devices
Device | Chipset | Architecture | USB Net | Flashing | Screen | Wifi | FDE | Battery | 3D | Audio | Bluetooth | HDMI/DP | USB-OTG |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
OTT X96 | Amlogic S905X | aarch64 | - | - | - | N | - | Y | - | ||||
Ugoos AM3 | Amlogic S912 | aarch64 | N | N | - | Y | - | Y | Y | - | Y | ||
Videostrong KII Pro | Amlogic S905 | aarch64 | N | - | - | Y | - | Y | Y | Y | Y | - | |
Xiaomi Mi Box 3 | Amlogic S905X-H | aarch64 | N | Y | Y | - | Y | P | Y | P | |||
Xiaomi Mi TV Stick | Amlogic S805Y | aarch64 | Y | - | - | N | - | P | Y | N | Y | Y |
How to enter flash mode
(See Amlogic#Boot process)
Installation
- Run
pmbootstrap init
and selectamlogic
as vendor andtvbox
as device. - Select the kernel variant based on your device
- Follow the onscreen instructions and configure as your needs.
Sample output:
(17:18:37) fun@carousel:~$ pmbootstrap init [17:18:39] Location of the 'work' path. Multiple chroots (native, device arch, device rootfs) will be created in there. [17:18:39] Work path [/home/fun/.local/var/pmbootstrap]: [17:18:40] Location of the 'pmaports' path, containing package definitions. [17:18:40] pmaports path [/home/fun/Documents/code/alpine/pmaports]: [17:18:42] Choose the postmarketOS release channel. [17:18:42] Available (12): [17:18:42] * edge: Rolling release / Most devices / Occasional breakage: https://postmarketos.org/edge [17:18:42] * v25.06: Latest release / Recommended for best stability [17:18:42] * v24.12: Old release (unsupported) [17:18:42] Channel [edge]: [17:18:43] NOTE: pmaports is on master branch, copying git hooks. [17:18:43] Choose your target device vendor (either an existing one, or a new one for porting). [17:18:43] Available vendors (100): acer, alcatel, amazon, amediatech, amlogic, apple, ark, arrow, asus, ayn, bananapi, barnesnoble, beelink, bq, clockworkpi, cubietech, cutiepi, dongshanpi, epson, essential, fairphone, finepower, fly, fxtec, generic, goclever, google, gp, hisense, htc, huawei, inet, infocus, jolla, khadas, klipad, kobo, lark, leeco, lenovo, lg, librecomputer, linksys, lynx, mangopi, medion, meizu, microsoft, mnt, mobvoi, motorola, nextbit, nobby, nokia, nothing, nvidia, odroid, oneplus, oppo, ouya, pine64, planet, pocketbook, postmarketos, powkiddy, purism, qcom, qemu, qualcomm, radxa, raspberry, realme, rockchip, samsung, semc, sharp, shift, sipeed, solidrun, sony, sourceparts, starway, surftab, t2m, thundercomm, tokio, tolino, trekstor, valve, vernee, vivo, volla, wexler, wiko, wileyfox, xiaomi, xunlong, yu, zte, zuk [17:18:43] Vendor [samsung]: amlogic [17:18:46] Devices are categorised as follows, from best to worst: * Main: ports where mostly everything works. * Community: often mostly usable, but may lack important functionality. * Testing: anything from "just boots in some sense" to almost fully functioning ports. * Downstream: ports that use a downstream kernel — very limited functionality. Not recommended. Available devices by codename (1): aarch64-tvbox (testing) [17:18:46] Device codename: aarch64-tvbox [17:18:50] Which kernel do you want to use with your device? [17:18:50] Available kernels (7): [17:18:50] * p201: Kernel for Amlogic P201-based TV box (S905) [17:18:50] * p212: Kernel for Amlogic P212-based TV box (S905X) [17:18:50] * p241: Kernel for Amlogic P241-based TV box (S805X/S805Y) [17:18:50] * p281: Kernel for Amlogic P281-based TV box (S905W) [17:18:50] * ugoos-am3: Kernel for Ugoos AM3 (S912) [17:18:50] * videostrong-kii-pro: Kernel for Videostrong KII Pro (S905) [17:18:50] * xiaomi-aquaman: Kernel for Xiaomi Mi TV Stick (S805Y) [17:18:50] Kernel [p201]: // <- select your device here
Then flash to an USB stick/SD card:
$ pmbootstrap install --disk=/dev/device # Replace device with your storage device
Next, boot pmOS on your device. This might depend on which device you're trying to boot. On most devices, you need to hold a button hidden in the AV port or at the bottom while booting. For other devices where this does not work, look at your device's page. E.g. Xiaomi Mi Box 3 (xiaomi-once) requires some more setup before it'll boot.