CSC Armbian for RK322X TV Boxes


Recommended Posts

50 minutes ago, zero48 said:

Well I play a lot with this one (the original first Timer) it does not recognise the SD , with multitool.

The others 3 are fine and working flawlessly. 

I think this one Die with Honors ... LOL 

 

PD. By the way 1.5Mb speed is not showing nothisn , the image was taken with 115200 Speed.

If for some reason the eMMC is faulty and getting corrupted, it may be that the device boots from eMMC but then freezes.

To boot back from the sdcard you need to put the multitool in the sd slot and force the maskrom mode shorting the eMMC clock pin.

 

Once in the multitool you should be able to flash another image to do further testing or erase the eMMC: once the eMMC is empty, the board will always boot from sdcard automatically.

Link to post
Share on other sites
Donate and support the project!

On 12/5/2020 at 4:31 PM, fabiobassa said:

But with the sd-multitool have you at least a try-to-boot ?

Those boards are UNBRICKABLE because the real bootstrap is in the soc itself. I have many with broken nand or emmc that I desoldered and they boot flawlessly from SD of course with right ddrbin U-Boot and the hellish trust-os.

Later if is phisically broken the sdcard reader, well YES it died with honor LOL 

( And.... ... There still is last thing to try but the process is long)

Tell me and I''l do that long process ...

 

TKS

Link to post
Share on other sites
On 12/5/2020 at 5:05 PM, jock said:

If for some reason the eMMC is faulty and getting corrupted, it may be that the device boots from eMMC but then freezes.

To boot back from the sdcard you need to put the multitool in the sd slot and force the maskrom mode shorting the eMMC clock pin.

 

Once in the multitool you should be able to flash another image to do further testing or erase the eMMC: once the eMMC is empty, the board will always boot from sdcard automatically.

  I'll  do and report 

 

Thanks !!

Link to post
Share on other sites

@zero48
 

Quote

Tell me and I''l do that long process ...

well you have 2 possibilities:
method 1 :  @jock method of shorten emmc and boot from multitool
method 2 : flash the original android rom that will set up again the original u-boot and trust-os and once the board is started and you have android on video, shut-off and boot again from sd card and multiboot, this TIME NO NEED TO SHORT emmc because you have original android boot sequence in place  .

You need original rom and a male - male usb cable and this tool AndroidTool_Release_v2.67.zip ( search on net )
In both manners you need the multitool for flashing a new image on emmc, with second method if android starts you are also sure that no physical or less damages occurred to emmc before you try to flash a new armbian image

Link to post
Share on other sites
2 minutes ago, fabiobassa said:

@zero48
 

well you have 2 possibilities:
method 1 :  @jock method of shorten emmc and boot from multitool
method 2 : flash the original android rom that will set up again the original u-boot and trust-os and once the board is started and you have android on video, shut-off and boot again from sd card and multiboot .You need original rom and a male - male usb cable and this tool AndroidTool_Release_v2.67.zip
In both manners you need the multitool for flashing a new image on emmc, with second method if android starts you are also sure that no physical or less damages occurred to emmc before you try to flash a new armbian image

Perfect, I'll try tonight and comment back to you guys 

 

Thansks once again 

 

 

Link to post
Share on other sites

My English is very poor, this is translated using a translation tool; it may cause you some reading confusion, I am very sorry.
I have a box, rk3228a 512m ram 8G emmc, no sd card slot, vacant mini HDMI,
I used AndroidTool to burn the image to emmc, uboot can start, but it seems that the kernel cannot be started.
I tried to replace all the dtbs of rk3228 and rk3229 in the image, and the result was the same.
I don't know how to solve it,
Finally, use rkdeveloptool to back up the original firmware from a new box and try to extract dtb.
The original firmware is Android, I am not sure whether the extracted dtb is correct, I need some help

 

DDR Version V1.10 20190926
In
ID:0xFFF
600MHz
DDR3
Bus Width=32 Col=10 Bank=8 Row=14 CS=1 Die Bus-Width=16 Size=512MB
mach:1
OUT

