Skip to content
View in the app

A better way to browse. Learn more.

Armbian Community Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

CSC Armbian for RK322x TV box boards

Featured Replies

On 4/17/2026 at 8:15 AM, digital said:

But wifi does not work, although armbian-config sees my wifi network and saves password for it. rk322x-config shows Wifi device: unknown - Device ID: 024c:b723. 
dmesg:

r8723bs: module is from the staging directory, the quality is unknown...

r8723bs: unknown parameter 'rtw_enusbss' ignored

lsmod shows module as unused:
r8723bs 405504 0

Could changing led-confs help?

 

 

@digital, there is not a lot of info about the 024c:b723 device you mentioned on linux-hardware.org, but there is a lot of people claiming it works on debian 10+.

 

Some boards have alternate pins for wireless chips, hence there is an specific wifi overlay for those scenarios (attached pic). However, I would not recommend to add this overlay for now, until we find the exact wifi chip model from your board... Can you share more details form your board? Brand/Model would be a start, but pictures from the board, and specially the wi-fi chip would be the best.

Also, please share the output of the commands below with us:

1- lsusb
2- lshw (install it with sudo apt install lshw)
3- dmesg | grep -iE 'wlan|wifi|wireless|80211'

4 - ip a

5 - nmcli

 

image.png

On 4/9/2026 at 5:31 PM, Tavares R said:

3D Graphics Acceleration on T95N (A98X Jackbox) - RK3229 with 2GB RAM / 16GB eMMC - Educational Project for Schools

 

Hi,

I’m working on a project using a specific TV Box model (A98X Jackbox) to repurpose these boxes as low-cost computers for schools. The goal is to provide students with a platform to use AI tools and basic productivity, but I need better browser rendering.

 

Hardware Specs (Confirmed via board teardown and logs):

  • Board ID: T95N-RK3229_512X4_V1.5
  • CPU: Rockchip RK3229
  • RAM: 2GB (Confirmed via free -m)
  • Storage: 16GB eMMC (SanDisk SDIN9DS2-16G)
  • OS: Armbian 21.08.8 Bullseye (Legacy Kernel 4.4.194-rk322x)

 

What I have done so far:

  1. Installed the Minimal image and set up LXDE with LightDM.
  2. Optimized the system (Governor set to performance, swappiness set to 10).
  3. Ran glxinfo -B which confirms it's currently using llvmpipe (Accelerated: no).
  4. Tried searching for Mali drivers via apt, but armbian-config is not available in the repositories for this specific build/architecture.
  5. Verified Wi-Fi functionality (working fine with LED config 2 via rk322x-config).

The system is stable and surprisingly fast thanks to the 2GB RAM, but the CPU is struggling with 100% spikes during browser rendering (Epiphany WebKit) because it lacks GPU acceleration.

 

Question: Is there a way to enable Mali-400 MP2 drivers for X11 on this Legacy 4.4 kernel? Are there any specific packages, blobs, or workarounds to get hardware acceleration working and replace llvmpipe?

 

I’m available to run any tests or provide further logs if needed.

 

Thanks for this amazing project!



Hi @Tavares R

You should definetly check the "Media framework installer v0.1" by Jock, on this link -> https://forum.armbian.com/topic/34923-csc-armbian-for-rk322x-tv-box-boards/page/10/#comment-102655

 

Also, this other link contains a repo to install some patched libs to at least use decoded video -> https://forum.armbian.com/topic/32449-repository-for-v4l2request-hardware-video-decoding-rockchip-allwinner/ 

 

Hope it helps, but reality check is the rk3229 is just too weak to properly handle a full DE running a modern browser... 

Something also worth trying is to enable the "cpu-hs" overlay. it will "overclock" the rk3229 from 1200Mhz to 1400Mhz, giving some extra performance, but keep low expectations...

image.thumb.png.8c4d70cf9f3634230b0451f7380d7189.png

PS: Are you brazillian by any means?
 Tavares is a very common last name in Brazil.

Hello everyone. I made a direct connection between the 5V from the motherboard and the 5V from the USB ports to try and overcome the current limitation of the USB ports.

 

