CSC Armbian for RK3318/RK3328 TV box boards


jock
 Share

23 23

Recommended Posts

Hi, @jock, I am looking around how to bring to life LED display on my box.
It has a chip HT1628 (seems like clone of FD628) and I see in the DTB these lines:

 

	fd628_dev {
		compatible = "fd628_dev";
		fd628_gpio_clk = <0x72 0x10 0x00>;
		fd628_gpio_dat = <0x72 0x0f 0x00>;
		status = "okay";
	};


But I cannot see any message in the dmesg about this. Is the driver for this chip included in your build?

 

BTW, probably I need to change the DTB because in the android I see different numbers:

 

   skykirin_led {
		compatible = "skykirin-ht1628";
		spi_clk = <0x8a 0x13 0x00>;
		spi_cs = <0x8a 0x12 0x00>;
		spi_data = <0x8a 0x16 0x00>;
		status = "okay";
	};

 

 

Link to post
Share on other sites

Armbian is a community driven open source project. Do you like to contribute your code?

@lucky62 I found that on the internet there is some sort of patched driver for the *628 devices, but never tried it: https://lwn.net/Articles/807427/

It looks like the chip is connected via SPI bus (clk + data lines), but then the actual commands to make it works are still unknown; probably searching on the internet a datasheet of some sort may come out, or the looking at the driver there is a way to make it work but actually I didn't investigated a lot into.

 

In the meantime I fixed up the Ap6330 bluetooth issue on my rk3288 box, I will merge the fix (a workaround actually) to rk3318 project and make a new image build (+ debs for upgrading)

Link to post
Share on other sites

Posted (edited)

I bought an x88 (rk3318 4g ram 64 gb rom version) and was happy with the specs.

After trying it with the SD card everything was working so I tried to burn it into the internal flash.

During the installation process(first using rk-config, then directly with dd) the whole process gets stuck during the copy of the /usr directory.

After multiple attempts the box seems to be bricked, and I can't even boot with an SD card with a saved tested armbian image.

 

the bricking could be the result of multiple issues:

-power supply apparently outputting 13V, hence making the box "blink" instead of booting

-deleting binaries on the internal flash

 

Anyway, my tv box isn't working at the moment and I am trying my best to try different images and dtbs.

If I can't get support from the seller I might look at the serial output and investigate more

Edited by Generic_user
Link to post
Share on other sites

38 minutes ago, Generic_user said:

I bought an x88 (rk3318 4g ram 64 gb rom version) and was happy with the specs.

After trying it with the SD card everything was working so I tried to burn it into the internal flash.

During the installation process(first using rk-config, then directly with dd) the whole process gets stuck during the copy of the /usr directory.

After multiple attempts the box seems to be bricked, and I can't even boot with an SD card with a saved tested armbian image.

 

the bricking could be the result of multiple issues:

-power supply apparently outputting 13V, hence making the box "blink" instead of booting

-deleting binaries on the internal flash

 

Anyway, my tv box isn't working at the moment and I am trying my best to try different images and dtbs.

If I can't get support from the seller I might look at the serial output and investigate more

I don't think I got it right... the installation process via rk-config and dd are unknown to me, did you use armbian-config maybe? I actually never tested armbian-config, but what it does is mostly a file copy and if the file copy fails there may be a problem with the internal flash. We noticed that really a lot of eMMCs mounted on these boxes are defective.

The power supply may be defective, usually they output 5 volts, but maybe your box has an input voltage of 12V??

Anyway the Multitool should boot in almost any case and can help you access the internal flash, clear it, or install a fresh image directly onto the eMMC.

The serial output is always a good source of debugging information though.

 

Link to post
Share on other sites

Images have been update to kernel 5.10.34. Reported issues have been fixed also:

  • USB boot: works now, but not in an always reliable manner (u-boot code is a bit flawed :unsure:)
  • AP6330 wireless and bluetooth should work out of the box (firmware and patches have been included, but it is untested though)
  • AP6334 performance has been increased a lot (new firmware and nvram)

 