U-Boot SPL 2020.10-armbian (Jan 05 2021 - 03:46:43 +0100)
Trying to boot from MMC2
I/TC:
I/TC: Non-secure external DT found
I/TC: Switching console to device: /serial@11030000
I/TC: OP-TEE version: 3.10.0-40-ga1d5c81f (gcc version 9.2.1 20191025 (GNU Toolc     hain for the A-profile Architecture 9.2-2019.12 (arm-9.10))) #6 Wed Sep 16 21:36     :15 UTC 2020 arm
I/TC: Primary CPU initializing
M/TC: Not protecting region 1: 0x68400000-0x68600000
I/TC: Primary CPU switching to normal world boot


U-Boot 2020.10-armbian (Jan 05 2021 - 03:46:43 +0100)

Model: Generic Rockchip rk322x TV Box board
DRAM:  480 MiB
MMC:   dwmmc@30000000: 1, dwmmc@30020000: 0
Loading Environment from EXT4... ** File not found /boot/boot.env **

** Unable to read "/boot/boot.env" from mmc0:1 **
In:    serial@11030000
Out:   serial@11030000
Err:   serial@11030000
Model: Generic Rockchip rk322x TV Box board
Net:   eth0: ethernet@30200000
starting USB...
Bus usb@30040000: USB DWC2
scanning bus usb@30040000 for devices... 1 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
stopping USB..
starting USB...
Bus usb@30040000: USB DWC2
scanning bus usb@30040000 for devices... 1 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
Hit any key to stop autoboot:  0
Card did not respond to voltage select!

Device 0: unknown device
switch to partitions #0, OK
mmc0(part 0) is current device
Scanning mmc 0:1...
Found U-Boot script /boot/boot.scr
2909 bytes read in 3 ms (946.3 KiB/s)
## Executing script at 60000000
Boot script loaded from mmc 0
165 bytes read in 2 ms (80.1 KiB/s)
5694522 bytes read in 137 ms (39.6 MiB/s)
8771432 bytes read in 206 ms (40.6 MiB/s)
49812 bytes read in 6 ms (7.9 MiB/s)
232 bytes read in 5 ms (44.9 KiB/s)
Applying kernel provided DT fixup script (rk322x-fixup.scr)
## Executing script at 600f0000
## Loading init Ramdisk from Legacy Image at 64000000 ...
   Image Name:   uInitrd
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)
   Data Size:    5694458 Bytes = 5.4 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
## Flattened Device Tree blob at 61f00000
   Booting using the fdt blob at 0x61f00000
   Loading Ramdisk to 67e91000, end 683ff3fa ... OK
   Loading Device Tree to 67e1c000, end 67e90fff ... OK

Starting kernel ...

 

Link to post
Share on other sites

Good Morning, I have a tv box model r29-5g-v1.2-221, I tried both the distribution of the armbian for the rk322x and the Multitool, and configuring the normal distribution with the dtb rk322x is only the red led on and using the multitool is the flashing orange led. the network card is the sv6256p and the memory is the TYDOGH221644RC 8G + 1g the chip is the rk3229tvbox1.jpegtvbox2.jpegtvbox3.jpeg

Link to post
Share on other sites

@JVMS Thanks for the photos of the board. Do you have any problem or is it working fine?

Everything should be supported out of the box, but leds may have a different wiring from the common chiptrip/r329q setups. In that case, the original DTB file that comes from the stock android is very helpful

Link to post
Share on other sites
22 hours ago, fabiobassa said:

@qiheng

good morning ! Please :

1) model or commercial name
2) photos ??
3) which image are you using ?
4) which program for flash you using?

Thank you so much


 

Thank you for your reply

Product name and model: chainedbox m1-aa-bk

The image used is Armbian_ 20.11.6_ Rk322x-box_ buster_ legacy_ 4.4.194.img

The burning tool is Android tool_ Release_ v2.6

 

sJZBgf.png

sJZ08P.png

sJZwCt.png

sYPDV1.png

yhmh.dtbyhmh.dtsbackup.img I back up and try to extract the DTB

If using armbian_ 21.02.0-trunk_ Rk322x-box_ buster_ dev_ 5.10.2_ minimal.img

The result is a restart in 10 seconds

Device 0: unknown device
switch to partitions #0, OK
mmc0(part 0) is current device
Scanning mmc 0:1...
Found U-Boot script /boot/boot.scr
2909 bytes read in 4 ms (710 KiB/s)
## Executing script at 60000000
Boot script loaded from mmc 0
214 bytes read in 3 ms (69.3 KiB/s)
6038582 bytes read in 144 ms (40 MiB/s)
9821608 bytes read in 230 ms (40.7 MiB/s)
41189 bytes read in 11 ms (3.6 MiB/s)
232 bytes read in 6 ms (37.1 KiB/s)
Applying kernel provided DT fixup script (rk322x-fixup.scr)
## Executing script at 600f0000
## Loading init Ramdisk from Legacy Image at 64000000 ...
   Image Name:   uInitrd
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)
   Data Size:    6038518 Bytes = 5.8 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
## Flattened Device Tree blob at 61f00000
   Booting using the fdt blob at 0x61f00000
   Loading Ramdisk to 67e3d000, end 683ff3f6 ... OK
   Loading Device Tree to 67dca000, end 67e3cfff ... OK

Starting kernel ...

I/TC: Secondary CPU 1 initializing
I/TC: Secondary CPU 1 switching to normal world boot
I/TC: Secondary CPU 2 initializing
I/TC: Secondary CPU 2 switching to normal world boot
I/TC: Secondary CPU 3 initializing
I/TC: Secondary CPU 3 switching to normal world boot

 

Link to post
Share on other sites

@qiheng

I don't know why you mixed things and used rkdevelop tool
You should  use MULTITOOL and follow THESE instructions in the first post

 

Quote

Quick installation instructions on eMMC:

Build or download your preferred Armbian image and a copy of the Multitool;

Burn the Multitool on an SD card; once done, place the Armbian image in images folder of the SD card FAT partition;

Plug the SD card in the TV box and plug in the power cord. After some seconds the blue led starts blinking and the Multitool appears;

OPTIONAL: you can do a backup of the existing firmware with "Backup flash" menu option;

Choose "Burn image to flash" from the menu, then select the destination device (usually mmcblk2) and the image to burn;

Wait for the process to complete, then choose "Shutdown" from main menu;

Unplug the power cord and the SD card, then replug the power cord;

Wait for 10 seconds, then the led should start blinking and HDMI will turn on. The first time the boot process will take a couple of minutes or more because the filesystem is going to be resized, so be patient and wait for the login prompt.

On first boot you will be asked for entering a password for root user of your choice and the name and password for a regular user

Run sudo rk322x-config and select your board characteristics to enable leds, wifi chips, high-speed eMMC, etc...

Run armbian-config to configure timezone, locales and other personal options

Congratulations, Armbian is now installed!

 

Link to post
Share on other sites
On 1/12/2021 at 4:50 AM, jock said:

@JVMS Thanks for the photos of the board. Do you have any problem or is it working fine?

Everything should be supported out of the box, but leds may have a different wiring from the common chiptrip/r329q setups. In that case, the original DTB file that comes from the stock android is very helpful

 

On 1/12/2021 at 4:50 AM, jock said:

@JVMS Thanks for the photos of the board. Do you have any problem or is it working fine?

Everything should be supported out of the box, but leds may have a different wiring from the common chiptrip/r329q setups. In that case, the original DTB file that comes from the stock android is very helpful

@jockas i said i am not able to boot with the armbian RK322X distro for ubuntu and debian, it is only with the red led on, the multitool is with the orange led flashing, and in both cases there is no video signal

Link to post
Share on other sites
On 1/12/2021 at 6:48 PM, fabiobassa said:

@qiheng

I don't know why you mixed things and used rkdevelop tool
You should  use MULTITOOL and follow THESE instructions in the first post

 

 

