ROCK 4 SE rbuild image not working and adding custom Splash screen

We’ve generated an image for Rock 4 SE using rbuild, but unfortunately, it fails to boot entirely. Our goal is to implement a custom splash screen, akin to the Android image that displays a loading screen a few seconds (2-3) post-boot. The Rock 4 SE is equipped with a DSI display. Here’s our progress so far:

  1. The image produced by rbuild doesn’t initiate the boot process. Upon powering up the computer, there’s a brief screen flash, the green LED lights up, but thereafter, no further action occurs. This holds true even when connecting an external screen to the HDMI port. Additionally, the blue activity LED remains inactive. We’ve tested this on various SD cards and image burners, with consistent behavior.
  2. The stock Debian desktop and Debian server images function correctly, but only when connected via HDMI. This is acceptable since, in my recollection, configuring a custom image based on stock Debian required enabling the SPI overlay in the rsetup app for DSI LCD functionality. The blue LED blinks. In both stock images, the screen remains blank for about 15 seconds before the system becomes operational.
  3. The Android image seamlessly operates on DSI by default, showcasing a loading screen a few seconds (2-3) after boot – precisely what we aim to achieve.

We seek your guidance to replicate the Android image’s behavior, allowing us to display our custom logo on the splash screen. Any assistance you can provide would be greatly appreciated.

The current image version doesn’t show the splash screen,it needs to modify some configuration. @RadxaYuntian please help to give some advice

@RadxaYuntian can you please help here? Also, can you tell me why the image built with rbuild does not boot at all with Rock 4 SE?

I currently have no solution for the custom splash screen. As for the image not booting, please make sure you are building Debian 11 KDE variant, as the other variants are currently unsupported.

@RadxaYuntian Yes I have built KDE test variant but it does not boot at all. What to do? Also, when can we expect to have a solution for a custom splash screen?

Can you try add -T to rbuild to build against the test repo. We have made some changes to the package dependency that is not released in production channel yet.

I cannot make a promise on the timeline here. We provide best-effort support on the forum but without a business contract there is no guarantee for feature delivery. It is on my to-do though.

@RadxaYuntian Yes I have built with -T flag but it still did not work.

Regarding business contract, we are using your Rock 4SE boards for one of our product. What type of business contract you need?

I’ll check this tomorrow.

I’m speaking in a general sense. After all we are a hardware company, and the software division is not profitable by itself, but playing a supporting role to the hardware, so most of our development focus are tied to the hardware division, which means the hardware side could (and would) interrupt us to refocus on other issues, limiting my ability to give you an guarantee for the timeline.

If you are already doing commercial orders with us, then just mention this to or, so it will get properly assigned a priority to it.

I just did a rebuild with ROCK 4C+ and it worked fine. Please try with:

./rbuild rock-4se kde -r -T
./rbuild write-image rock-4se_debian_bullseye-test_kde.img /dev/sdX

to build and flash the image to a microSD and check if it can boot.

If you are still having issue please send the build log and system boot log.

@RadxaYuntian any update splash screen?

Regarding boot splashscreen - U-Boot supports the CONFIG_SPLASH_SCREEN option, which allows setting a splashimage via:
setnev splashimage [image]

It seems that the topic would be quite trivial, although I suspect, that the default U-Boot compilation setup does not have that enabled, am I right?
If this is the right configuration file for Rock 4SE, then the flag is not defined there:

@RadxaYuntian Is there a reason for that that you know of?
Would enabling the flag and recompiling U-Boot break something?

First off, you are referencing the upstream U-Boot. Our own U-Boot fork for ROCK 4 is this one.

Secondly, the last time we tested graphical U-Boot on rk3399 the result was disappointing, so we disabled it.

Finally, we currently does not have a boot splash in U-Boot so there is no point to enable it. We also prefer the graphical U-Boot logs (when available) to reduce the support burden, since not all users have a serial cable.

I think what Bilal wants is the Plymouth. I’ll see if I can assign an engineer to look at this.

You can test our new plymouth theme (boot splash) by following these steps:

  1. Run sudo apt update -y && sudo apt install plymouth
  2. curl -o radxa-plymouth-theme_0.1.0_all.deb
  3. sudo dpkg -i ./radxa-plymouth-theme_0.1.0_all.deb
  4. sudo plymouth-set-default-theme -R radxa
  5. Edit /etc/kernel/cmdline (using nano or an editor of your choice) and add console=tty1 splash to the end with a space before
  6. sudo u-boot-update
  7. Reboot!

Actually, video configurations are not enabled for u-boot that’s why plymouth will not work. Enabling video config in u-boot for rock-4se breaks something.

Plymouth is post u-boot, u-boot doesn’t play a part in if it works or not. I on BredOS have used plymouth before

EDIT: that was with a rock 5b

@rippanda12 our issue is that we are using a DSI display, the screen remains blank for about 15 seconds before the system becomes operational with stock Debian desktop and Debian server images. We want to display something on screen as soon as it starts to boot so that it shows user device is loading.

Then id say somehow make debian init DSI screen in initramfs maybe @RadxaYuntian will know

@rippanda12 does that mean DSI display video drivers are not configured in u-boot for rock-4se?

no i don’t think so, I work on the system after u-boot so thats kinda out of my expertise