However, something went wrong. I undid this direct connection, but the motherboard is still shorting the USB ports.

I believe the short circuit is in that ADG3T port. Does anyone have any idea what happened? I didn't even connect anything to the USB port.

Thanks.

 

Captura de tela de 2026-05-19 13-49-33.png

38604.jpg38608.jpg38609.jpgLMC-20260521-%20COPIAR%20081753-Imc-8-4-Hi everyone, I have a ZQ01-v1.51 board (a clone of the MXQ Pro 5G—way to go, China!) with an RK3228A chip and Kingston eMCP memory. I’ve tried the Armbian and Educabox images, as well as LibreELEC 10, 11, and 12, and they all have a common issue: the system boots up to the login screen. The screenshots I’m sharing now are from Armbian 23.08.0 Edge 6.5.5 Minimal.

 

The problem is that at a certain point during the boot process, the screen starts flickering, and then when I finally reach the login screen, the image lasts a few seconds before the screen goes black. However, the screen doesn’t turn off—there’s simply no image, the red LED stays lit, and nothing else happens.

 

I don't have an SD card, so I'm using Lubuntu and Rkdeveloptool for flashing.

---
  Hey everyone! Long-time lurker, first post here.

  I picked up one of those cheap RK3229 TV boxes and decided to see how far I could push it on a mainline
  kernel — no Android, no BSP, no blobs. What started as curiosity about whether rkvdec actually worked on
  kernel 6.6 turned into a full rabbit hole of GStreamer pipelines, PHY register dumps, and DRM memory
  bandwidth math.

  The whole debugging and documentation process was done collaboratively with Claude (Anthropic's AI
  assistant), which made it a lot easier to dig into kernel driver internals and iterate on the pipeline
  without spending weeks at it. All the results were validated on real hardware.

  Sharing here in case it saves someone else the same rabbit hole.

