3.5 inch GPIO display - Black Screen

ls -al /usr/share/X11/xorg.conf.d
total 13
drwxr-xr-x 2 root root 1024 Jan 12 19:16 .
drwxr-xr-x 1 root root 1024 Jan 12 19:16 …
-rw-r–r-- 1 root root 92 Feb 7 2019 10-amdgpu.conf
-rw-r–r-- 1 root root 1350 Apr 19 2021 10-quirks.conf
-rw-r–r-- 1 root root 92 Apr 6 2019 10-radeon.conf
-rw-r–r-- 1 root root 1429 Mar 31 2019 40-libinput.conf
-rw-r–r-- 1 root root 2747 Jun 26 2017 70-wacom.conf

My post from april '21 was for Volumio 2.

For Volumio 3 you additionally need to download a file named “99-fbturbo.conf”:

sudo wget https://raw.githubusercontent.com/goodtft/LCD-show/master/usr/99-fbturbo.conf -P /usr/share/X11/xorg.conf.d

Then open “/usr/share/X11/xorg.conf.d/99-fbturbo.conf” with

sudo nano /usr/share/X11/xorg.conf.d/99-fbturbo.conf

and change

Driver "fbturbo"

to

Driver "fbdev"

Save the file hitting Ctrl-x, y and Enter.

Disable and re-enable the Touch Display plugin. Maybe reboot Volumio.

OMG :blush: it’s working!!!

Screen is upside down :upside_down_face:
what value should I use? dtoverlay=tft35a:rotate=??

:grin:

Probably “180”:

dtoverlay=tft35a:rotate=180

Trial and error… :wink: dtoverlay=tft35a:rotate=270
Looks like touchscreen calibration isn’t wright, how to fix it so it works in landscape mode?

So the display’s orientattion is correct now, but touch is not aligned to the display? Or do touch events happen where you didn’t touch the screen?

For easier checking you could enable the mouse pointer to be shown on the config page of the Touch Display plugin.

:+1:
moving left pointer goes up
moving right pointer goes down
moving up pointer goes right
moving down pointer goes left

Is this configured in /etc/X11/xorg.conf.d/99-calibration.conf?

Axes seem to be swapped. Let’s try the following (first):

Create a file “/etc/X11/xorg.conf.d/99-swapxy.conf” with

sudo nano /etc/X11/xorg.conf.d/99-swapxy.conf

and fill it with

Section "InputClass"
        Identifier "SwapXY"
        Option "TransformationMatrix" "0 1 0 1 0 0 0 0 1"
        MatchIsTouchscreen "on"
EndSection

Save the file and restart the plugin or maybe reboot Volumio.

Nearly there, left en right are OK, up and down mixed up

Swapping axes can be done in “/etc/X11/xorg.conf.d/99-calibration.conf” if evdev is installed. From what I have seen from your Xorg.0.log this is currently not the case. If my first suggestion shouldn’t work this would be the next option.

Dr. Google is your best friend…
Section “InputClass”
Identifier “SwapXY”
Option “TransformationMatrix” “0 1 0 -1 0 1 0 0 1”
MatchIsTouchscreen “on”
EndSection

