Jump to content

CSC Armbian for RK322x TV box boards


Recommended Posts

On 11/19/2023 at 8:47 AM, NiTr0 said:

I've placed compiled u-boot-rk322x-with-spl.bin at 0x8000 in image and image boots OK

Hi @NiTr0, it seems you were able to successfully boot Armbian on a Hongtop H20 tvbox.
I'm trying to the same with Librelec, but I have similar issues as you had (boot stops after loading trustos).
Can you please summarize briefly me what have you done to solve the issue?


Thanks a lot.

Link to comment
Share on other sites

Good evening, I have an H20 box. I've broken it several times and recovered it. I have the backup made with multitool. I can start multitool and, for example, libreelec from SD. but I noticed that when creating the card with whatever the Armbian image is, it never starts and only creates a partition, unlike multitool and libreelec. that I'm doing wrong. Below are photos of the box

Link to comment
Share on other sites

Good evening, I want to thank you for your help, I finally managed to boot and I already have the box with klipper and mainsail. After dual booting the computer to be able to have Ubuntu. I was able to use rkdeveloptool to completely erase the TVbox's flash and now it starts from SD.


Overlays=led-conf7 only Change led. I make more tests

Edited by Carlos Ervedoso
Link to comment
Share on other sites

22 minutes ago, Carlos Ervedoso said:

yes the hdmi works

Hi @Carlos Ervedoso, so you are running Armbian on H20 tv box? Can you please summarize me what kernel version are you using, and what option you selected when you compiled the image? 

@jock; unfortunately adding overlays=led-conf7 in /boot/armbianEnv.txt didn't help in my case. I have to do more tests.


Thanks a lot.


Link to comment
Share on other sites

Bom dia, não compilei, apenas usei uma versão pronta. o segredo era apagar todo o emmc . Não mostrará nada no HDMI. Eu dimensiono tudo com massa. mas deve estar conectado à internet via cabo. depois de iniciar e usar rk322x-config para alterar as configurações.
Escolhi rk3228a, ram ddr3 e ledconf 7. depois disso acende a luz azul e já tenho hdmi

a imagem que usei foi esta: Armbian_23.11.1_Rk322x-box_bookworm_current_6.1.63_minimal.img

mas inicialize com qualquer imagem


Captura de tela 2023-12-12 113153.png

Captura de tela 2023-12-12 113041.png

Edited by Carlos Ervedoso
Link to comment
Share on other sites

I realized that it's been a few days, anyway, by burning the image using rkdeveloptool after erasing emmc, I successfully booted with Ubuntu using kernel 6.1.

I set it up using SSH with everything at default and led-conf7, rebooted and had success with HDMI and ETH.




The CPU only exceeded 60ºC during the update, but that was because it was without the case.


Edit1: After a complete system update, I ran rk322x-config again and the HDMI and LED stopped working, but that was ok, I decided to use it as a local server and for that I only need the SSH and ETH connection, WIFI would be interesting but it's not a necessity.

I am sending you the dmesg, fdisk and journalctl attachment for the board initialization after all this.

So I used .dtbo to get led-conf7 working again, but I didn't get to test HDMI.

Detail, when the HDMI worked I tried to install LXDE to test the power of the box, it crashed in the middle of the installation and I had to reinstall the entire system, as it was corrupted.


Edit2: With the case installed, the card got very hot, so I installed 2 coolers to cool the card, one sending air to the CPU and the other to remove air from inside the case (but I intend to remove the second one). After that, the card doesn't even exceed 50ºC during the benchmark.




The objective is to use its useful life to test some applications. I'll wait for system updates to test the HDMI and WIFI again, but like I said it's not really necessary

dmesg_k405.txt fdisk_k405.txt journalctl_k405.txt

Link to comment
Share on other sites

18 hours ago, k405 said:

After a complete system update, I ran rk322x-config again and the HDMI and LED stopped working, but that was ok,

Perhaps you did not select led-conf7 again? rk322x-config is supposed to be run once when system is freshly installed and then it should not be anymore necessary.

Link to comment
Share on other sites

Thank you @Carlos Ervedoso, it works.

My fault I didn't  follow with trust @jock's detailed installation manual.

When I tried for the first time armbian and librelec images on h20 box, none of them was booting. Only the multitool worked. But after resetting the eMMC, even the multitool was no longer booting.
The Armbian image still seemed not to boot (due to the absence of LEDs and HDMI of the default dtb; at that time I had not yet connections to the serial interface) so I (erroneously) deduced that for the h20 box the eMMC reset was a wrong step to take. My fault.

Now it works fine: thanks again for your great job and for sharing it.

Link to comment
Share on other sites

Também inicialmente não segui bem o manual, depois instalei o Ubuntu em dualboot com Windows e consegui apagar o flash com sucesso. Aí conectei o TVbox a cabo no modem e consegui acessar o TVbox usando o PuTTY. Configurei o ledconf7 e agora tenho led e hdmi. Eu poderia inicializar com multitool e libreelec, mas com Armbian não consegui até apagar completamente o flash. Agora gostaria de conseguir fazer o wifi interno funcionar, mas não consigo identificar o chip



Edited by Carlos Ervedoso
Link to comment
Share on other sites



My box needs a power cycle if I do sudo reboot and the wifi driver doesn't load so I tried to download its DTS to find the right overlay and rk322x-config correct choices but I'm a bit lost reading it, can someone point me to the right direction?


The file is at this link 05_dtbdump_rockchip,rk3229.dts and the backup image file is at tvbox-backup.gz

I don't know if it is the correct (or easier) procedure but here is how I get the DTS



$ pip install extract-dtb
$ gunzip tvbox-backup.gz
$ extract-dtb -n tvbox-backup
Found 10 appended dtbs
$ extract-dtb tvbox-backup -o /tmp/dtb
Dumped 00_kernel, start=0 end=8571676
Dumped 01_dtbdump_`7@-.dtb, start=8571676 end=9620252
Dumped 02_dtbdump_`7@-.dtb, start=9620252 end=10668828
Dumped 03_dtbdump_`7@-.dtb, start=10668828 end=11717404
Dumped 04_dtbdump_`7@-.dtb, start=11717404 end=26215936
Dumped 05_dtbdump_rockchip,rk3229.dtb, start=26215936 end=41945364
Dumped 06_dtbdump_d0
                    _.dtb, start=41945364 end=41950656
Dumped 07_dtbdump__8@-.dtb, start=41950656 end=41955800
Dumped 08_dtbdump_@__!!.dtb, start=41955800 end=41957638
Dumped 09_dtbdump_AT.\.dtb, start=41957638 end=1000067848
Dumped 10_dtbdump.dtb
$ sudo apt-get install device-tree-compiler
$ dtc -I dtb -O dts -o 05_dtbdump_rockchip,rk3229.dts /tmp/dtb/05_dtbdump_rockchip,rk3229.dtb



My box pictures and info are at

Any help or pointers will be greatelly appreciated, thanks!


from Brazil

Edited by BLFC
Link to comment
Share on other sites

Hi everyone,


I'm quite new to both these rockchip devices as well as armbian (at least from a developer's perspective),

but have quite some experience with OpenWrt (adding BSP for several wireless routers e.g. ath79, ramips-mt7621), so am familiar with device tree files and the low level hardware stuff.


For some fun over the holidays, I grabbed a few cheap rockchip boxes from AliExpress - starting with the rk322x ones here.
Sorry I didn't read through the full 79 pages of this thread yet, so not sure about how much of this is still relevant, and what is in mainline armbian already.


Box #1: "MX Q Pro 4K", eMMC + separate RAM chips. L-shaped PCB "MXQ-18DP58_01" with SD card on the thinner side

Could not manage to get it to boot multitool or armbian from SD card, the box would halt with a dim blue LED.
Looking at the serial console (booting OEM Android), the TX pin seems to be shared with the external SD card, so there is some garbage visible after "FwPartOffset", when it probes for SD card, but none is inserted:




DDR Version 2.06 20170316
1A1A1C1C   3
282C1C1C   3
35351C1C   3
Bus Width=16 Col=11 Bank=8 Row=15 CS=1 Die Bus-Width=16 Size=1024MB
Boot1 Release Time: 2017-06-12, version: 2.40
ChipType = 0xa, 1385
SdmmcInit=2 0
FwPartOffset▒*V▒k%▒▒▒▒0 20
StorageInit ok = 137635
Code check OK! theLoader 0x60000000, 178658
hdr 0x0:0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

hdr 0x0:0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

hdr 0x0:0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

hdr 0x0:0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

U-Boot 2014.10-RK3128-06-g829baaa (Dec 03 2022 - 17:44:35)

CPU: rk3128
cpu version = 0
CPU's clock information:
    arm pll = 600000000HZ
    periph pll = 594000000HZ
    ddr pll = 600000000HZ
    codec pll = 400000000HZ
Board:  Rockchip platform Board
Uboot as second level loader
DRAM:  Found dram banks: 1
Adding bank:0000000060000000(0000000040000000)
128 MiB
GIC CPU mask = 0x00000001
rk dma pl330 version: 1.4
remotectl v0.1
pwm freq=0xb▒*V▒k%▒▒с= 0 20
SdmmcInit = 2 0
storage init OK!
Using default environment

Load FDT from resource image.
power key: bank-0 pin-5
can't find dts node for fixed
No pmic detect.
power hold: bank-16777215 pin-255, active level-0
SecureBootEn = 0, SecureBootLock = 0

#Boot ver: 2022-12-03#2.40
empty serial no.
normal boot.
vbus = 1
board_fbt_key_pressed: ir_keycode = 0x0, frt = 0
no fuel gauge found
no fuel gauge found
can't find power_ctr node for lcdc0
can't find dts node for deviceinfo
rk_hdmi_register:fail to read deviceinfo
[EDID-EXTEND] It is a  CEA 861 Series Extension.
no baseparametr,find best edid mode,vic=16
hdmi_dev->video.vic is 16
sucess output HDMI.
read logo on state from dts [1]
no fuel gauge found
vbus = 1
board_fbt_key_pressed: ir_keycode = 0x0, frt = 0
Hit any key to stop autoboot:  0
load fdt from resouce.
Secure Boot state: 0
kernel   @ 0x62000000 (0x0068db18)
ramdisk  @ 0x65bf0000 (0x00167f08)
bootrk: do_bootm_linux...
   Loading Device Tree to 65600000, end 65617394 ... OK
Add bank:0000000060000000, 0000000040000000

Starting kernel ...

<hit enter to activate fiq debugger>
[    0.000000] Booting Linux on physical CPU 0xf00
[    0.000000] Initializing cgroup subsys cpuset
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Initializing cgroup subsys cpuacct
[    0.000000] Linux version 3.10.104 (txcz@txcz-host2) (gcc version 4.6.x-google 20120106 (prerelease) (GCC) ) #1 SMP PREEMPT Sat Dec 3 17:45:41 CST 2022
[    0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c5387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] Machine: Rockchip RK3128, model: rockchip,rk3128
[    0.000000] rockchip_uboot_logo_setup: mem: 0x02000000@0x9dc00000, offset:0x01000000
[    0.000000] hdmi init vic is 16
[    0.000000] cvbs init tve.format is -1
[    0.000000] cvbs init tve.format is -1
[    0.000000] cvbs init tve.format is -1
[    0.000000] rockchip_uboot_mem_reserve: reserve 0x02000000@0x9dc00000 for uboot logo
[    0.000000] rockchip_ion_reserve
[    0.000000] ion heap(cma): base(0) size(800000) align(0)
[    0.000000] ion heap(vmalloc): base(0) size(0) align(0)
[    0.000000] cma: CMA: reserved 8 MiB at 9d400000
[    0.000000] ion_reserve: cma reserved base 9d400000 size 8388608
[    0.000000] cma: CMA: reserved 16 MiB at 7f000000
[    0.000000] Memory policy: ECC disabled, Data cache writealloc
[    0.000000] PERCPU: Embedded 9 pages/cpu @c1672000 s13440 r8192 d15232 u36864
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 261120
[    0.000000] Kernel command line: vmalloc=496M rockchip_jtag console=ttyFIQ0 androidboot.baseband=N/A androidboot.selinux=disabled androidboot.hardware=rk30board androidboot.console=ttyFIQ0 init=/init  mtdparts=rk29xxnand:0x00002000@0x00002000(uboot),0x00002000@0x00004000(trust),0x00002000@0x00006000(misc),0x00008000@0x00008000(resource),0x00006000@0x00010000(kernel),0x00006000@0x00016000(boot),0x00010000@0x0001C000(recovery),0x00020000@0x0002C000(backup),0x00040000@0x0004C000(cache),0x00008000@0x0008C000(metadata),0x00002000@0x00094000(kpanic),0x00200000@0x00096000(system),0x00020000@0x00296000(radical_update),-@0x002B6000(userdata) storagemedia=emmc uboot_logo=0x02000000@0x9dc00000:0x01000000 loader.timestamp=2022-12-03_17:44:35 hdmi.vic=16 tve.format=-1 SecureBootCheckOk=0
[    0.000000] rockchip jtag enabled
[    0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
[    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
[    0.000000] allocated 2097152 bytes of page_cgroup
[    0.000000] please try 'cgroup_disable=memory' option if you don't want memory cgroups
[    0.000000] Memory: 1024MB = 1024MB total
[    0.000000] Memory: 964088k/964088k available, 84488k reserved, 483328K highmem
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
[    0.000000]     vmalloc : 0xe0800000 - 0xff000000   ( 488 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xe0000000   ( 512 MB)
[    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
[    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
[    0.000000]       .text : 0xc0008000 - 0xc0bc6f5c   (12028 kB)
[    0.000000]       .init : 0xc0bc7000 - 0xc0c26480   ( 382 kB)
[    0.000000]       .data : 0xc0c28000 - 0xc0d0c3a0   ( 913 kB)
[    0.000000]        .bss : 0xc0d0c3a0 - 0xc0e2c95c   (1154 kB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000]  RCU dyntick-idle grace-period acceleration is enabled.
[    0.000000] NR_IRQS:16 nr_irqs:16 16
[    0.000000] rk_clk_tree_init start!
[    0.000000] rk_get_uboot_display_flag: uboot_logo_on = 1
[    0.000000] rkclk_init_clks: cnt_parent = 25
[    0.000000] rkclk_init_clks: cnt_rate = 17
[    0.000000] Architected cp15 timer(s) running at 24.00MHz (phys).
[    0.000000] Switching to timer-based delay loop
[    0.000000] sched_clock: ARM arch timer >56 bits at 24000kHz, resolution 41ns
[    0.000000] process version: 0
[    0.000000] channel:0, lkg:15
[    0.000000] target-temp:85
[    0.000000] channel:0, lkg:15
[    0.000000] channel:0, lkg:15
[    0.000000] sched_clock: 32 bits at 100 Hz, resolution 10000000ns, wraps every 4294967286ms
[    0.306612] Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=240000)
[    0.306640] pid_max: default: 32768 minimum: 301
[    0.306857] Security Framework initialized
[    0.306887] SELinux:  Initializing.
[    0.307041] Mount-cache hash table entries: 512
[    0.308270] Initializing cgroup subsys debug
[    0.308300] Initializing cgroup subsys memory
[    0.308354] Initializing cgroup subsys freezer
[    0.308424] CPU: Testing write buffer coherency: ok
[    0.309021] /cpus/cpu@0 missing clock-frequency property
[    0.309050] /cpus/cpu@1 missing clock-frequency property
[    0.309072] /cpus/cpu@2 missing clock-frequency property
[    0.309091] /cpus/cpu@3 missing clock-frequency property
[    0.309182] CPU0: thread -1, cpu 0, socket 15, mpidr 80000f00
[    0.309265] Setting up static identity map for 0xc0861710 - 0xc0861768
[    0.312817] last_log: 0x7e900000 map to 0xe0804000 and copy to 0xe0886000, size 0x80000 early 0x17e7 (version 3.1)
[    0.384417] CPU1: Booted secondary processor
[    0.384481] CPU1: thread -1, cpu 1, socket 15, mpidr 80000f01
[    0.404103] CPU2: Booted secondary processor
[    0.404151] CPU2: thread -1, cpu 2, socket 15, mpidr 80000f02
[    0.423872] CPU3: Booted secondary processor
[    0.423917] CPU3: thread -1, cpu 3, socket 15, mpidr 80000f03
[    0.424109] Brought up 4 CPUs
[    0.424163] SMP: Total of 4 processors activated (192.00 BogoMIPS).
[    0.424179] CPU: All CPU(s) started in SVC mode.
[    0.425710] devtmpfs: initialized
[    0.434718] VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5
[    0.436568] pinctrl core: initialized pinctrl subsystem
[    0.437111] regulator-dummy: no parameters
[    0.463872] NET: Registered protocol family 16
[    0.467742] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.468507] ion_snapshot: 0x7ea78000 map to 0xe0907000 and copy to 0xc0e01fb4 (version 0.1)
[    0.468782] Registered FIQ tty driver
[    0.471229] console [ttyFIQ0] enabled
[    0.471721] Registered fiq debugger ttyFIQ0
[    0.473796] rockchip_get_bank_data:name=/pinctrl@20008000/gpio0@2007c000 start=0x2007c000,end=0x2007c0ff
[    0.473967] rockchip_get_bank_data:name=/pinctrl@20008000/gpio1@20080000 start=0x20080000,end=0x200800ff
[    0.474055] rockchip_get_bank_data:name=/pinctrl@20008000/gpio2@20084000 start=0x20084000,end=0x200840ff
[    0.474135] rockchip_get_bank_data:name=/pinctrl@20008000/gpio3@20088000 start=0x20088000,end=0x200880ff
[    0.474225] rockchip_get_bank_data:name=/pinctrl@20008000/gpio15@2008A000 start=0x20086000,end=0x200860ff
[    0.474300] rockchip_pinctrl_probe:name=rk312x-GPIO,type=5
[    0.474331] rockchip_pinctrl_probe:name=base start=0x20008000,end=0x200080a7
[    0.474358] rockchip_pinctrl_probe:name=mux start=0x200080a8,end=0x200080f3
[    0.474385] rockchip_pinctrl_probe:name=pull start=0x20008118,end=0x20008137
[    0.474411] rockchip_pinctrl_probe:name=drv start=0x20008100,end=0x20008103
[    0.477410] rockchip_pinctrl_probe:init ok
[    0.480951] syscon 20008000.syscon: regmap [mem 0x20008000-0x200083ff] registered
[    0.487931] rk_iommu 1010e300.vop_mmu: (vop) Enter
[    0.487987] rk_iommu 1010e300.vop_mmu: skip request vop mmu irq
[    0.488096] rk_iommu 1010e300.vop_mmu: IOVMM: Created 0x3ffff000 B IOVMM from 0x10000000.
[    0.488123] rk_iommu 1010e300.vop_mmu: (vop) Initialized
[    0.488435] rk_iommu 10104440.hevc_mmu: (hevc) Enter
[    0.488615] rk_iommu 10104440.hevc_mmu: IOVMM: Created 0x3ffff000 B IOVMM from 0x10000000.
[    0.488642] rk_iommu 10104440.hevc_mmu: (hevc) Initialized
[    0.488966] rk_iommu 10106800.vpu_mmu: (vpu) Enter
[    0.489134] rk_iommu 10106800.vpu_mmu: IOVMM: Created 0x3ffff000 B IOVMM from 0x10000000.
[    0.489161] rk_iommu 10106800.vpu_mmu: (vpu) Initialized
[    0.489465] rk_iommu 10108800.iep_mmu: (iep) Enter
[    0.489629] rk_iommu 10108800.iep_mmu: IOVMM: Created 0x3ffff000 B IOVMM from 0x10000000.
[    0.489657] rk_iommu 10108800.iep_mmu: (iep) Initialized
[    0.491752] hw-breakpoint: found 5 (+1▒

When the SD card is inserted, it boots until "FwPartOffset" with lots of garbage following, i.e. it is apparently reading lots of stuff from the SD card.

Couldn't get much further with this for now, so proceeded to


Box #2: "H20 4K Ultra HD", green board with eMCP, board label "H20-221-V1.71-2-B HXW23071201 20230714".
This one perfectly booted multitool from microSD, made a full backup, downloaded `Armbian_23.8.1_Rk322x-box_bookworm_current_6.1.50.img.xz`, thinking "what could probably go wrong", dared to write this image to flash.

Trying to restore the backup, but now it's not even booting to multitool from microSD anymore (This box is probably a new version of H20, as also mentioned in this thread https://forum.armbian.com/topic/29644-h20-box-with-rk3228a-bricked/).

Backup: https://mega.nz/file/SZ433bJA#RQZTSJrsjyJWOXlFWV6TLaqxMB0-C4JtExWyQbAyqp8


Tried to enter maskrom to re-flash the backup with rkdeveloptool, shorting resistors to GND as seen in some post here..., but no success yet.

Can't see anything enumerating on USB. Is the cable quality relevant here? I built a ~10cm USB A<->A cable based on flat cable, with only GND, D- and D+ connected (the 5V from the H20 power plug go directly to the VBUS pins of the pins, don't want to feed this back to my host coputer). So there is probably no VBUS detection required for enumerating the USB, since it is forced to 5V all the time anyways?


Is there any special output to be expected on the serial console to verify maskrom was entered? I only see


DDR Version V1.10 20190926
Bus Width=32 Col=10 Bank=8 Row=15 CS=2 Die Bus-Width=32 Size=2048MB
rd addr 0xC0000000 = 0xFFFF


What is located at 0xC000000? The output is the same no matter if an sd card is inserted or not.

My understanding is, mask ROM mode will be entered when no other bootable source was detected, that's why we short the eMMC clock line to GND? (i.e. also microSD needs to be removed then)


So, how do I know I'm in maskrom mode, can someone show a serial log? Maybe I just need to try different pins, or something was damaged while soldering a push-button to the CLK line (are those tiny capacitors really needed? 😇 )

Link to comment
Share on other sites


hello welcome on this thread, and unfornutately  is a huge one with sone really interesting pages and some other less.
but go staight  to answers

The first one isn' t a rk322x but a "CPU: rk3128" and thus you'll not find anything interesting on this thread , go search for 3128 (if any)

The second is splitting out errors due to incorrect ddrbin ( let' s call it bios...) and you must go in maskrom to correct the problem by shorting pins on the board ( i haven't one so ignore which ones)

Surely @jock will share this answer

Link to comment
Share on other sites

vor 2 Stunden schrieb fabiobassa:

The first one isn' t a rk322x but a "CPU: rk3128"

Oh wow, that seemed almost too obivous, so these are indeed a completely different family of devices... sorry for the noise.


vor 2 Stunden schrieb fabiobassa:

and you must go in maskrom to correct the problem by shorting pins on the board

Okay thanks, I will just try more pins then, maybe also CLK line from external microSD slot etc. 🙂

Link to comment
Share on other sites

4 hours ago, s-2 said:

Is there any special output to be expected on the serial console to verify maskrom was entered? I only see

Because your board wants ddrbin v1.11 and not v1.10; just use a new multitool and, perhaps, a fresh armbian image from official repositories and not taken here or there on the forums

Link to comment
Share on other sites

Okay, finally managed to get this thing into mask ROM mode 🙂

Shorting the resistor arrays on the top PCB layer near the eMCP helped (the visible difference is, there is just no UART output in maskrom).


The device is listed, but can not display info about flash (not sure if that's to be expected), will look further into which loader to use from here on etc.

$ rkdeveloptool ld
DevNo=1    Vid=0x2207,Pid=0x320b,LocationID=101    Maskrom
$ rkdeveloptool rid
Reading flash ID failed!
$ rkdeveloptool rfi
Read Flash Info failed!

// edit: okay, booting multitool rom microSD works just the same way as entering maskrom, by shorting the eMCp pins, simple as that. trying to restore backup for a start,

vor 55 Minuten schrieb jock:

and, perhaps, a fresh armbian image from official repositories

I had used 6.1.50 from https://imola.armbian.com/dl/rk322x-box/archive/ (downloaded ~3 weeks ago, but can try 6.1.63 as well).

When using the "Enhanced By Google" search on the official armbian website, it would always lead me back to this thread.

Are there any other official download sources for the latest (official) images?


Indeed the size of multitool.img.gz linked in the first post also changed since then, using the latest version now. // edit: they're identical, size difference was only reported during download

Edited by s-2
Link to comment
Share on other sites

I had heard that you can install LINUX on a TV BOX, so I got an X96 which has the RK322X CHIPSET.
Since I am a Hamradio and I did some tinkering I told myself that I would create an interconnected repeater with the X96 as a server.
After installation and configuration I was able to create my repeater which worked very well for more than three months.
Here is the photo of the interconnected repeater in working order:




I made a tutorial on my site where I described my configuration and installation of the system: https://www.dmr-maroc.com/Repeteur_sans_Raspberry.php

Link to comment
Share on other sites

Thanks for your work. I have been able to give my old android box an actual use, but I am facing some issues.


The LEDs on the box don't work as expected. I've tried them all, but none of them have the correct pinout. I have attached the decompiled device tree from it's stock android ROM. I cannot upload the compiled file. The board is labeled MXQ-4K-3229X3D-20170928-V1.8. devicetree.dts


I am also having issues with it's wifi chip. I don't know if this is a known issue, but the sv6051p chip it has disables itself after a reboot. It only re-appears after a power cycle. This isn't as much of a deal breaker as I could use Ethernet, but I'd still like the option to use WiFi. It might be related to user BLFC's isuess.


I'm hoping there's a resolution for these problems. It would really improve the functionality of the android box.

Link to comment
Share on other sites

I'm currently running home assistant on my tvbox rk322x with USB boot and for wifi I'm using a usb adapter. for me it works with ledconf7 the light stays solid blue while it is booting and then it always blinks after being in the system. I couldn't get the internal WiFi to work and I'm not going to waste much time on it either. For my application this is fine. I want this just as home assistant learning

Link to comment
Share on other sites

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.

Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines