Jump to content

CSC Armbian for RK322x TV box boards


jock

Recommended Posts

On 7/15/2023 at 1:01 AM, ojogoperdi said:

The Brazilian government confiscated (big) irregular shipments of TV boxes. They plan on repurposing some of them (the ones that are actually usable) as mini PCs for schools and other social causes. So our university got a portion of TX9-brand boxes to explore the feasibility of using these devices as PCs. They are very sluggish, and I don't expect them to be usable for this purpose.

 

Wow ! Can I have one ? ?

 

here I tested a sdcard image on my parents mxq pro box, and for basic tasks it's fine.

Chromium basic browsing

libreoffice

etc!

And of course all the command-line programs and servers will work fine too.

From what I read tx9 should have an amlogic cpu, so no wonder why some of them aren't booting ?

 

Link to comment
Share on other sites

@fabiobassa I agree.

 

I think back some decade ago, when the tv boxes have appeared,

then you could buy some box that actually matched the description. they often also had that cool usb drive appearance.

But then now they are really popular, especially some models. here I think the

most famous is that mxq pro box. So now when you buy it it's a real lottery, 

it can be anything. especially because now the sellers want to advertise a 64 bit cpu and sell something worse.

I was trying to boot linux for rk33xx and failing, only understood what was going on when I installed a terminal emulator

and then saw user rk322x.

 

Link to comment
Share on other sites

10 hours ago, fangis said:

But then now they are really popular, especially some models. here I think the

most famous is that mxq pro box. So now when you buy it it's a real lottery, 

it can be anything. especially because now the sellers want to advertise a 64 bit cpu and sell something worse.

I was trying to boot linux for rk33xx and failing, only understood what was going on when I installed a terminal emulator

and then saw user rk322x.

That's mostly because the cheapest models are usually chinese crap where costs are cut as much as possible, and you get no warranty of any kind.

These are toys that at most cost 3$ of materials to manufacturers and they sell them at 25$ and, for 90% of people, they are cheap trash that sometimes work, sometimes don't.

 

Link to comment
Share on other sites

On 7/15/2023 at 6:01 AM, ojogoperdi said:

I meant it in a more of a "create custom images for our client" kind of way. (more on the client at the end)

It's not in the scope of this thread, so don't worry about it!

Armbian already offers ways to customize the final image, it is used by SBC manufacturers to build their own images, for examples.

Don't understand why you should want to customize the boot process though, which is quite delicate thing.

 

On 7/15/2023 at 6:01 AM, ojogoperdi said:

As for why I'm sure they are all rk322x (at least the vast majority): this week we flashed some hundreds of the same model of device, and about 12 didn't boot completely, for reasons we have yet to investigate, and maybe 2 of those gave no video signal again. All other devices reached a desktop session.

If would be nice, since you got so many of them, if you open the box and make detailed photos of the boards.

And it would be even nicer to have samples of those boards that "don't boot" and those which give no video signal in my lab, since those issues are very niche cases and incredibly difficult to debug without the hardware.

 

There are a plethora of reasons they could not boot, there are at least 4 different pieces of software chained one after another during the boot, not just the kernel.

 

On 7/15/2023 at 6:01 AM, ojogoperdi said:

I don't yet have access to a serial adapter, but I'll report if I have any output when I try.

 

However, the mysterious part is that armbian images (with any kernel version) boot! (if installed into the eMMC)

 

For some reason, booting from the SD card with a kernel version other than 4.4 doesn't work, but from armbian installed on the eMMC works.

The serial adapter is essential to debug.

About the missing boot, as said, it is a very delicate thing and requires good knowledge about each piece in the equation (ddrbin, trust os, miniloader/uboot SPL, uboot, the device trees, the kernel drivers, ...).

You can't just swap the kernel and expect it magically works; and that's one of the reasons armbian exists: to ease the pain to boot SBCs and - as side effect - tv boxes.

 

On 7/15/2023 at 6:01 AM, ojogoperdi said:

Is armbian supposed to boot from the SD card? That never worked here.

And I assumed it wouldn't because it doesn't contain the special images at the special offsets described here https://opensource.rock-chips.com/wiki_Boot_option

But I read the first post again and you said it's supposed to work. Now I'm kind of confused as to why it doesn't work here.

Sorry to stress this thing, but never worked there because you did not read carefully the first post. There's a paragraph on booting from sdcard. And did you note you could also boot from USB stick/HDD ?

What are you confused about? Which pass of the step-by-step guide is not clear?

 

On 7/15/2023 at 6:01 AM, ojogoperdi said:

The Brazilian government confiscated (big) irregular shipments of TV boxes. They plan on repurposing some of them (the ones that are actually usable) as mini PCs for schools and other social causes. So our university got a portion of TX9-brand boxes to explore the feasibility of using these devices as PCs. They are very sluggish, and I don't expect them to be usable for this purpose.

They are the lowest end product available on the market, yet TX9 means nothing. Chinese manufactures give them fantasy names no matter what's inside the box, that's the reason we always talk about the boards, trying to identify them by looking at the signature and markings on the PCB.

 

Link to comment
Share on other sites

20 hours ago, jock said:

Don't understand why you should want to customize the boot process though, which is quite delicate thing.

I was curious if it was possible to boot from a file of the armbian image in the SD card (not flashed there, but as a normal file in a normal filesystem).

That is not a very simple task. I know I would have to mount the file, chroot to the system, exec init.

 

In the best scenario, I would have kexec'd the kernel inside the armbian image before exec'ing init.

But kexec'ing (or booting) newer kernels doesn't work here if I booted from the SD card, from a modified multitool image.

 

20 hours ago, jock said:

If would be nice, since you got so many of them, if you open the box and make detailed photos of the boards.

I'll provide some when I get a chance this week.

 

20 hours ago, jock said:

And it would be even nicer to have samples of those boards that "don't boot" and those which give no video signal in my lab, since those issues are very niche cases and incredibly difficult to debug without the hardware.

Sadly, I cannot do that. They are government property.
I'll still try to provide pictures of the internals of the devices.

 

20 hours ago, jock said:

Sorry to stress this thing, but never worked there because you did not read carefully the first post. There's a paragraph on booting from sdcard. And did you note you could also boot from USB stick/HDD ?

What are you confused about? Which pass of the step-by-step guide is not clear?

Sorry, I did not read it carefully. Instructions clearly say to erase the eMMC.

They boot from SD if the eMMC is erased.

I was trying to avoid doing that, because restoring the internal storage takes a while.

Because multitool boots from the SD card, I thought there must be a way to boot armbian from the SD card without modifying the internal storage.

 

21 hours ago, jock said:

They are the lowest end product available on the market, yet TX9 means nothing. Chinese manufactures give them fantasy names no matter what's inside the box, that's the reason we always talk about the boards, trying to identify them by looking at the signature and markings on the PCB.

I'll avoid talking about brand names from now on. Boards only, got it.

 

Thank you for your patience.

Sorry for all the confusion you had to deal with.

Link to comment
Share on other sites

11 hours ago, ojogoperdi said:

They boot from SD if the eMMC is erased.

I was trying to avoid doing that, because restoring the internal storage takes a while.

Because multitool boots from the SD card, I thought there must be a way to boot armbian from the SD card without modifying the internal storage.

 

@ojogoperdi ? ? It is indeed very possible to boot from sdcard without touching the internal storage, my sd image does it, and I know some others have done it too. My parents box has their Android intact and they still think android is so much better than linux 😄

Link to comment
Share on other sites

8 hours ago, fangis said:

It is indeed very possible to boot from sdcard without touching the internal storage, my sd image does it, and I know some others have done it too. My parents box has their Android intact and they still think android is so much better than linux

It's no secret indeed, but the armbian image has been engineered NOT to work that way on purpose because I did not wanted anything to do with existing old/buggy/limited bootloaders, miniloaders, trusts or whatever...

 

 

