Sick of trying to make uConsole + Radxa work

Hardware:
-uConsole
-Radxa CM5 16GB/128GB
-Hackergadgets Radxa CM5 Adapter
-Hackergadgets Battery Upgrade Kit
-Hackergadgets USB and Ethernet Extension
-Radxa CM5 IO Board
-SD card

After a very long wait to get the uConsole, I finally have had it in my room as a decorative piece for several weeks.

There are several posts in these forums claiming to have had the combo working with the latest necessary panel drivers and everything else, most of them don’t say anything else at all.

All of them seem to be nudging you into using their pre-compiled images, because no build process works, if ever it is even mentioned.

I guess I should mention I do not use pre-compiled images from anywho’s repository because I don’t know the people that make them and what is in them, and any trustworthy contribution would let you know exactly what’s in them for you to build yourself, which doesn’t happen. Therefore I don’t use them.

At first I tried building the whole image, but found gross issues with Radxa’s bsp tool which kinda don’t belong in this forum. Then I tried more standard methods but the process proved to not work for reasons similar or related to what I detail later on.

Therefore I tried to start with an established reputable image such as the Armbian images for the Radxa CM5 to start inside out, but none of them would even boot, not on the uConsole nor on the IO board.

I then used Radxa’s CM5 IO Desktop Image, which does run on the IO board with everything working.
Surprisingly, unlike armbian images, it runs on the uConsole as well though it can only be interacted with through the ssh and Hackergadet’s Ethernet port.

_________________________________________________________

The “Arch Linux for Radxa CM5 on uConsole” Repository:

This recent guide provides scripts to build and push the Kernel needed to the uConsole through ssh.

I tried following this guide but, as I mentioned, with Radxa’s Debian, instead of Arch.

This meant to fix 2 issues:

  1. For starters, you will not be able to boot any Arch on the Radxa uConsole so that you can ssh to it and start working on it, just as with the Armbian images.
  2. Arch is a massive friction bomb for something that is already hard enough. I understand it for educational purposes and on other not-so-niche devices, or for people who want to say something about themselves, or for other undisclosed reasons. But for newcomers who want to get to work daily on their uConsole as well and have some sanity somewhat throughout, using pacman instead of the more consolidated apt is just asking for another massive wall to climb that you aboslutely don’t need to have.
    Even Rex’s libraries for Hackergadgets antenna upgrades and what not are in apt and not pacman (by the way, they are no longer on apt either, and the source of what it used to be is nowhere to be found as far as I searched).

At any rate; you may follow the guide with a minor adaptation at step 6, using update-initramfs instead of mkinitcpio, because mkinitcpio is Arch-only.

Then get to the Installation part of the guide and find out no “rk3588s-radxa-cm5-uconsole-merged.dtb” file was generated.

README.md says:

‘The kernel build produces rk3588s-radxa-cm5-uconsole-merged.dtb directly in the source tree — it already has the CWU50 panel, AXP20x PMIC, and DSI1 nodes baked in. This is confirmed working.’

I confirmed this not working. I don’t know who it says confirmed it working.

There is no mention of it in the Makefiles that such .dtb would be made. You can even search for any mention of ‘rk3588s-radxa-cm5-uconsole-merged’ in the contents of all the files in the source, it’s just not instructed.

Unless I overlooked something, or something that the guide overlooked too or didn’t mention, obviously.

Keep in mind the build process has nothing to do with Arch vs Debian yet.
What is said in the repo branch that happens just doesn’t happen.

_________________________________________________________

Patch Up Attempt:

I tried then to patch that up with these, overlays. The repository is referenced in this post, mentioning a guide that no longer exists in a ‘b23.tv’ site that is now gone.

I cloned them in the Radxa Image and added them using ‘rsetup’ which the brief guide-ish README.md suggests.

I did not expect this to work since this is an old repository and I did not think it would match the Kernel I previously built from the 0xrushi’s Arch fork of Rex’s repository, although in a previous post the owner mentions to have used dev-null2019’s overlays.

It did not work.

The old dev-null2019 repository, once again, conveniently provides a prebuilt kernel to use along with the overlay, but no process as to how that kernel was made, so I see no point in testing it.
Maybe it works though just as probably all the other precompiles available.

_________________________________________________________

For a DIY open source community the solutions and claims of success seem to be quite reserved.

So after those and several other attempts that I won’t detail —including modifying the .dts files, the Makefile, etc.— all I have is a Radxa uConsole I can ssh to and the exact same image provided by Radxa. No I can’t use it over HDMI.
I also haven’t tried reinventing the wheel yet.

So basically this is a call for those people who have had success to come out and just tell me what magic needs to be performed to build a working kernel, because they sure make it sound very straightforward. Otherwise I think I give up for now.

I’d like to not have to buy a Raspberry though, doesn’t feel like a solution and may even come with new horrors trying to do things from source.

Thanks.

1 Like

Have you tried here?

[GitHub - ResistanceIsUseless/uconsole-radaxa-cm5: Automated GitHub Actions pipeline for building custom Radxa CM5 images for the ClockworkPi uConsole · GitHub]

1 Like

I liked that repository.

It provides great scripts that make the process a lot easier, it is also very well written, open and consistent, which the repositories it builds itself on don’t do at all.