---
  [GUIDE] Hardware H.264 decode at 720p — mainline kernel 6.6, GStreamer, no blobs

  After spending some time on my RK3229 TV box running Armbian 24.2.5 Bookworm (kernel
  6.6.22-current-rockchip), I got hardware H.264 decode working at 720p real-time using only mainline kernel
  drivers and open-source GStreamer plugins. Posting here in case it helps others.

  ---
  What works

  - H.264 720p@30fps fully hardware decoded via rkvdec (the mainline V4L2 stateless decoder)
  - Direct HDMI output via kmssink (DRM/KMS — no X11, no Wayland needed)
  - Audio output via ALSA (HDMI or analog)
  - YouTube streaming with audio+video in sync using a small proxy server

  What doesn't work and why

  - 1080p: The decoder itself handles it, but writing ~90 MB/s of NV12 frames to uncached DRM memory
  saturates the Cortex-A7 memory bus. Not a software problem — there's no fix without DMA-BUF zero-copy
  between rkvdec and the DRM subsystem.
  - YouTube in a browser: Browsers do their own software decode — no VA-API bridge exists for rkvdec on
  mainline. Even with a desktop environment installed, frame rate will be unusable.
  - HEVC / AV1: Not supported by rkvdec on RK3228/RK3229.

  ---
  The GStreamer pipeline

  # Local H.264 file — video only
  gst-launch-1.0 filesrc location=video.mp4 ! qtdemux ! h264parse \
    ! v4l2slh264dec ! videoconvert ! kmssink driver-name=rockchip sync=true

  # YouTube streaming with audio (requires proxy — see repo)
  gst-launch-1.0 -e \
    souphttpsrc location="http://PROXY_IP:8091/play?v=VIDEO_ID&q=720&fmt=ts" automatic-redirect=true ! \
    tsdemux name=demux \
    demux. ! queue ! h264parse ! v4l2slh264dec ! videoconvert ! kmssink driver-name=rockchip sync=true \
    demux. ! queue ! aacparse ! avdec_aac ! audioconvert ! audioresample \
    ! "audio/x-raw,rate=44100,channels=2" ! alsasink device=hw:2

  Key points:
  - v4l2slh264dec is the stateless GStreamer element — do not use h264_v4l2m2m (that's for stateful decoders
  like RPi)
  - kmssink driver-name=rockchip uses /dev/dri/card0 (Rockchip DRM display), not the Lima GPU
  - For YouTube, MPEG-TS (fmt=ts) is required — fragmented MP4 with empty_moov breaks GStreamer cap
  negotiation

  ---
  Why this is different from Jock's media framework

  Jock's framework uses kernel 4.4 + RKMPP proprietary blobs. This uses kernel 6.6 mainline + rkvdec upstream
   driver + open-source GStreamer. No blobs, works with current Armbian, survives kernel upgrades.

  ---
  Requirements

  - Armbian 24.x with kernel 6.6-current-rockchip (kernel 5.15 / Bullseye not tested — V4L2 stateless API
  wasn't stable until 5.18)
  - GStreamer 1.22 from Debian Bookworm

  sudo apt install -y gstreamer1.0-tools gstreamer1.0-plugins-base \
    gstreamer1.0-plugins-good gstreamer1.0-plugins-bad \
    gstreamer1.0-libav gstreamer1.0-alsa

  ---
  Repo with scripts and full setup guide

  https://github.com/Reinoldo-Ozy/rk322x-mediaplayer

  Includes the yt-play playback script and the proxy server (yt_proxy.py) with systemd unit. The README
  covers the full setup, performance numbers, and a detailed limitations section.

  Tested on a generic MXQ Pro-style box with RK3229, 2 GB RAM, Armbian 24.2.5 Bookworm, kernel
  6.6.22-current-rockchip, DTB rk322x-box.dtb.

  • Author

@reinoldo vieira nice you found a pipeline that works with gstreamer!

 

I have a couple of notes though:

  • why using such an old armbian image with such old kernel? Current images are on Debian Trixie with kernel 6.18 (edge packages are on 7.0)
  • hardware video acceleration is working for years on rk3229, there is a thread mentioned in first page to an ffmpeg repository to achieve that with mpv

Hi @jock, thanks for the feedback!
  
  Honestly, I didn't expect the current images to be that up to date — when I was looking for a
  stable image for the RK322x I ended up grabbing what was readily available (24.2.5 Bookworm)
  without checking if there were newer ones. My bad for not looking more carefully.
 
  I'll update the box to Trixie with kernel 6.18 and also take a look at the ffmpeg/mpv thread you
  mentioned. Appreciate the pointers!

  • Author
5 hours ago, reinoldo vieira said:

  I'll update the box to Trixie with kernel 6.18 and also take a look at the ffmpeg/mpv thread you
  mentioned. Appreciate the pointers!

You'd better upgrade the kernel to 6.18 and keep Debian Bookworm, because Trixie has an mpv version which is not exactly friendly with hardware video decoding because some things are in the middle of a transition

On 5/21/2026 at 10:28 AM, Joel Gómez said:

38604.jpg38608.jpg38609.jpgLMC-20260521-%20COPIAR%20081753-Imc-8-4-Hi everyone, I have a ZQ01-v1.51 board (a clone of the MXQ Pro 5G—way to go, China!) with an RK3228A chip and Kingston eMCP memory. I’ve tried the Armbian and Educabox images, as well as LibreELEC 10, 11, and 12, and they all have a common issue: the system boots up to the login screen. The screenshots I’m sharing now are from Armbian 23.08.0 Edge 6.5.5 Minimal.

 

The problem is that at a certain point during the boot process, the screen starts flickering, and then when I finally reach the login screen, the image lasts a few seconds before the screen goes black. However, the screen doesn’t turn off—there’s simply no image, the red LED stays lit, and nothing else happens.

 

I don't have an SD card, so I'm using Lubuntu and Rkdeveloptool for flashing.



Hello Joel,

This seems to be one an known incompatibility with the main Trust OS. There is a experimental image built with an alternative opensource trust OS that might fix this, and it can be downloaded here. Do a test and let us know. PS: Recently OS OP-Tee has been updated to the multitool, and ideally you should test it using a SD Card.


BTW: Your screenshot links did not work. 

BTW2: When the screen goes off can you still connect trough SSH?

On 5/19/2026 at 1:50 PM, jeffbzrr said:

Hello everyone. I made a direct connection between the 5V from the motherboard and the 5V from the USB ports to try and overcome the current limitation of the USB ports.

 

However, something went wrong. I undid this direct connection, but the motherboard is still shorting the USB ports.

I believe the short circuit is in that ADG3T port. Does anyone have any idea what happened? I didn't even connect anything to the USB port.

Thanks.


The short-circuit you did probably created feedback loop generating tension coming back to some component of the board, possibly burning it unfortunately. Never join 2 power sources without filter balancing it or adding extra capacitors...

Is the board turning on? 

Try to turn on and look for heated places in the board... With a thermal camera will be easier, but if you don't have one, you may touch the components to see which are hot, or add some drops of isopropyl alcohol only on top of components and see if it evaporates too fast like this -> link.

If a component is heating too fast, probably its short-circuited/burnt and needs replacement.

On 6/11/2026 at 12:38 AM, jock said:

I have been able to download it from the first page, are you sure?

 

edit:

 

nope it looks like that the server was blacklisted somewhere in my adblocker blacklist. 

Edited by remlei

Hi, could someone please give me a backup of the MXQ PRO 4K (5G version) WiFi EA6521QF? I need it for my Android TV box. Thanks.

hi, I've been running Armbian on my TV box for a few weeks now as a little server and it works great, but I noticed a few problems:

1. wifi never seems to work regardless of led-conf settings. best I've gotten so far is led-conf4 and led-conf7 letting me scan networks, but connecting always fails (SSV6051P)

2. not only does bluetooth not work in any led-conf, it seems to be stuck in a weird state where it tries to aggressively connect to anything it sees, disrupting things like bluetooth speakers around my house

how should I troubleshoot these?

 

my box is an old model I found collecting dust in my house, branded "A6 8K". apparently so rare I can't find exact photos or listings of it online

rk322x-config says:

Chip type: RK3228A/B - Serial: URKU40011 00000000102437

CPU Leakage: 0x07 - Logic Leakage: 0x05

Internal flash: eMMC

 

see attached photos for motherboard pics and rk322x.txt for descriptions of behavior with each led-conf

I can provide a backup of its original android install privately if needed

 

tested on edge kernel: Linux rk322x-box 7.1.4-edge-rockchip #1 SMP Sat Jul 18 14:55:52 UTC 2026 armv7l GNU/Linux

with overlays: cpu-hs emmc emmc-ddr-ph45 ddr3-800 + each led-conf

 

IMG_20260726_020501.jpg

IMG_20260726_020453.jpg

IMG_20260726_020444.jpg

IMG_20260726_020420.jpg

IMG_20260726_020409.jpg

IMG_20260726_020341.jpg

IMG_20260726_020214.jpg

IMG_20260726_020200.jpg

rk322x.txt

On 5/16/2026 at 2:12 AM, Vinicius Guastala said:

Also, please share the output of the commands below with us:

1- lsusb
2- lshw (install it with sudo apt install lshw)
3- dmesg | grep -iE 'wlan|wifi|wireless|80211'

4 - ip a

5 - nmcli

It is Dolamee D5 (same as NEXSMART D32).
lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

lshw
rk322x-box                  
    description: ARMv7 Processor rev 5 (v7l)
    product: Generic RK322x Tv Box board
    serial: bf9514...
    width: 32 bits
    capabilities: smp
  *-core
       description: Motherboard
       physical id: 0
     *-cpu:0
          description: CPU
          product: cpu
          physical id: 0
          bus info: cpu@0
          size: 1392MHz
          capacity: 1392MHz
          capabilities: half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm cpufreq
     *-cpu:1
          description: CPU
          product: cpu
          physical id: 1
          bus info: cpu@1
          size: 1392MHz
          capacity: 1392MHz
          capabilities: half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm cpufreq
     *-cpu:2
          description: CPU
          product: cpu
          physical id: 2
          bus info: cpu@2
          size: 1392MHz
          capacity: 1392MHz
          capabilities: half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm cpufreq
     *-cpu:3
          description: CPU
          product: cpu
          physical id: 3
          bus info: cpu@3
          size: 1392MHz
          capacity: 1392MHz
          capabilities: half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm cpufreq
     *-memory
          description: System memory
          physical id: 4
          size: 1984MiB
  *-usbhost:0
       product: EHCI Host Controller
       vendor: Linux 6.18.25-current-rockchip ehci_hcd
       physical id: 1
       bus info: usb@1
       logical name: usb1
       version: 6.18
       capabilities: usb-2.00
       configuration: driver=hub slots=1 speed=480Mbit/s
  *-usbhost:1
       product: Generic Platform OHCI controller
       vendor: Linux 6.18.25-current-rockchip ohci_hcd
       physical id: 2
       bus info: usb@2
       logical name: usb2
       version: 6.18
       capabilities: usb-1.10
       configuration: driver=hub slots=1 speed=12Mbit/s
  *-usbhost:2
       product: EHCI Host Controller
       vendor: Linux 6.18.25-current-rockchip ehci_hcd
       physical id: 3
       bus info: usb@3
       logical name: usb3
       version: 6.18
       capabilities: usb-2.00
       configuration: driver=hub slots=1 speed=480Mbit/s
  *-usbhost:3
       product: EHCI Host Controller
       vendor: Linux 6.18.25-current-rockchip ehci_hcd
       physical id: 4
       bus info: usb@4
       logical name: usb4
       version: 6.18
       capabilities: usb-2.00
       configuration: driver=hub slots=1 speed=480Mbit/s
  *-usbhost:4
       product: Generic Platform OHCI controller
       vendor: Linux 6.18.25-current-rockchip ohci_hcd
       physical id: 5
       bus info: usb@5
       logical name: usb5
       version: 6.18
       capabilities: usb-1.10
       configuration: driver=hub slots=1 speed=12Mbit/s
  *-usbhost:5
       product: Generic Platform OHCI controller
       vendor: Linux 6.18.25-current-rockchip ohci_hcd
       physical id: 6
       bus info: usb@6
       logical name: usb6
       version: 6.18
       capabilities: usb-1.10
       configuration: driver=hub slots=1 speed=12Mbit/s
  *-mmc0
       description: MMC Host
       physical id: 7
       logical name: mmc0
  *-mmc1
       description: MMC Host
       physical id: 8
       logical name: mmc1
     *-device
          description: SDIO Device
          physical id: 1
          bus info: mmc@1:0001:1
          logical name: mmc1:0001:1
          serial: 0
          capabilities: sdio
  *-mmc2
       description: MMC Host
       physical id: 9
       logical name: mmc2
     *-device
          description: SD/MMC Device
          product: T52716
          vendor: Unknown (112)
          physical id: 1
          bus info: mmc@2:0001
          date: 04/2016
          serial: 162369974
          capabilities: mmc
        *-interface:0
             physical id: 1
             logical name: /dev/mmcblk2rpmb
        *-interface:1
             physical id: 2
             logical name: /dev/mmcblk2
             size: 15300820992
             capabilities: partitioned partitioned:dos
             configuration: logicalsectorsize=512 sectorsize=512 signature=0035f365
           *-volume
                description: EXT4 volume
                vendor: Linux
                physical id: 1
                logical name: /dev/mmcblk2p1
                logical name: /
                logical name: /var/log.hdd
                version: 1.0
                serial: 5ba1703d-a005-45bd-b77a-552aa2bbc234
                size: 14GiB
                capacity: 14GiB
                capabilities: primary journaled extended_attributes large_files huge_files dir_nlink recover 64bit extents ext4 ext2 initialized
                configuration: created=2026-04-27 20:14:03 filesystem=ext4 label=armbi_root lastmountpoint=/ modified=2026-07-31 13:10:01 mount.fstype=ext4 mount.options=rw,relatime,errors=remount-ro,commit=120 mounted=2026-07-26 18:16:58 state=mounted
  *-sound:0
       description: HDMI
       physical id: a
       logical name: card0
       logical name: /dev/snd/controlC0
       logical name: /dev/snd/pcmC0D0c
       logical name: /dev/snd/pcmC0D0p
  *-sound:1
       description: analog
       physical id: b
       logical name: card1
       logical name: /dev/snd/controlC1
       logical name: /dev/snd/pcmC1D0p
  *-sound:2
       description: SPDIF
       physical id: c
       logical name: card2
       logical name: /dev/snd/controlC2
       logical name: /dev/snd/pcmC2D0p
  *-input
       product: gpio_ir_recv
       physical id: d
       logical name: input0
       logical name: /dev/input/event0
       capabilities: platform
  *-network:0
       description: Ethernet interface
       physical id: e
       logical name: end0
       serial: 3a:73:b5:e0:e3:ba
       size: 100Mbit/s
       capacity: 100Mbit/s
       capabilities: ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=st_gmac driverversion=6.18.25-current-rockchip duplex=full ip=192.168.1.33 link=yes multicast=yes port=twisted pair speed=100Mbit/s
  *-network:1 DISABLED
       description: Wireless interface
       physical id: f
       bus info: mmc@1:0001:1
       logical name: wlan0
       serial: 00:e0:4c:b7:23:00
       capabilities: ethernet physical wireless
       configuration: broadcast=yes driver=rtl8723bs driverversion=6.18.25-current-rockchip multicast=yes wireless=IEEE 802.11
 

dmesg | grep -iE 'wlan|wifi|wireless|80211' 
[   12.099414] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[415434.295809] warning: `lshw' uses wireless extensions which will stop working for Wi-Fi 7 hardware; use nl80211
 

ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host noprefixroute 
       valid_lft forever preferred_lft forever
2: end0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 3a:73:b5:e0:xx:xx brd ff:ff:ff:ff:ff:ff
    altname enx3a73b5e0xxxx
    inet 192.168.1.33/24 brd 192.168.1.255 scope global dynamic noprefixroute end0
       valid_lft 1491sec preferred_lft 1491sec
    inet6 fe80::4ac1:84da:103f:d1a5/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
3: sit0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN group default qlen 1000
    link/sit 0.0.0.0 brd 0.0.0.0
4: ip6tnl0@NONE: <NOARP> mtu 1452 qdisc noop state DOWN group default qlen 1000
    link/tunnel6 :: brd :: permaddr f21f:c174:29b1::
5: wlan0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 00:e0:4c:b7:xx:xx brd ff:ff:ff:ff:ff:ff
    altname wlx00e04cb7xxxx
 

nmcli

end0: connected to Wired connection 1
        "end0"
...

wlan0: unavailable
        "wlan0"
        wifi (rtl8723bs), 00:E0:4C:B7:xx:xx, hw, mtu 1500
 

@gomputer

 

given that I dont see any IR receiver on the board, this maybe using a RF based remote (maybe a rf433?) that maybe only works on specific codes stored on the that eeprom chip besides it.

 

also the bluetooth, that JL chip is very common on many cheap chinese bluetooth audio module and you cant really see any kind of documentation on that chip so that maybe a lost cause, the best thing you can do is just pry off that JL chip. 

 

as for the wifi. try using the other 7 and 8 or even the alt-wiring, but you dont see that on rk322x-config, you can run armbian-config and go to System > Kernel > Manage Device Tree Overlays

@remlei

 

Quote

given that I dont see any IR receiver on the board, this maybe using a RF based remote (maybe a rf433?) that maybe only works on specific codes stored on the that eeprom chip besides it.

yes, it's a rf remote

 

Quote

also the bluetooth, that JL chip is very common on many cheap chinese bluetooth audio module and you cant really see any kind of documentation on that chip so that maybe a lost cause, the best thing you can do is just pry off that JL chip. 

I've cut the antenna for now. I found the name of the chip (AC6929C) but couldn't find any datasheets for it

 

Quote

as for the wifi. try using the other 7 and 8 or even the alt-wiring

I tried led-conf8 and it behaved the same as conf4 and conf7

I'm not sure how I should test alt-wiring - is it intended to be used with or without a led-conf overlay enabled?

trying either only shows messages like "pin gpio1-2 already requested by ....; cannot claim for ...." and "error -EINVAL: pin-34 (....)" in dmesg with the exact values changing depending on the led-conf selected

Hi all — I got 1080p60 H.264 with zero dropped frames on an RK3229 box, mainline kernel 6.18, open drivers only (no BSP 4.4, no MPP blobs).

I'm the one who wrote the "720p on mainline" guide, and I was wrong: that ceiling was a measurement artifact, not hardware. fakesink forces a copy out of the VPU's non-cache-coherent memory, which costs ~90% of throughput on a Cortex-A7 — measured without it, the decoder sustains 231 fps at 1080p. The real cap was double vsync (kmssink waits, then the atomic driver waits again), fixed with skip-vsync=true qos=false.

Full write-up, pipelines and a working player + screen-mirroring setup:
https://github.com/Reinoldo-Ozy/rk322x-mediaplayer
Credit where due: @jock's v4l2request ffmpeg repo is what proved the decoder was never the bottleneck, and his note about Rockchip decoders having their own MMUs corrected a wrong CMA hypothesis of mine. Details in the README.

Hi, my name is Kaiq, and i have a mxq with (i think) rk3228a emmc chip.

My box is modified a while ago with Armbian.

I believe it's outdated, since I haven't even plugged it in for a few months.
image.png.b6757b9d0a5b59639b8e25ce1508c57a.png

 

I have some software installed that I simply don't use anymore, and I don't even know how to uninstall it. Some don't work; I tried logging into Cockpit using my SSH credentials and got an internal error.

image.png.e60dcfb9635de2fd34cd346c3c202919.png

 

I want to "format" the system—maybe install the latest version. But I can't physically enter mask mode on the board; I ended up damaging the shorting contact used to enter it.

The goal is to install a system I created to run locally, but the focus is on getting the box running perfectly.

  • Author
39 minutes ago, Kaique Giuvelini said:

I want to "format" the system—maybe install the latest version. But I can't physically enter mask mode on the board; I ended up damaging the shorting contact used to enter it.

Three options:

  • multitool
  • boot armbian from sdcard and erase eMMC (or reinstall) from there
  • keep "reset" button pressed (5 seconds will suffice) while turning on the board: armbian u-boot will immediately trigger maskrom mode

 

Hi everyone, i just found out about all of this yesterday and been trying since, mine is an nand version 8gb of ram, the problem im having is in finding the legacy archive i tried with the newest kernel and with de 5.2 but couldnt get it to work, i wasnt able to find the legacy anywhere, the error im getting is the uuid missing, if anyone could help me find it or figure out any other way of getting it to work i would appriciate it

  • Author
12 hours ago, conta secundaria said:

Hi everyone, i just found out about all of this yesterday and been trying since, mine is an nand version 8gb of ram, the problem im having is in finding the legacy archive i tried with the newest kernel and with de 5.2 but couldnt get it to work, i wasnt able to find the legacy anywhere, the error im getting is the uuid missing, if anyone could help me find it or figure out any other way of getting it to work i would appriciate it

Legacy is deprecated and long time discontinued. You'd better use mainline kernel with sdcard and forget the nand flash chip.

Hello, I need help installing Armbian on an MX9 5G TV box.

The box is based on an RK3228A SoC and uses NAND storage. It does not have an SD card slot.

This is what I did:

I first tried to boot the Multitool from a USB flash drive, but it did not work. The box always booted into the Android recovery screen.

I then read that, for boards without an SD card slot and with NAND storage, I should use rkdeveloptool together with u-boot-main.img.xz.

I connected the TV box to my PC using a USB-A-to-USB-A cable through the OTG port while holding the reset button.

The device appeared as 2207:320b, so I connected it to WSL using usbipd-win.

I decompressed u-boot-main.img.xz and flashed it with:

bash

sudo rkdeveloptool wl 0x4000 u-boot-main.img

The command completed successfully and showed:

text

Write LBA from file (100%)

I then wrote the Multitool image to a USB flash drive using Rufus/Win32 Disk Imager. I also tried placing the Armbian  image in the images folder.

However, after flashing u-boot-main.img, the TV box no longer outputs any video. The TV reports no HDMI signal, and the screen remains completely black. The red and blue LEDs remain on.

WhatsApp Image 2026-08-31 at 20.45.47.jpeg

WhatsApp Image 2026-08-31 at 20.45.46.jpeg

  • Author

@Mitti Why do you say the board has no sdcard slot when the sdcard slot is just there?

 

BTW, you have few options, but I suggest you not to use the NAND for the system at all. You can clean it completely, then the system will boot from sdcard, or you can use multitool to install the Jump step to boot from sdcard and USB stick.

@jock The SD card slot is physically broken and does not work.
My problem is that the Multitool will not boot. I’m not sure why, but the box either boots into Android Recovery or starts Android normally.

Hi everyone, I need help recovering my MXQ Android TV box which is currently stuck in Maskrom mode. 

Here are my board specifications:
- Board Model: R29-6G-LP3-V2.3 (HXW20092601-2-B)
- SoC: Rockchip RK3228A / RK3229
- Storage: Foresee NCEPN35X-3G3X eMMC
- Power IC: S9012P

The device goes straight into Maskrom mode and won't boot normally. Can someone guide me on how to flash the correct stock firmware or recover this board? Thanks!

 

I made a backup from multi tool, but i cant boot multitool its just no display

 

Its working fine when i install armbian couple reboot still works fine then i install pihole for armbian then when i restart suddenly goes into that state.

 

I don't know where to short it 

IMG_20260919_091538.jpg

IMG_20260919_083829.jpg

Screenshot_2026-09-19-11-57-00-339_com.github.android-edit.jpg

Screenshot_2026-09-19-11-57-23-445_com.github.android-edit.jpgimage.thumb.png.23defd36d59eeadc8d5131ba71c51073.png4e759556-dd44-4f2a-b9fe-f10d9c5233ce.thumb.png.e4465b16433fa2cb4b69d820d5d30c67.png
do you have a dump of your tv box? im having problem with my box.. it boots direct to maskmode..
multi tool wont show
tried flashing directly to SDCard armbian and liberec
still no display..

it works fine for a few hours then when i restart the armbian it wont display anymore. and when i plug the box to pc it directs to maskrom mode even i did not short it.. 

image.png.2035e137d9787a3fe3b16b2d49edae3f.png

this is the backup i made using multitools before it brick.... is there any way to restore it using pc?
since i cannot boot multi tool using SD card

Edited by camsay
Added info and photos, i dont know where to short

Hello everyone. This is my first post here, so forgive me if I missed a step or didnt comply with etiquette.

A friend gave me a MXQ PRO TV-box that he was going to throw away, as the android install was corrupted so it wouldnt boot anymore. Naturally, I have decided to install Linux on it and turn it into a tiny low power server. It is a MX4N-V03 board, based on the RK3229 chip with 1GB of RAM and the SSV6051 wifi chip. But, I got unlucky and got one of the troublesome NAND versions.


WhatsAppImage2026-09-29at5_37_30PM.thumb.jpeg.7385e3a20aaedd467df9dc955d10886d.jpeg

3e798776-c8c4-4f15-8c30-47536520ece8.thumb.jpeg.555feff07921d89c83e0540f68fe240c.jpeg

 

Now, while I have been able to run the latest version of armbian from a USB stick thanks to the NAND jump start, with working wifi and all, I have had no luck getting the legacy kernel version to boot from NAND when flashing it using multitool's step NAND tool. I have tried the following versions of armbian that use the legacy 4.4 kernel:

  • 21.02.1
  • 21.05.1
  • 22.02.0

And I even tried flashing the following loaders (using Linux Upgrade Tool):

  • rk322x_loader_v1.10.256_2t.bin

  • rk322x_loader_v1.10.256_300_no2t.bin

  • rk322x_loader_v1.10.256_no2t.bin

  • rk322x_loader_v1.10.256.bin

  • RK322XMiniLoaderAll_V2.47_spectek_en_ddr2_rd_odt_171127.bin

  • RK322XMiniLoaderAll_V2.51_spectek_en_ddr2_rd_odt_180703.bin

  • RK3229MiniLoaderAll_V2.54.bin

All to no avail. As a sanity check, I flashed the original Android image using Linux Upgrade Tool, which booted and worked flawlessly from the NAND. So I know that the hardware should not be the problem here. Is there anything else I can try? Or is my box just cursed?

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.