Link to comment
Share on other sites

Hi,

 

I recently purchased a cheap TV Box apparently based on RK3228A (chip marking) or RK3229 (Android boot log, shown in Recovery menu).      I tried booting Multitool on it, but it even refuses to boot it (red LED, no HDMI output).   I do not know where UART pins are and I have currently no scope to probe.

 

Should Multitool run even when eMMC/NAND is not cleared according to the first post?   Also other images (LibreELEC) do not boot.

 

Board is marked as "MXQ_R2B_LP3_V2.62_220225", the housing is marked as "Q96 Max 4K Ultra HD"  and it has round corners.

It claims to be Android 10, but in reality is Android 7

 

Does anyone have a tip? 

IMG_20230720_001904.jpg

IMG_20230720_001925.jpg

IMG_20230720_002736.jpg

IMG_20230720_025545.jpg

IMG_20230720_025633.jpg

IMG_20230720_030047.jpg

Edited by SteeMan
Moved to correct forum topic
Link to comment
Share on other sites

Hi all,

 

I'm not writing to ask for help, but only to share my experience, and to thank @jock for his work in allowing us to use linux with these boxes.

My board is an android tv with soc rk3229/NAND/DDR3/Wifi SSV6051p which I'm using as a network appliance (pihole - simple nas - network web server).

 

I followed the instructions in the first post and understood that the NAND is not supported, I preferred to empty it to avoid old bootloader problems and installed armbian bookworm on the SD card.

The rest is linux... I installed the software I needed and now the box provides services for my home network without any problems (and I reused hardware that otherwise would have gone in the trash).

Thanks again @jock and of course the armbian community

 

Cheers

Michele

Link to comment
Share on other sites

@TU-Student , hello, I predict someone will tell you to use an uart to usb converter. I am no expert on this, but I would guess maybe in pic 1 those 4 pins on the lower part are the uart ? ? please don't try before testing with a voltmeter or something ...

@ilmich , great ! my ssv6051 isn't working yet. maybe one day i'll be able to debug it.

Link to comment
Share on other sites

vor 15 Stunden schrieb TU-Student:

Does anyone have a tip?

 

looks like one of the new eMCP chip ( combination of emmc and ram ) it is working sometimes but you may be get problems

 

https://de.ifixit.com/Teardown/Teardown+des+MacBook+Pro+13-Inch+mit+Funktionstasten+Ende+2016/72415

there is also meantion the wifi chip set Universal Scientific Industrial 339S025 Wi-Fi Modul  --> first time i see something in a box

 

like jock said some issue befor this box are made of the cheapest crap that they can finde and put that together

 

Link to comment
Share on other sites

@TU-Student I have one little older version of the board and have finding the hardware pins for UART and MASK-ROM and its the same on your. Look on the posted images i haw done before and you is getting all you need.

I can also see that your board have being "fixes" hard or software then its have new label over the original so very likely they have flashing one "updated" Android on it before shipping it. 

 

I have modded the SD-Card so i can have its mounted inside the box then i need it for running HA and its only having 1/8 G that is OK but not flash for running supervised version and is working very well if not using USB that is crashing and need hard restart for working OK.

Link to comment
Share on other sites

@TU-Student the reason why we often write .. read the first post .. is because someone has already wasted time and health trying to make everything work.