Though I did still have to modify the image building script since it makes a few easily overlooked mistakes, given that Radxa’s root directory is a bit of a different convention. The author didn’t adjust for Radxa’s Debian probably cause he gives you the option to build other distributions.

Anyway I was able to build a Debian image still through the repository’s method (did the ‘debian 1’ option), other than the bash fixes it was very pleasant, but the resulting image is mostly as good as Radxa’s without the custom kernel.

I would’ve been happy to meticulously document the menial fixes if the method had worked.

I still only have a uconsole that boots, is responsive through SSH, but not much else.

LCD does not even light up. Basically nothing, or less, that I couldn’t do with the Radxa on the IO board works.

The only important difference is that the HDMI works, I get a command-line interface, and if I install GNOME I get the GNOME interface, but can’t type with the uConsole’s keyboard or any other connected keyboard, or use peripherals through USB. I think it’s basically the same thing I was able to build and try before, but much easier to do.
So so far the uconsole is almost as good as a cheap Radxa CM5 IO Board.

Prompts were giving me firmware warnings when doing ‘apt upgrade’, so I downloaded all of them. Still, nothing after reboot.

I’m still waiting to learn what saint other people (like @James_Kent, @randomlinuxuser, @hzykiss) prayed to to get theirs working so casually and gleefully, particularly since @Rex, whom all other repositories base their kernel on, doesn’t have a working image either.

So far I’ve found that building a working kernel for the Radxa uConsole is a myth. Again, maybe some of the pre-compiled kernels work, who knows, but I really don’t care about those, I can’t even tell what they are.

I don’t understand why people supposedly posting working kernels or anecdotes of success don’t talk about how they got it, I guess they just want to get congratulated, and if they do they even present methods as documentation for it that don’t remotely yield a kernel that isn’t the same as what you can already download from Radxa in an image; or not even that.

I do have a working image for the radxa CM5. It just doesn’t work with the new screen, and I don’t have a radxa CM5 or the new screen to test getting the updated driver working.
My radxa image the USB and keyboard will work, just the LCD will not display a good image.
You could install it and try and load the updated driver from my RPi kernel with dkms on my radxa image.

Sorry I thought it would imply I meant a working Kernel. By “working” I meant a kernel where ports, display and keyboard would work.

I’m unable to build a kernel from any source that gets me even an image where only the LCD doesn’t work or at least displays gibberish. Everything I’ve built form the latest sources would be a completely bricked uConsole if it wasn’t for ssh and Hackergadget’s Ethernet extension.

Gratefully: you can’t test because you don’t have the Radxa, but how can I if I only have either outdated sources or pre-baked images, then further patched over and retouched with dkms?

I don’t understand how others have figured it out then with the new display, what did they even build it on? (genuine question). I don’t feel I bought a hackable product it feels like having waited and paid for something just downright unfinished like the Librem Phones scam, because not having a broken uconsole doesn’t feel like an option at all.

Does Clockwork not take the time it takes to ship a uConsole to finish the product? I can’t even find the standalone drivers from ClockworkPi’s itself! It’s their hardware, where are they? There’s nothing in their repos other than outdated firmware for the keyboard. Where did the drivers ever come from to end up in community repos?

radxa is not officially supported

1 Like

The only CMs officially supported by the uConsole are the R-01, A-06, and the RPi CM4. Those kernel patches are in their GitHub. The RPi CM5 and Radxa CM5 were made compatible by the community.
Using an existing image even without a good panel driver will make it easier to get a newer kernel compiled with an updated panel driver. DKMS is a good start to get the system fully functioning, then you can compile a full kernel off the kernel config on the working system.

1 Like

Do they support themselves?

You guys told him:

So I’d have the trademark “new panel issues” even if I bought everything from Clockwork, let alone in my case nothing else works either. Where are the latest panel drivers coming from if not from Clockwork? How are they ending up in community repos?

all due respect, which is plenty, I think a good start would be to just release the source of your images that you suggested to patch up with DKMS.

the current drivers has been worked on by me and two other community members. the source for those drivers have been up on github here.

i think clockwork just released a new image for the a-06 not to long ago.
the clockwork image for the cm4 has also been updated for the new panel.

Ok so did Clockwork did or didn’t make the stuff for their own panels?

Do you know where the source for those is hidden?

before they came out with the new panel they provided the 2 lines of code to identify the new panel and initialize it.
clockwork only gives patches and instructions to compile the kernel and add it to an existing image. not how to compile a full image. here’s clockwork’s github for the uconsole.

any chance we could get that? meaning what you’ve done for the Radxa.

there is not source for that. i got a radxa cm5 to test. then i just compiled the kernel for the radxa cm5 and chrooted into the stock radxa cm5 image and installed it. repackaged the image, then burned a copy to sd to test. it worked, i didn’t like the limitations of the radxa cm5. so i just released that image and got rid of my radxa cm5. i didn’t do a full ground up image for the radxa like i do the pis.

I did review that repository and even tried to implement it, at least for the keyboard since it’s the only stuff explicitly mentioned. It’s still so abstracted or just downright no mention of their panel drivers.

the patches for each cm they support is here.

they built their newer images off my kernel thats why their patches are old

It’s like the chicken and the egg.

Clockworkpi released an initial image and after that it’s on the community, they provide basically no support, only reason they’ve made new uconsole images is because they were forced to by the modified screens

2 Likes