:(:(:(  I cannot follow the instructions, there is no SD card slot and HDMI on the board, and I cannot boot from the USB otg port after testing.

Link to post
Share on other sites
5 hours ago, JVMS said:

 

@jockas i said i am not able to boot with the armbian RK322X distro for ubuntu and debian, it is only with the red led on, the multitool is with the orange led flashing, and in both cases there is no video signal

The orange led flashing is indicating the Multitool booted and is waiting for you input. You may try to unplug and replug HDMI cable while the led is flashing. Some people reported it worked.

Otherwise the causes may be too many, including an unsupported TV/monitor due to some HDMI clock issues. HDMI clocks are a moving target and issues always arise with some uncommon or untested TVs.

 

Try with another HDMI device too, or even an image with the mainline kernel, can't tell anything more without dmesg logs and other details.

 

Link to post
Share on other sites
3 hours ago, qiheng said:

:(:(:(  I cannot follow the instructions, there is no SD card slot and HDMI on the board, and I cannot boot from the USB otg port after testing.

Reasons can be many, yours is not a regular tvbox too, which may have a very different hardware configuration, thus the regular rk322x-box device tree may or may not work.

Providing the original DTB can be very useful to understand what's wrong. The issue can be in the dtb or even in the kernel configuration because I never had the chance to test a 512mb board so some settings may need to be fixed for that reason.

Also providing the original android boot log is very helpful, that's a matter of reverse engineering and if you don't provide anything it is too hard to guess what's wrong.

You didn't even tell what is the purpose of this object, from what I see it looks like a 802.11ac wifi router/repeater...

Link to post
Share on other sites
20 hours ago, jock said:

The orange led flashing is indicating the Multitool booted and is waiting for you input. You may try to unplug and replug HDMI cable while the led is flashing. Some people reported it worked.

Otherwise the causes may be too many, including an unsupported TV/monitor due to some HDMI clock issues. HDMI clocks are a moving target and issues always arise with some uncommon or untested TVs.

 

Try with another HDMI device too, or even an image with the mainline kernel, can't tell anything more without dmesg logs and other details.

 

I tried the way you said, the yellow LED is blinking . tried on two different monitors and different cables and nothing, no signal

Link to post
Share on other sites
20 hours ago, jock said:

Reasons can be many, yours is not a regular tvbox too, which may have a very different hardware configuration, thus the regular rk322x-box device tree may or may not work.

Providing the original DTB can be very useful to understand what's wrong. The issue can be in the dtb or even in the kernel configuration because I never had the chance to test a 512mb board so some settings may need to be fixed for that reason.

Also providing the original android boot log is very helpful, that's a matter of reverse engineering and if you don't provide anything it is too hard to guess what's wrong.

You didn't even tell what is the purpose of this object, from what I see it looks like a 802.11ac wifi router/repeater...

Sorry, it’s my negligence. The box is a simple personal file server with Wi-Fi and Bluetooth. The service has been stopped due to the closure of the service company, so I want to use it

I can't find the entrance to upload files to the forum. The files are on Googl Drive  (Use translation tools to translate,Please forgive me for causing confusion in reading:)

backup.img

yhmh.dtb

yhmh.dts

Android boot log.txt

Thank you very much and for causing you trouble

Link to post
Share on other sites
7 hours ago, qiheng said:

Sorry, it’s my negligence. The box is a simple personal file server with Wi-Fi and Bluetooth. The service has been stopped due to the closure of the service company, so I want to use it

I can't find the entrance to upload files to the forum. The files are on Googl Drive  (Use translation tools to translate,Please forgive me for causing confusion in reading:)

backup.img

yhmh.dtb

yhmh.dts

Android boot log.txt

Thank you very much and for causing you trouble

I looked into the dts and there are no clear differences which are hampering the booting process against the rk322x-box device tree.

I talked with @fabiobassa and we thought that you should enable logging through the serial port that maybe can give some more hints. Normally kernel logging happens on the HDMI, but you should switch to serial console.

 

You should modify the file in /boot/armbianEnv.txt and add:

verbosity=7
extraargs=console=ttyS2,115200n8

 

But you have the problem that probably can't access the eMMC from your computer.

To overcome this, you should be able to burn the armbian image on an USB stick and change the file /boot/armbianEnv.txt there to increase verbosity the console output.

Once done, put the USB stick in the OTG port of the board and power on. U-boot should then boot from USB instead of eMMC and should take the arguments from armbianEnv.txt. Hopefully there will be more output from the kernel.

 

Besides: your board should have two leds, is one of them blinking during boot phase? If so, the kernel is alive which is already a good news.

Link to post
Share on other sites
8 hours ago, aiyyo said:

Hi Guys!

I have a RK3228A box (H96 mini V8) without SD card slot. How can I flash the armbian image to the internal emmc?

Thank you!

First page -> instructions for experts (ie: use male-to-male cable, rkdeveloptool and maskrom mode)

Link to post
Share on other sites
18 hours ago, jock said:

I looked into the dts and there are no clear differences which are hampering the booting process against the rk322x-box device tree.

I talked with @fabiobassa and we thought that you should enable logging through the serial port that maybe can give some more hints. Normally kernel logging happens on the HDMI, but you should switch to serial console.

 

You should modify the file in /boot/armbianEnv.txt and add:


verbosity=7
extraargs=console=ttyS2,115200n8

 

But you have the problem that probably can't access the eMMC from your computer.

To overcome this, you should be able to burn the armbian image on an USB stick and change the file /boot/armbianEnv.txt there to increase verbosity the console output.

Once done, put the USB stick in the OTG port of the board and power on. U-boot should then boot from USB instead of eMMC and should take the arguments from armbianEnv.txt. Hopefully there will be more output from the kernel.

 

Besides: your board should have two leds, is one of them blinking during boot phase? If so, the kernel is alive which is already a good news.

good news! so happy!:DMy box is working

Yes, there are three LEDs on the board,After power on, the middle LED will light up, After the kernel starts, the LED on the right will start to flashing

I did not use USB otg to boot armbian,Use Androidtool_ Release_ v2.67 to directly burn the modified image into eMMC. This is feasible

I used Armbian_ 21.02.0-trunk_ Rk322x-box_ buster_ dev_ 5.10.2_ minimal.img , only modified verbosity=7

What puzzles me is that the CPU temperature can be displayed when the system is first started, reboot the system CPU temperature is unavailable, but it doesn't affect anything

So far it’s working well, It seems that Wi-Fi is also working 

sBJOzR.png

sBJjQ1.png

The complete boot log is here

Armbian_21.02.0_5.10.2_boot log.txt

Thanks again for your help!  I also hope my experience will be helpful to future friends:P

(Use translation tools to translate,Please forgive me for causing confusion in reading:)

Link to post
Share on other sites

hello, i'm new to this forum. i also bought a tv box similar to JVMS. it's marked r28-mxq-00813. ram is marked k4b1g0446F, searched for the datasheet and it looks like ddr3 ram 667MHz . it has an 8G flash marked EPNA6M4-0808-AE. i was able to readback at least 32MB of the flash with rkdevtool v2.79. i can't however backup idbloader and everything else after 0x10000h. i seem to have borked the firmware trying to writeback my 32MB backup. i tried booting the board using a usb flash drive flashed with multitool. i used balena etcher, still no luck. i'll upload photos later.

Link to post
Share on other sites
7 hours ago, Seth said:

hello, i'm new to this forum. i also bought a tv box similar to JVMS. it's marked r28-mxq-00813. ram is marked k4b1g0446F, searched for the datasheet and it looks like ddr3 ram 667MHz . it has an 8G flash marked EPNA6M4-0808-AE. i was able to readback at least 32MB of the flash with rkdevtool v2.79. i can't however backup idbloader and everything else after 0x10000h. i seem to have borked the firmware trying to writeback my 32MB backup. i tried booting the board using a usb flash drive flashed with multitool. i used balena etcher, still no luck. i'll upload photos later.

Did you have any problems before?

Stock bootloader does not support USB boot, you have to use an sdcard if you want to boot using the multitool.

If you don't have any sdcard slot, you can use rkdevtool (or rkdeveloptool for linux, better but only command line) to write directly the armbian image on the board. This is generally very safe, but in very rare hardware configurations the bootloader shipped with armbian refused to load. In this unfortunate case, you may be able to follow the unbrick procedure described in the first page.

 

 

Link to post
Share on other sites

Hi guys,

 

i have been off for a while and restartet my Scishion V88 Mini 4K Project again. In these devices there is a rk3229 chipset with ssv6051p wireless. I installed already a while ago the legacy kernel into NAND-Flash. After using rk3229-config which is really nice nowadays, thanks again to @fabiobassa, I think everything is fine, but there are still two topics. When I use armbian-config there are networks around me when I try to use wifi and wifi already worked with former images. Then I try to connect and it asks for password. After entering the password there is nothing and after a while there is the information that die accespoint is not available or around... very strange... - So I am not able to connect via wifi. It's possible to use eth0, but with or without connected ethernetcable the start takes around 10 Minutes and it always stops for 5 minutes when it tries to bring network interfaces up. So there seems to be a problem. Also the reboot is still not working.

 

Any recommendations or suggestions to get wifi back to work? - i updated to latest version via ethernet cable. So at the moment it works with Armbian 20.11.6 focal.

 


      _    _________  ____            _               
 _ __| | _|___ /___ \|___ \__  __    | |__   _____  __
| '__| |/ / |_ \ __) | __) \ \/ /____| '_ \ / _ \ \/ /
| |  |   < ___) / __/ / __/ >  <_____| |_) | (_) >  < 
|_|  |_|\_\____/_____|_____/_/\_\    |_.__/ \___/_/\_\
                                                      
Welcome to Armbian 20.11.6 Focal with Linux 4.4.194-rk322x

No end-user support: community creations

System load:   153%               Up time:       34 min        
Memory usage:  7% of 994M       IP:            192.168.178.188
CPU temp:      74°C               Usage of /:    15% of 7.0G       

[ General system configuration (beta): armbian-config ]

Last login: Thu Jan 21 00:39:54 2021 from 192.168.178.168
root@rk322x-box:~# iwconfig
wlan0     IEEE 802.11bgn  ESSID:off/any  
          Mode:Managed  Access Point: Not-Associated   Tx-Power=20 dBm   
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:off
          
sit0      no wireless extensions.

dummy0    no wireless extensions.

lo        no wireless extensions.

eth0      no wireless extensions.

root@rk322x-box:~# 
 

Link to post
Share on other sites
On 1/20/2021 at 6:14 PM, jock said:

Did you have any problems before?

Stock bootloader does not support USB boot, you have to use an sdcard if you want to boot using the multitool.

If you don't have any sdcard slot, you can use rkdevtool (or rkdeveloptool for linux, better but only command line) to write directly the armbian image on the board. This is generally very safe, but in very rare hardware configurations the bootloader shipped with armbian refused to load. In this unfortunate case, you may be able to follow the unbrick procedure described in the first page.

 

 

I tried to flash an android firmware i found on the net. and now it's dead. doesn't even get detected when i plug in usb. rkdevtool on windows doesn't recognize it anymore (maskrom or loader) i think the firmware i downloaded has the wrong idb loader or something. :(

here are the images of the board.

boardpics

i was hoping i could short the flash clk pin to ground so i can go into force maskrom mode but the pinouts from fabiobassa's pics are not the same. :(

 

P.S.

i got an smd rework station and an assortment of maker tools and fine soldering skills so i'm not afraid to go full on hardware mode. just need someone to point me in the right direction. thanks in advance. :D

Edited by Seth
additional info.
Link to post
Share on other sites
9 hours ago, Seth said:

I tried to flash an android firmware i found on the net. and now it's dead. doesn't even get detected when i plug in usb. rkdevtool on windows doesn't recognize it anymore (maskrom or loader) i think the firmware i downloaded has the wrong idb loader or something.

That's the most probable explanation. The idbloader is the most vulnerable part in terms of breakage: a totally wrong (ie: no binary signatures) idbloader is discarded by the SoC, but an apparently good one will make the board stay stuck at boot time without any further chance to recover it.

Do you have a serial attached to the board? If something is coming out of the UART so we could at least figure out where the board is freezing.

 

Just to be sure, did you try the OTG USB port for maskrom mode? Others won't work, only the OTG port will show up as external device using the male-to-male USB cable.

 

It looks to me that the eMMC you have soldered is BGA and pins/balls are not exposed anywhere, so it is very very hard to find the clock pin to short it out to enter maskrom mode.

Link to post
Share on other sites