The reason why some boxes do not boot from the sd card is because there is an old bootloader or one that does not activate the sd controller at the boot stage (often vendor's choice).

So if you are unlucky, and multitool/armbian doesn't boot, the safest way is to delete the internal memory because in this mode (maskrom) the soc activates the sd card and starts the OS from there (99.9999999% of the time)

If you need a backup (of a system that for me is unusable) you can use the USB OTG cable method (with tools like rkdeveloptool or my fork of rkflashtool)

 

@fangis strange, the 6051p I think is the best supported chip. what's your problem?!

Link to comment
Share on other sites

hi @ilmich, thanks for the help

 

I can't test the box right now, only on Sundays and even then it's difficult

but I have some logs, maybe it's helpful ?

 

cat dmesg2.txt | grep -i sdio -A5 -B5
[    4.911371] Bluetooth: HCI UART protocol ATH3K registered
[    4.917876] Bluetooth: HCI UART protocol Three-wire (H5) registered
[    4.924728] Bluetooth: HCI UART protocol BCM registered
[    4.931574] usbcore: registered new interface driver bfusb
[    4.938344] usbcore: registered new interface driver btusb
[    4.944845] Bluetooth: Generic Bluetooth SDIO driver ver 0.1
[    4.952172] cpu cpu0: leakage=5
[    4.958698] cpu cpu0: leakage-volt-sel=0
[    4.965482] cpu cpu0: Failed to get pvtm
[    4.974092] cpu cpu0: avs=0
[    4.980660] cpu cpu0: l=-2147483648 h=2147483647 hyst=0 l_limit=0 h_limit=0
[    4.987149] cpu cpu0: failed to read out thermal zone (-22)
[    4.994450] cpu cpu0: failed to find power_model node
[    5.000172] pwrseq_simple sdio-pwrseq: GPIO lookup for consumer reset
[    5.004832] pwrseq_simple sdio-pwrseq: using device tree for GPIO lookup
[    5.009496] of_get_named_gpiod_flags: parsed 'reset-gpios' property of node '/sdio-pwrseq[0]' - status (0)
[    5.014887] Synopsys Designware Multimedia Card Interface Driver
[    5.020518] usb 6-1: New USB device found, idVendor=062a, idProduct=4c01
[    5.020572] dwmmc_rockchip 30000000.dwmmc: IDMAC supports 32-bit address mode.
[    5.020877] dwmmc_rockchip 30000000.dwmmc: Using internal DMA controller.
[    5.020899] dwmmc_rockchip 30000000.dwmmc: Version ID is 270a
--
[ 1485.043886] [<b0009a68>] (do_one_initcall) from [<b00be208>] (do_init_module+0x74/0x1f4)
[ 1485.043903] [<b00be208>] (do_init_module) from [<b00c011c>] (load_module+0x1cc8/0x22bc)
[ 1485.043919] [<b00c011c>] (load_module) from [<b00c080c>] (SyS_init_module+0xfc/0x198)
[ 1485.043935] [<b00c080c>] (SyS_init_module) from [<b0010100>] (ret_fast_syscall+0x0/0x54)
[ 1485.043945] ---[ end trace ece8e1cf317b4e16 ]---
[ 1485.044289] ssv6xxx_sdio_init
[ 1485.545091] initWlan : Retry to carddetect
[ 1486.205085] initWlan : Retry to carddetect
[ 1486.865044] initWlan : Retry to carddetect
[ 1487.525035] initWlan : Retry to carddetect
[ 1488.185005] initWlan : Retry to carddetect
[ 1510.775726] generic_wifi_exit_module
[ 1510.879369] ssv6xxx_sdio_exit
[ 1510.936458] mmc1:mmc host rescan start!
[ 1510.936506] [WLAN_RFKILL]: rockchip_wifi_power: 0
[ 1510.936539] [WLAN_RFKILL]: rockchip_wifi_power: rfkill-wlan driver has not Successful initialized
[ 1552.920252] generic_wifi_init_module
[ 1553.199584] 
               *** sta_cfg_set, /etc/firmware/ssv6051-wifi.conf ***

[ 1553.203279] ssv6xxx_sdio_init
[ 1553.707424] initWlan : Retry to carddetect
[ 1554.367412] initWlan : Retry to carddetect
[ 1555.027387] initWlan : Retry to carddetect
[ 1555.687387] initWlan : Retry to carddetect
[ 1556.347376] initWlan : Retry to carddetect
[ 1650.075422] generic_wifi_exit_module
[ 1650.177386] ssv6xxx_sdio_exit
[ 1650.233107] mmc1:mmc host rescan start!
[ 1650.233154] [WLAN_RFKILL]: rockchip_wifi_power: 0
[ 1650.233185] [WLAN_RFKILL]: rockchip_wifi_power: rfkill-wlan driver has not Successful initialized
[ 1672.520954] generic_wifi_init_module
[ 1672.800656] 
               *** sta_cfg_set, /lib/firmware/ssv6051-wifi.cfg ***

[ 1672.811224] ssv6xxx_sdio_init
[ 1673.312564] initWlan : Retry to carddetect
[ 1673.972534] initWlan : Retry to carddetect
[ 1674.632554] initWlan : Retry to carddetect
[ 1675.292553] initWlan : Retry to carddetect
[ 1675.952503] initWlan : Retry to carddetect
r@pc:/mxq$ 

 

thank you

Edited by fangis
Link to comment
Share on other sites

Hello, i'm tryin to install on a tv box but when i put the sd card and turn on i got nothing on screen (looks like don't start)

