ubuntu-rockchip icon indicating copy to clipboard operation
ubuntu-rockchip copied to clipboard

Radxa Rock 5A: touch not working on Radxa Display 8 HD

Open infinite-dark opened this issue 11 months ago • 12 comments

Just like in the title. I activated the overlay and the display itself works completely fine. There seems to be no touch functionality though.

Is there perhaps a configuration step I might be missing?

infinite-dark avatar Feb 29 '24 13:02 infinite-dark

The touchscreen driver may be missing, do you happen to have a link to the exact display being used? I need to look up the driver, it may be a simple fix.

Joshua-Riek avatar Feb 29 '24 14:02 Joshua-Riek

The touchscreen driver may be missing, do you happen to have a link to the exact display being used? I need to look up the driver, it may be a simple fix.

Sure! Here's the product page: https://radxa.com/products/accessories/display-8hd And the docs: https://docs.radxa.com/en/accessories/lcd-8-hd/lcd-8-hd-product

infinite-dark avatar Feb 29 '24 14:02 infinite-dark

Hmm, i see the driver TOUCHSCREEN_GT9XX is enabled and the commits match radxa's kernel tree. The only commit missing is https://github.com/radxa/kernel/commit/010291e9a3da403dbb0435de62f06aebaf4930d0, but id imagine it should still work.

Can you open a terminal and post the output of dmesg | grep -i goodix and dmesg | grep -i gt9xx?

Joshua-Riek avatar Feb 29 '24 14:02 Joshua-Riek

dmesg | grep -i goodix [ 10.104169] Error: Driver 'Goodix-TS' is already registered, aborting...

dmesg | grep -i gt9xx

Returns nothing.

That's all the output I got.

infinite-dark avatar Feb 29 '24 15:02 infinite-dark

Just a small, quick comment. The same thing happens on the 5B.

infinite-dark avatar Mar 13 '24 07:03 infinite-dark

We are facing also same issue. Touch functionality is not working but the display is working as normal display. Is there any way that we can make 8HD Touchscreen work with this image. The touch functionality is working with radxa official images but not this image. Please help

kalyanikasam avatar Mar 22 '24 08:03 kalyanikasam

I'm currently fully focused on the 6.1 kernel and ubuntu 24.04, I do not currently have time to address this problem. But id compare GT9XX drivers between radxa's kernel and my own.

Joshua-Riek avatar Mar 22 '24 08:03 Joshua-Riek

That's the curse of doing a good job. People beg for more :v

Just out of curiosity - do you work on your images on your own? IMO, companies like Radxa or Orange Pi should just drop their own development and support your efforts instead...

There's so much stuff that you implement and they don't that it's crazy.

infinite-dark avatar Mar 22 '24 09:03 infinite-dark

Yeah, it's just me. I work a full-time job and do this in my free time, but this project takes up most of my free time as you can imagine lol. Anyway I don't mind, it helps me grow as a developer and find new opportunities.

Joshua-Riek avatar Mar 22 '24 09:03 Joshua-Riek

Thank you Joshua for your response, i understand that you are quite busy and highly appreciate your contribution. JR Ubuntu image resolved lots of issues which i was facing with official radxa images. I was researching on my own to understand the issue, as i am new to this environment seeking help.

kalyanikasam avatar Mar 22 '24 11:03 kalyanikasam

I found a reading from goodix driver maintainers which says some newer ACPI/x86 devices are not listed as GPIO resources and there is only one Gpioint resource and _Ps0 is responsible for power management and the corresponding IRQ pin is set as output mode so there should be a reset sequence from ACPI which can put the pin in input mode. Detailed explanation can be found here https://www.spinics.net/lists/linux-input/msg87797.html, hope this works.

kalyanikasam avatar Mar 27 '24 03:03 kalyanikasam

Issue exists as well on 5A and Radxa Display 10 FHD. I have requested assistance from the Radxa Discord as the only way I got the display working is via the Arch DTBO from a 5.10 radxa BSP kernel. If I used the included DTBO from 24.04 the system boots into maintenance mode. Considering Joshua has other priorities I won't create an issue / bug here until I rule out other things.

MyVizDrake avatar May 13 '24 04:05 MyVizDrake

Do I have to do anything specific to get the Radxa touch displays to even power on with the Ubuntu images? I am using the latest 24.04 image. I've tried it with the older 22.04 images as well, to no avail.

The Radxa forum post about this says to "add dtoverlay=rock-5b-radxa-display-10fhd to config.txt" (For the Radxa Display 10 FHD, which is what I have). But Joshua's image doesn't seem to have a /boot/config.txt. Is there some equivalent config to enable this on Josh's Ubuntu images?

I'm kind of lost with this one.

handledexception avatar Jun 02 '24 03:06 handledexception

I just ported the drivers, the 8HD display works but i need someone to test the 10HD panel out.

Beta images with display support: https://github.com/Joshua-Riek/ubuntu-rockchip/actions/runs/9332933194 How to apply a device tree overlay: https://github.com/Joshua-Riek/ubuntu-rockchip/wiki/Ubuntu-22.04-LTS#using-a-device-tree-overlay

Joshua-Riek avatar Jun 02 '24 03:06 Joshua-Riek

Thank you, Josh! I will test out the 10HD panel post haste!

handledexception avatar Jun 02 '24 03:06 handledexception

If it works I can merge the code into the kernel and push an update.

Joshua-Riek avatar Jun 02 '24 03:06 Joshua-Riek

But how do I apply a device tree overlay for "rock-5b-radxa-display-10hd" specifically? I did read that wiki page for instructions on applying a Device Tree Overlay in your images but it seems like the syntax is different, and the example you gave is looking for .dtbo files. Not sure how the Radxa-official instructions map on here.

handledexception avatar Jun 02 '24 03:06 handledexception

I dont follow the official radxa instructions since this is a diffrent os.

  1. Open the file /etc/default/u-boot
  2. Add the text U_BOOT_FDT_OVERLAYS="device-tree/rockchip/overlay/rock-5b-radxa-display-10hd.dtbo"
  3. Enter the command sudo u-boot-update

You can then confirm the overlay by looking in /boot/extlinux/extlinux.conf, for example on my system i have:

ubuntu@ubuntu-desktop:~$ cat /boot/extlinux/extlinux.conf
## /boot/extlinux/extlinux.conf
##
## IMPORTANT WARNING
##
## The configuration of this file is generated automatically.
## Do not edit this file manually, use: u-boot-update

default l0
menu title U-Boot menu
prompt 1
timeout 20


label l0
	menu label Ubuntu 22.04.4 LTS 5.10.0-1005-rockchip
	linux /boot/vmlinuz-5.10.0-1005-rockchip
	initrd /boot/initrd.img-5.10.0-1005-rockchip
	fdtdir /lib/firmware/5.10.0-1005-rockchip/device-tree/
	fdtoverlays  /lib/firmware/5.10.0-1005-rockchip/device-tree/rockchip/overlay/rock-5b-radxa-display-8hd.dtbo
	append root=UUID=e417fb23-0018-4867-bb99-26651def195d rootwait rw console=ttyS2,1500000 console=tty1 cgroup_enable=cpuset cgroup_memory=1 irqchip.gicv3_pseudo_nmi=0 cgroup_enable=memory quiet splash plymouth.ignore-serial-consoles

label l0r
	menu label Ubuntu 22.04.4 LTS 5.10.0-1005-rockchip (rescue target)
	linux /boot/vmlinuz-5.10.0-1005-rockchip
	initrd /boot/initrd.img-5.10.0-1005-rockchip
	fdtdir /lib/firmware/5.10.0-1005-rockchip/device-tree/
	append root=UUID=e417fb23-0018-4867-bb99-26651def195d rootwait rw console=ttyS2,1500000 console=tty1 cgroup_enable=cpuset cgroup_memory=1 irqchip.gicv3_pseudo_nmi=0 cgroup_enable=memory splash plymouth.ignore-serial-consoles single

Joshua-Riek avatar Jun 02 '24 04:06 Joshua-Riek

Thank you so much for the precise instructions. I am downloading the beta image now and will let everyone know how it goes with my Display 10 HD.

handledexception avatar Jun 02 '24 04:06 handledexception

So the Display 10 HD does power on now after booting the beta image that Joshua mentioned above. I have power and backlight now, as well as some colored lines across the screen. However I'm not getting a normal image. I need to check my ribbon cables and see if its a physical connection issue.

Also, I no longer get video out from the HDMI like I was before. Not sure if that is expected or not.

handledexception avatar Jun 02 '24 05:06 handledexception

Which Ubuntu version? Ubuntu 24.04 and 22.04 use different display drivers for the 10 HD, also does touch screen work?

Joshua-Riek avatar Jun 02 '24 05:06 Joshua-Riek

Which Ubuntu version? Ubuntu 24.04 and 22.04 use different display drivers for the 10 HD, also does touch screen work?

I was using ubuntu-24.04-preinstalled-desktop-arm64-rock-5b. I can try 22.04. I don't know if touch worked because all I could see was glitchy colored lines on the screen, no Ubuntu desktop image. It didn't seem like the display responded to touch at all, but its hard to say for sure without a desktop image on screen.

handledexception avatar Jun 02 '24 05:06 handledexception

Hmm can you try 24.04?

Joshua-Riek avatar Jun 02 '24 05:06 Joshua-Riek

Hmm can you try 24.04?

Sorry, I meant to say I tried 24.04. I will try 22.04 Desktop next.

Also, I tried both of my MIPI ribbon cables that came with the display, and the result on 24.04 was the same with both, a bunch of glitchy colored horizontal lines across the display. I'll try to upload a photo.

handledexception avatar Jun 02 '24 05:06 handledexception

Ughhh this is going to be a lot of back and fourth then, are you 100% sure its the 10HD panel?

From my understanding the 10HD panel was able to display a picture before I made any driver changes. The only problem with it was the touch screen.

Joshua-Riek avatar Jun 02 '24 05:06 Joshua-Riek

So I changed the device overlay to rock-5b-radxa-display-10hd.dtbo on Ubuntu 24.04 and now I have a good image on the display. I didn't realize that there were separate models called "10 HD" and "10 FHD". My display is the 10 FHD model.

It does not appear that touch is working, though.

Also it seems that my USB keyboard and mouse no longer work either. I tried every USB port but it seems that they are not getting power.

EDIT: I power cycled again and now my USB keyb/mouse is working again. I think the Rock5B had hung after booting to the login screen, previously

handledexception avatar Jun 02 '24 05:06 handledexception

Can you please put the output of dmesg into a text file and attach it to github?

Joshua-Riek avatar Jun 02 '24 06:06 Joshua-Riek

Also the touchscreen driver is named focaltech-ts would you be able to try and open a terminal and enter sudo modprobe focaltech-ts? Maybe manually loading the driver will work.

Joshua-Riek avatar Jun 02 '24 06:06 Joshua-Riek

dmesg-display-10fhd.txt

Here is my dmesg log after booting up the Rock5B, and then running sudo modprobe focaltech-ts.

Touch is still not working.

However, the display part of the "Display 10 FHD" is working beautifully, with full 1200x1920 @ 60Hz video mode operational, on the Ubuntu 24.04 Desktop beta image: ubuntu-24.04-preinstalled-desktop-arm64-rock-5b

handledexception avatar Jun 02 '24 06:06 handledexception

I cant download the log-file, it looks broken, can you upload it to pastebin?

Joshua-Riek avatar Jun 02 '24 06:06 Joshua-Riek