edit: here single debian packages can be downloaded for kernel/u-boot/dtb upgrade without reinstallation. Download all of them and then install with dpkg -i *.deb

Link to post
Share on other sites

23 minutes ago, lucky62 said:

thanks for update, tomorrow I will try...
 

can you explain this little more?

 

Sometimes u-boot does not correctly detects the USB device and you have to unplug and replug power to let it detect the USB stick

edit: usb3 port does not seem to work at all... u-boot USB Designware driver is very dismal

Link to post
Share on other sites

Small problems during installation:

 

# dpkg -i *
(Reading database ... 44957 files and directories currently installed.)
Preparing to unpack linux-dtb-current-rockchip64_21.08.0-trunk_arm64.deb ...
Unpacking linux-dtb-current-rockchip64 (21.08.0-trunk) over (21.08.0-trunk) ...
dpkg: warning: unable to delete old directory '/boot/dtb-5.10.32-rockchip64/rockchip': Directory not empty
dpkg: warning: unable to delete old directory '/boot/dtb-5.10.32-rockchip64': Directory not empty
Selecting previously unselected package linux-headers-current-rockchip64.
Preparing to unpack linux-headers-current-rockchip64_21.08.0-trunk_arm64.deb ...
Unpacking linux-headers-current-rockchip64 (21.08.0-trunk) ...
Preparing to unpack linux-image-current-rockchip64_21.08.0-trunk_arm64.deb ...
update-initramfs: Deleting /boot/initrd.img-5.10.32-rockchip64
Removing obsolete file uInitrd-5.10.32-rockchip64
Unpacking linux-image-current-rockchip64 (21.08.0-trunk) over (21.08.0-trunk) ...
Preparing to unpack linux-u-boot-current-rk3318-box_21.08.0-trunk_arm64.deb ...
Unpacking linux-u-boot-rk3318-box-current (21.08.0-trunk) over (21.08.0-trunk) ...
Setting up linux-dtb-current-rockchip64 (21.08.0-trunk) ...
dpkg: dependency problems prevent configuration of linux-headers-current-rockchip64:
 linux-headers-current-rockchip64 depends on bison; however:
  Package bison is not installed.
 linux-headers-current-rockchip64 depends on flex; however:
  Package flex is not installed.
 linux-headers-current-rockchip64 depends on libssl-dev; however:
  Package libssl-dev is not installed.

dpkg: error processing package linux-headers-current-rockchip64 (--install):
 dependency problems - leaving unconfigured
Setting up linux-image-current-rockchip64 (21.08.0-trunk) ...
update-initramfs: Generating /boot/initrd.img-5.10.34-rockchip64
update-initramfs: Converting to u-boot format
Setting up linux-u-boot-rk3318-box-current (21.08.0-trunk) ...
Errors were encountered while processing:
 linux-headers-current-rockchip64

 

 

Link to post
Share on other sites

Cool, thanks! dpkg error is due to missing packages, better than dpkg maybe they could have been installed with apt to solve automatically the dependencies.

However nothing to worry about: kernel headers are useful mostly for compiling kernel modules, nothing that I suggest in the current state.

 

Link to post
Share on other sites

I am trying to boot from USB - still no success.

In the serial console I see the U-boot signature:

U-Boot SPL 2020.10-armbian (Apr 23 2021 - 13:30:58 +0000)
Trying to boot from MMC1
Card did not respond to voltage select!
spl: mmc init failed with error: -95
Trying to boot from MMC2
NOTICE:  BL31: v2.2(release):a04808c-dirty
NOTICE:  BL31: Built : 13:30:52, Apr 23 2021
ERROR:   over or zero region, nr=4188256, max=10
NOTICE:  BL31:Rockchip release version: v1.2

 

Seems like old U-boot is still in action. Should I to flash the new U-boot image into TV box? How?

Not flashed by installing u-boot deb package?

 

 

Link to post
Share on other sites

14 minutes ago, lucky62 said:

I am trying to boot from USB - still no success.

In the serial console I see the U-boot signature:


U-Boot SPL 2020.10-armbian (Apr 23 2021 - 13:30:58 +0000)
Trying to boot from MMC1
Card did not respond to voltage select!
spl: mmc init failed with error: -95
Trying to boot from MMC2
NOTICE:  BL31: v2.2(release):a04808c-dirty
NOTICE:  BL31: Built : 13:30:52, Apr 23 2021
ERROR:   over or zero region, nr=4188256, max=10
NOTICE:  BL31:Rockchip release version: v1.2

 

Seems like old U-boot is still in action. Should I to flash the new U-boot image into TV box? How?

Not flashed by installing u-boot deb package?

 

 

Mmh, I need to check this; I flashed a pristine image directly on the sdcard and I got the new U-boot, but maybe the update script coming with the deb package is broken somehow.

 

You can manually expand the deb package with

dpkg-deb -x package_name.deb uboot

then you should be able to find idbloader.img and  u-boot.itb inside the uboot directory tree and flash it on your sdcard with this command:

dd if=idbloader.img of=/dev/mmcblk0 seek=64 conv=sync,fsync
dd if=u-boot.itb of=/dev/mmcblk0 seek=16384 conv=sync,fsync

then reboot to verify if it works.

Then reboot and see if it works. Note that u-Boot

Link to post
Share on other sites

34 minutes ago, jock said:

dd if=idbloader.img of=/dev/mmcblk0 seek=64 conv=sync,fsync

dd if=u-boot.itb of=/dev/mmcblk0 seek=16384 conv=sync,fsync

 

may be this is the problem - I have only mmcblk2...
 

# ls -l /dev/mmc*
brw-rw---- 1 root disk 179,  0 May  3 06:46 /dev/mmcblk2
brw-rw---- 1 root disk 179, 32 May  3 06:46 /dev/mmcblk2boot0
brw-rw---- 1 root disk 179, 64 May  3 06:46 /dev/mmcblk2boot1
brw-rw---- 1 root disk 179,  1 May  3 06:46 /dev/mmcblk2p1
crw------- 1 root root 243,  0 May  3 06:46 /dev/mmcblk2rpmb

 

Also this is probably related (from previously posted U-boot signature):
 

Trying to boot from MMC1
Card did not respond to voltage select!
spl: mmc init failed with error: -95
Trying to boot from MMC2

 

 

Link to post
Share on other sites

8 minutes ago, lucky62 said:

 

may be this is the problem - I have only mmcblk2...
 


# ls -l /dev/mmc*
brw-rw---- 1 root disk 179,  0 May  3 06:46 /dev/mmcblk2
brw-rw---- 1 root disk 179, 32 May  3 06:46 /dev/mmcblk2boot0
brw-rw---- 1 root disk 179, 64 May  3 06:46 /dev/mmcblk2boot1
brw-rw---- 1 root disk 179,  1 May  3 06:46 /dev/mmcblk2p1
crw------- 1 root root 243,  0 May  3 06:46 /dev/mmcblk2rpmb

 

Also this is probably related (from previously posted U-boot signature):
 


Trying to boot from MMC1
Card did not respond to voltage select!
spl: mmc init failed with error: -95
Trying to boot from MMC2

 

 

Ah ok, I got it.

You installed the image onto the eMMC, I thought you were testing it using an sdcard.

That's ok, you can execute the same two commands changing mmcblk0 to mmcblk2.

Usually for the experiments I prefer the sdcard because if the bootloader breaks I'm not forced to follow the maskrom procedure in case of problems; the unbrick may be difficult on some boards like mine, but maybe yours is different.

Link to post
Share on other sites

Already flashed. Now uboot is trying to boot from USB.

I have two USB ports - one is USB 2.0, second USB 3.0. The USB key is detected only in USB 2.0 port.

 

On the USB key I have flashed Ubuntu Focal desktop image. Boot process is dropped to the busybox prompt:
display_output.thumb.jpg.32ee89b4417e2f99c36c84ba3d8f2dcb.jpg

Link to post
Share on other sites

14 hours ago, jock said:

I don't think I got it right... the installation process via rk-config and dd are unknown to me, did you use armbian-config maybe? I actually never tested armbian-config, but what it does is mostly a file copy and if the file copy fails there may be a problem with the internal flash. We noticed that really a lot of eMMCs mounted on these boxes are defective.

The power supply may be defective, usually they output 5 volts, but maybe your box has an input voltage of 12V??

Anyway the Multitool should boot in almost any case and can help you access the internal flash, clear it, or install a fresh image directly onto the eMMC.

The serial output is always a good source of debugging information though.

 

https://imgur.com/a/im5Dn2Z

the voltage is definetely way higher than what is written on the power supply.

In any case , from what I have understood , I should be able to boot into the sd card and even the usb which isn't the case despite trying working and new images.

I will assume the power supply fried my box since no matter how hard I try I can't have any output no matter how hard I try, even the maskrom mode doesn't seem to be an option since no emmc pin is exposed.

Unless doing dd if=/sdcard of=/emmc bricks the box?

 

Link to post
Share on other sites

@Generic_user
I deeply suspect your power supply is defective.Something in the loop voltage control is broken and instead having correct retro-action control it gives you maximum voltage
PLEASE DON'T USE IT ANYMORE  on any other box !!

All these board are 5 volt  and i can guarantee the initial step-down dc/dc converter HARDLY support high voltage for long time period.
Let's say is quite more tha a suspect that you board is fried  .   :(
Cannot  confirm but.... :( :(
If you have some electronic skill you should misure ( tipically on the output ceramic capacitors ) on the various small ic's dc-dc converters voltages of:
3.3 volt
1.8 volts
1.1 volts
And also try touch with a finger the step-down converters , the cpu itself and the ram if they are hot

Link to post
Share on other sites

@lucky62 ahhh... :unsure: I suspect that this other issue is related to the different GPIO pin used on X88 board to drive the USB OTG port.

 

You may try to mount the USB stick on your computer, edit the boot/armbianEnv.txt file and add the line overlays=rk3318-box-led-conf2 and try again to boot from USB. (You may also change the verbosity entry to 7 to get a full dmesg log on the serial)

Link to post
Share on other sites

2 hours ago, fabiobassa said:

@Generic_user
I deeply suspect your power supply is defective.Something in the loop voltage control is broken and instead having correct retro-action control it gives you maximum voltage
PLEASE DON'T USE IT ANYMORE  on any other box !!

All these board are 5 volt  and i can guarantee the initial step-down dc/dc converter HARDLY support high voltage for long time period.
Let's say is quite more tha a suspect that you board is fried  .   :(
Cannot  confirm but.... :( :(
If you have some electronic skill you should misure ( tipically on the output ceramic capacitors ) on the various small ic's dc-dc converters voltages of:
3.3 volt
1.8 volts
1.1 volts
And also try touch with a finger the step-down converters , the cpu itself and the ram if they are hot

As I said previously, using the faulty power supply the box keeps "blinking" but never stays on proving it is not booting properly.

strangely, using usb as a power source worked for few boots, but now the box seems bricked.

Using working 5v 1 A supplies or usb, the leds are really dim and no particular heating issue although no booting or signs of life(no static on the audio output).

Will ask a refund from my seller as it seems a power supply problem (and not me bricking it with an sd card), hopefully I get a replacement or my money back to spend on a more supported rk322X board

IMG_20210502_223814_496.jpg

Link to post
Share on other sites

1A is very small power for these boxes... 2A is minimum I think...

 

On the other side, if your USB adapter will be overloaded for longer time, then also can be damaged...

And question: are you powering your box via USB port?....

Link to post
Share on other sites

3 hours ago, jock said:

@lucky62 ahhh... :unsure: I suspect that this other issue is related to the different GPIO pin used on X88 board to drive the USB OTG port.

 

You may try to mount the USB stick on your computer, edit the boot/armbianEnv.txt file and add the line overlays=rk3318-box-led-conf2 and try again to boot from USB. (You may also change the verbosity entry to 7 to get a full dmesg log on the serial)

 

This was not helpful. The boot stucked at the same point - ALERT! UUID=bla bla bla does not exists.
I checked the USB key and really - the partition UUID was different than in the armbianEnv. I don't know how UUID was changed. Sorry for my mistake.

So I flashed the image to the USB key again an successfully booted from USB... (overlay was not necessary for boot).

Link to post
Share on other sites

16 minutes ago, lucky62 said:

 

This was not helpful. The boot stucked at the same point - ALERT! UUID=bla bla bla does not exists.
I checked the USB key and really - the partition UUID was different than in the armbianEnv. I don't know how UUID was changed. Sorry for my mistake.

So I flashed the image to the USB key again an successfully booted from USB... (overlay was not necessary for boot).

btw is there a proper archive for every functionning armbian image?

I know that images are spread here and there across the forum, but it would much better if every was organized and centralized by name and chip type, like on github or something

Link to post
Share on other sites

1 hour ago, Generic_user said:

btw is there a proper archive for every functionning armbian image?

I know that images are spread here and there across the forum, but it would much better if every was organized and centralized by name and chip type, like on github or something

 

https://www.armbian.com/download/

for other boards you must look around... :-)

Link to post
Share on other sites

2 hours ago, lucky62 said:

 

This was not helpful. The boot stucked at the same point - ALERT! UUID=bla bla bla does not exists.
I checked the USB key and really - the partition UUID was different than in the armbianEnv. I don't know how UUID was changed. Sorry for my mistake.

So I flashed the image to the USB key again an successfully booted from USB... (overlay was not necessary for boot).

Okay, that's much better, thanks for testing!

Link to post
Share on other sites

2 hours ago, Generic_user said:

btw is there a proper archive for every functionning armbian image?

I know that images are spread here and there across the forum, but it would much better if every was organized and centralized by name and chip type, like on github or something

 

Armbian project does not officially support nor maintains tv boxes. Armbian project maintains only supported Single Board Computer (SBC) devices. SBCs have stable hardware (kind-of), and are usually well-documented.

 

Tv boxes are another thing.

In the ideal world of the naked puffy angels chanting melodious high-tone songs, the organization you proposed would be perfect.

In our world full of crap, dirt and oil it does not work at all: every chinese tv box manufacturer buy chips at the lowest price point possible on the market and put all that crap and scrap on these boards. If you read carefully the first post (and I invite you to do it) the very same rk3318 is probably a scrap chip, and eMMC chips are often failing after a while, some because are faulty, some others fail because of crappy soldering (you can ask @fabiobassa how many faulty eMMC chips desoldered from these boards).

 

That's why Armbian does not officially tv boxes: it's a community matter, because keeping the things working with a huge hardware variety is just too difficult and very time consuming.

In a world were everything can fit onto these boards, having one image for each box is unthinkable; I preferred a more elegant solution that allows the user to download a single image with a basic configuration that (hopefully) boots on every board with the same SoC. Once installed, the system can be further configured by the user herself to enable all the features of the board, like higher cpu speed, wifi, bluetooth, eMMC higher speed modes, leds, buttons, etc... etc...

 

You won't find images of mine spread here and there on the forum, usually I publish images just on the first page of this thread and sometimes I prepare some special testing images for someone who has willingness to help the development progress. When everything will be stable enough, I will ask for merging to the main Armbian project, so the images will not be built and published anymore by me, but the Armbian server will build (and certify) them and they will be available in the official download page, but still totally backed and maintained by community efforts.

 

You will find everything you need to get the thing running on the first page of the thread, so read that carefully and, if you're not satisfied, steer away from tv boxes and search for a proper SBC.

Link to post
Share on other sites

  • jock changed the title to CSC Armbian for RK3318/RK3328 TV box boards
 Share

23 23