* i'm using an usb adapter because my pc doesn't read sd directly

so i got the multitool partition in ntfs when install multitool on sd:

https://drive.google.com/file/d/1_3tEXDWX0zSX68oQRI59JDhIZxtfy-DY/view?usp=sharing

 

specs:

TV BOX: Mxq pro 4k 5g with board rk3229-mxq-8723 v1.0

PROCESSOR: RK3229

AIDA64:

https://drive.google.com/file/d/1s9XvUhTaLg75kg4WvIj4qAauLILRLAnj/view?usp=sharing

https://drive.google.com/file/d/1Jdp8zLBLdteA7Y2wbEELqi5LPDx1lhKG/view?usp=sharing

Edited by mattmar
specs
Link to comment
Share on other sites

@fangis It is not a good idea to cut the stack trace in the middle when you want to do debug. Also put the log in a "spoiler" section to make easier to read the thread.

 

@mattmar I don't understand the part about the usb adapter: if are you using it to program the sdcard on the PC then it does not matter. If you're using it on the box, then it won't work.

Also I don't understand what does not boot: the multitool or the armbian image?

AIDA is not useful, as usual we need the serial output and photos of the board.

Link to comment
Share on other sites

@jock & @fabiobassa, thanks for pointing out that my device was nand, I somehow mistook it for emmc. After struggling for long time I followed the unbrick guide and I was able to recover the device by flash it with the android using Android Tool. I got a new SD card, loaded it with multitool, however there was a slight hiccup in backing up the flash on rknand as the progress bar in multitool was stuck at 0% for a very long time, so I decide to skip the backup and used focal image with legacy kernel and my box is now running armbian. Thanks for helping out

Link to comment
Share on other sites

Hi @jock , thanks if you can help with this.

I'll do a more complete post.

If not enough I can post the whole dmesg, later

 

Spoiler

               *** sta_cfg_set, /etc/firmware/ssv6051-wifi.conf ***