Ok, that ("0 1 0 -1 0 1 0 0 1”) would be the transformation matrix for a touch rotation by 90 deg. If that works for you, you can delete the file “99-swapxy.conf” and simply set the rotation value on the config page of the plugin to 90 deg.

New user, wasn’t allowed to send a replay in 20 hours :laughing:

For now I leave it like this :wink:

Thanks for your support!!! Hope others can use it…

Hi @gvolt

I’m trying to get 3.5 inch GPIO display to work with RPi4 with Volumio 3 but no success. Appreciate some pointers and guidance. I do apologise in advance if it’s not appropriate to reply via this thread.

My display is this
b0c6e95c914fae33dafae6661f391fb9f43a5c5f_2_666x500

I have followed a few forum thread
https://community.volumio.com/t/volumio-with-3-5-tft-touch-screen-gpio-rpi-3b/11265/183
https://community.volumio.com/t/resolved-buster-3-beta-3-5-inch-touchscreen-problem-error/47527
and of course this one too

Thank you

Regards
Kian Lee

Please post the results of

ls -al /usr/share/X11/xorg.conf.d

cat /var/log/Xorg.0.log

cat /boot/config.txt

cat /boot/userconfig.txt

Thank you for your response. :slight_smile:

volumio@volumio:~$ ls -al /usr/share/X11/xorg.conf.d

total 14

drwxr-xr-x 2 root root 1024 Jan 16 08:01 .

drwxr-xr-x 1 root root 1024 Jan 16 07:02

-rw-r–r-- 1 root root 92 Feb 7 2019 10-amdgpu.conf

-rw-r–r-- 1 root root 1350 Apr 19 2021 10-quirks.conf

-rw-r–r-- 1 root root 92 Apr 6 2019 10-radeon.conf

-rw-r–r-- 1 root root 1429 Mar 31 2019 40-libinput.conf

-rw-r–r-- 1 root root 2747 Jun 26 2017 70-wacom.conf

-rw-r–r-- 1 root root 609 Jan 16 07:45 99-fbturbo.conf

volumio@volumio:~$ cat /var/log/Xorg.0.log

cat: /var/log/Xorg.0.log: No such file or directory

volumio@volumio:~$ cat /boot/config.txt

initramfs volumio.initrd

gpu_mem=32

max_usb_current=1

dtparam=audio=on

audio_pwm_mode=2

dtparam=i2c_arm=on

disable_splash=1

hdmi_force_hotplug=1

force_eeprom_read=0

dtoverlay=tft35a:rotate=270

include userconfig.txt

volumio@volumio:~$ cat /boot/userconfig.txt

Add your custom config.txt options to this file, which will be preserved during updates

dtparam=spi=on

dtoverlay=tft35a

You should remove the dtoverlay setting from “/boot/config.txt” so it is present only in “/boot/userconfig.txt”.

But that is not the reason for your problem: I guess during the installation of the Touch Display plugin not all required software packages have been downloaded/installed properly.

Did you wait several minutes after the first boot so the data partition could fully expand? On a system where the data partition had not been expended there is typically not enough space for all the software the Touch Display plugin needs.

If you are sure your system is not lacking disk space, I recommend to uninstall the plugin.

Then enable “Plugins Test Mode” on //volumio.local/dev and re-install beta version 3.3.3 of the plugin.

This version of the plugin aborts (and rolls back) the plugin’s installation process if downloading/installing of one of the required software packages (xorg, chromium etc.) fails. Unlike version 3.3.1, now the plugin would not even appear in the list of installed plugins if a software download should have failed.

So, if you do not find the plugin in the list of installed plugins after the installation process has finished, it is because an error occurred during its installation. Maybe check your internet connection (especially for DNS problems) and try to install the plugin again.

I did a fresh install of volumio3, waited as advised and enabled plugin test mode in volumio.local/dev.
Installed touch display plugin 3.3.3, once completed it showed in installed plugin as touch display 3.3.1.
Should I proceed installing the display driver?

@gvolt
Got the display working with your advise and instructions. Many thanks :slight_smile:

Thank you it works for me too with volumio 3.198
My LCD is in landscape with hdmi port at the bottom.

What I’ve done :

Installed “Touch Display Plugin” (I tried to install 3.3.3 but it seems that 3.3.1 is finally installed :face_with_raised_eyebrow: ).
(Activating temporarily “show mouse pointer” in this plugin is useful to calibrate your touch screen).

	wget https://github.com/goodtft/LCD-show/raw/master/usr/tft35a-overlay.dtb
	sudo cp tft35a-overlay.dtb /boot/overlays/tft35a.dtbo
	nano /boot/userconfig.txt

	#==== Put this in this file : ====
		dtparam=spi=on
		dtoverlay=tft35a:rotate=90
	#===============================
	
	wget https://raw.githubusercontent.com/goodtft/LCD-show/master/usr/99-calibration.conf-35-0
	sudo cp 99-calibration.conf-35-0 /etc/X11/xorg.conf.d/99-calibration.conf
	sudo wget https://raw.githubusercontent.com/goodtft/LCD-show/master/usr/99-fbturbo.conf -P /usr/share/X11/xorg.conf.d
	sudo nano /usr/share/X11/xorg.conf.d/99-fbturbo.conf

	#and change
		Driver "fbturbo"
	#to
		Driver "fbdev"
	
	# To rotate de touch input (landscape with hdmi at the bottom)
	sudo nano /etc/X11/xorg.conf.d/99-swapxy.conf

	#==== Put this in this file : ====

		Section "InputClass"
			Identifier "SwapXY"
			Option "TransformationMatrix" "0 -1 1 1 0 0 0 0 1"
			MatchIsTouchscreen "on"
		EndSection
	#===============================

Installing “Now Playing” and in settings click on “Volumio Kiosk” offers a better view for a little 3.5 inch LCD !