[ 1485.042820] ERROR: filp_open
[ 1485.042853] ------------[ cut here ]------------
[ 1485.043061] WARNING: CPU: 2 PID: 2740 at drivers/net/wireless/rockchip_wlan/ssv6xxx/ssvdevice/ssvdevice.c:169 sta_cfg_set+0xc0/0x220 [ssv6051]()
[ 1485.043073] Modules linked in: ssv6051(+) lz4 lz4_compress gpio_ir_recv lzo mali snd_soc_rk3228 zram fuse ip_tables autofs4 uas
[ 1485.043153] CPU: 2 PID: 2740 Comm: busybox Not tainted 4.4.194-rk322x #2
[ 1485.043162] Hardware name: Generic DT based system
[ 1485.043208] [<b001898c>] (unwind_backtrace) from [<b0014468>] (show_stack+0x20/0x24)
[ 1485.043234] [<b0014468>] (show_stack) from [<b05306a0>] (dump_stack+0x90/0xa4)
[ 1485.043254] [<b05306a0>] (dump_stack) from [<b00276dc>] (warn_slowpath_common+0x94/0xc4)
[ 1485.043271] [<b00276dc>] (warn_slowpath_common) from [<b00277c8>] (warn_slowpath_null+0x2c/0x34)
[ 1485.043361] [<b00277c8>] (warn_slowpath_null) from [<af0ddb00>] (sta_cfg_set+0xc0/0x220 [ssv6051])
[ 1485.043506] [<af0ddb00>] (sta_cfg_set [ssv6051]) from [<af0c24b4>] (ssvdevice_init+0xf4/0x12c [ssv6051])
[ 1485.043640] [<af0c24b4>] (ssvdevice_init [ssv6051]) from [<af0dd9c4>] (initWlan+0x40/0x8c [ssv6051])
[ 1485.043770] [<af0dd9c4>] (initWlan [ssv6051]) from [<af0f7020>] (generic_wifi_init_module+0x20/0x1000 [ssv6051])
[ 1485.043853] [<af0f7020>] (generic_wifi_init_module [ssv6051]) from [<b0009a68>] (do_one_initcall+0xa0/0x1f8)
[ 1485.043886] [<b0009a68>] (do_one_initcall) from [<b00be208>] (do_init_module+0x74/0x1f4)
[ 1485.043903] [<b00be208>] (do_init_module) from [<b00c011c>] (load_module+0x1cc8/0x22bc)
[ 1485.043919] [<b00c011c>] (load_module) from [<b00c080c>] (SyS_init_module+0xfc/0x198)
[ 1485.043935] [<b00c080c>] (SyS_init_module) from [<b0010100>] (ret_fast_syscall+0x0/0x54)
[ 1485.043945] ---[ end trace ece8e1cf317b4e16 ]---
[ 1485.044289] ssv6xxx_sdio_init
[ 1485.545091] initWlan : Retry to carddetect
[ 1486.205085] initWlan : Retry to carddetect
[ 1486.865044] initWlan : Retry to carddetect
[ 1487.525035] initWlan : Retry to carddetect
[ 1488.185005] initWlan : Retry to carddetect
[ 1510.775726] generic_wifi_exit_module
[ 1510.879369] ssv6xxx_sdio_exit
[ 1510.936458] mmc1:mmc host rescan start!
[ 1510.936506] [WLAN_RFKILL]: rockchip_wifi_power: 0
[ 1510.936539] [WLAN_RFKILL]: rockchip_wifi_power: rfkill-wlan driver has not Successful initialized
[ 1552.920252] generic_wifi_init_module
[ 1553.199584] 
 

 

Link to comment
Share on other sites

[mention=204757]rafaeldavid[/mention] I actually don't remember what exactly we discussed about the last time, but surely R29 boards have this long-time HDMI issue I could not inspect because have no such board and noone provided one to study.
For the clock issue, I don't remember if I suggested you to use the cpu-stability (both with 1.2 or 1.4 ghz max frequency) overlay and see if it makes any difference.
 
What I could guess about is that there are some board whose power regulation design in "slow" to bring up voltage in time for the frequency change, so random crashes happens.
The overlay will raise the lowest voltage from 0.900v to 1.100v, so the gap with max voltage (1.35v) is shorter.
I have a board with such kind of issue right here, and that overlay made it work flawlessy.
hello jock
I want to send you my R29 board. It works but has the problem with the HDMI and the reboot.
To which address should I send the package ?

Enviado de meu moto g(8) power lite usando o Tapatalk

Link to comment
Share on other sites

vor 26 Minuten schrieb YanCorote:

No, this screen was after completing the installation in multitool and turning it off. Pulled out the power cable and sd card and started again.

Yes, it is NAND, RK3329

witch version do you want to install to nand ?  newer Kernel can not work with nand there are many problems

do you clean the nand befor flash armbian ?

 

i got this screen every time after rk322x-config set in ENv.txt the parameter nand or nand-emmc  , i have to remove it that only standart setting are load

 

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.

Guest
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.

Loading...
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines