Volumio with 3.5" TFT Touch Screen (GPIO) RPi 3B+

I have done the usggested modification, but I have still no luck with my touchscreen:

volumio@chaine:~$ cat /var/log/Xorg.0.log
[    16.528]
X.Org X Server 1.18.4
Release Date: 2016-07-19
[    16.529] X Protocol Version 11, Revision 0
[    16.529] Build Operating System: Linux 4.4.26-v7+ armv7l Raspbian
[    16.529] Current Operating System: Linux chaine 4.19.118-v7+ #1311 SMP Mon Apr 27 14:21:24 BST 2020 armv7l
[    16.529] Kernel command line: coherent_pool=1M 8250.nr_uarts=0 bcm2708_fb.fbwidth=640 bcm2708_fb.fbheight=480 bcm2708_fb.fbswap=1 vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000  plymouth.ignore-serial-consoles dwc_otg.fiq_enable=1 dwc_otg.fiq_fsm_enable=1 dwc_otg.fiq_fsm_mask=0xF dwc_otg.nak_holdoff=1 console=ttyS0,115200 kgdboc=ttyS0,115200 console=tty1 imgpart=/dev/mmcblk0p2 imgfile=/volumio_current.sqsh elevator=noop rootwait bootdelay=5 logo.nologo vt.global_cursor_default=0 loglevel=0 snd-bcm2835.enable_compat_alsa=1 snd_bcm2835.enable_headphones=1
[    16.529] Build Date: 11 November 2016  11:59:59AM
[    16.529] xorg-server 2:1.18.4-2+rpi1 (https://www.debian.org/support)
[    16.529] Current version of pixman: 0.33.3
[    16.529] 	Before reporting problems, check http://wiki.x.org
	to make sure that you have the latest version.
[    16.529] Markers: (--) probed, (**) from config file, (==) default setting,
	(++) from command line, (!!) notice, (II) informational,
	(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[    16.529] (==) Log file: "/var/log/Xorg.0.log", Time: Sun Nov 28 17:58:23 2021
[    16.543] (==) Using config directory: "/etc/X11/xorg.conf.d"
[    16.543] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[    16.578] (==) No Layout section.  Using the first Screen section.
[    16.578] (==) No screen section available. Using defaults.
[    16.578] (**) |-->Screen "Default Screen Section" (0)
[    16.578] (**) |   |-->Monitor "<default monitor>"
[    16.586] (==) No device specified for screen "Default Screen Section".
	Using the first device section listed.
[    16.586] (**) |   |-->Device "Allwinner A10/A13/A20 FBDEV"
[    16.586] (==) No monitor specified for screen "Default Screen Section".
	Using a default monitor configuration.
[    16.586] (==) Automatically adding devices
[    16.586] (==) Automatically enabling devices
[    16.586] (==) Automatically adding GPU devices
[    16.593] (==) Max clients allowed: 256, resource mask: 0x1fffff
[    16.635] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
[    16.635] 	Entry deleted from font path.
[    16.645] (==) FontPath set to:
	/usr/share/fonts/X11/misc,
	/usr/share/fonts/X11/100dpi/:unscaled,
	/usr/share/fonts/X11/75dpi/:unscaled,
	/usr/share/fonts/X11/Type1,
	/usr/share/fonts/X11/100dpi,
	/usr/share/fonts/X11/75dpi,
	built-ins
[    16.645] (==) ModulePath set to "/usr/lib/xorg/modules"
[    16.645] (II) The server relies on udev to provide the list of input devices.
	If no devices become available, reconfigure udev or disable AutoAddDevices.
[    16.645] (II) Loader magic: 0x654f20
[    16.645] (II) Module ABI versions:
[    16.645] 	X.Org ANSI C Emulation: 0.4
[    16.645] 	X.Org Video Driver: 20.0
[    16.645] 	X.Org XInput driver : 22.1
[    16.645] 	X.Org Server Extension : 9.0
[    16.648] (--) using VT number 2

[    16.648] (II) systemd-logind: logind integration requires -keeptty and -keeptty was not provided, disabling logind integration
[    16.648] (II) no primary bus or device found
[    16.649] (II) LoadModule: "glx"
[    16.658] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[    16.803] (II) Module glx: vendor="X.Org Foundation"
[    16.803] 	compiled for 1.18.4, module version = 1.0.0
[    16.803] 	ABI class: X.Org Server Extension, version 9.0
[    16.803] (==) AIGLX enabled
[    16.803] (II) LoadModule: "fbturbo"
[    16.804] (II) Loading /usr/lib/xorg/modules/drivers/fbturbo_drv.so
[    16.813] (II) Module fbturbo: vendor="X.Org Foundation"
[    16.813] 	compiled for 1.18.4, module version = 0.5.1
[    16.813] 	Module class: X.Org Video Driver
[    16.813] 	ABI class: X.Org Video Driver, version 20.0
[    16.813] (II) FBTURBO: driver for framebuffer: fbturbo
[    16.816] (WW) Falling back to old probe method for fbturbo
[    16.816] (II) Loading sub module "fbdevhw"
[    16.816] (II) LoadModule: "fbdevhw"
[    16.817] (II) Loading /usr/lib/xorg/modules/libfbdevhw.so
[    16.823] (II) Module fbdevhw: vendor="X.Org Foundation"
[    16.823] 	compiled for 1.18.4, module version = 0.0.2
[    16.823] 	ABI class: X.Org Video Driver, version 20.0
[    16.823] (II) FBTURBO(0): using /dev/fb1
[    16.823] (WW) VGA arbiter: cannot open kernel arbiter, no multi-card support
[    16.823] (II) FBTURBO(0): Creating default Display subsection in Screen section
	"Default Screen Section" for depth/fbbpp 16/16
[    16.823] (==) FBTURBO(0): Depth 16, (==) framebuffer bpp 16
[    16.823] (==) FBTURBO(0): RGB weight 565
[    16.823] (==) FBTURBO(0): Default visual is TrueColor
[    16.823] (==) FBTURBO(0): Using gamma correction (1.0, 1.0, 1.0)
[    16.823] (II) FBTURBO(0): hardware: fb_ili9340 (video memory: 150kB)
[    16.823] (**) FBTURBO(0): Option "fbdev" "/dev/fb1"
[    16.823] (**) FBTURBO(0): Option "SwapbuffersWait" "true"
[    16.824] (II) FBTURBO(0): processor: Unknown
[    16.824] (II) FBTURBO(0): checking modes against framebuffer device...
[    16.824] (II) FBTURBO(0): checking modes against monitor...
[    16.824] (--) FBTURBO(0): Virtual size is 320x240 (pitch 320)
[    16.824] (**) FBTURBO(0):  Built-in mode "current"
[    16.824] (==) FBTURBO(0): DPI set to (96, 96)
[    16.824] (II) Loading sub module "fb"
[    16.824] (II) LoadModule: "fb"
[    16.824] (II) Loading /usr/lib/xorg/modules/libfb.so
[    16.831] (II) Module fb: vendor="X.Org Foundation"
[    16.832] 	compiled for 1.18.4, module version = 1.0.0
[    16.832] 	ABI class: X.Org ANSI C Emulation, version 0.4
[    16.832] (II) FBTURBO(0): FBIOBLANK: Invalid argument (Screen blanking not supported by kernel - disabling)
[    16.865] (II) FBTURBO(0): using backing store heuristics
[    16.874] (II) FBTURBO(0): can't load 'g2d_23' kernel module
[    16.874] (II) FBTURBO(0): failed to enable the use of sunxi display controller
[    16.874] (II) FBTURBO(0): No sunxi-g2d hardware detected (check /dev/disp and /dev/g2d)
[    16.874] (II) FBTURBO(0): G2D hardware acceleration can't be enabled
[    16.874] (II) FBTURBO(0): enabled VFP/NEON optimizations
[    16.874] (==) FBTURBO(0): Backing store enabled
[    16.888] (==) FBTURBO(0): DPMS enabled
[    16.888] (II) FBTURBO(0): failed to enable hardware cursor
[    16.888] (II) FBTURBO(0): no 3D acceleration because the driver has been compiled without libUMP
[    16.889] (II) FBTURBO(0): if this is wrong and needs to be fixed, please check ./configure log
[    16.891] (==) RandR enabled
[    16.932] (II) SELinux: Disabled on system
[    16.943] (II) AIGLX: Screen 0 is not DRI2 capable
[    16.943] (EE) AIGLX: reverting to software rendering
[    18.757] (II) AIGLX: enabled GLX_MESA_copy_sub_buffer
[    18.759] (II) AIGLX: Loaded and initialized swrast
[    18.759] (II) GLX: Initialized DRISWRAST GL provider for screen 0
[    19.195] (II) config/udev: Adding input device ADS7846 Touchscreen (/dev/input/event0)
[    19.196] (**) ADS7846 Touchscreen: Applying InputClass "evdev touchscreen catchall"
[    19.196] (**) ADS7846 Touchscreen: Applying InputClass "evdev touchscreen catchall"
[    19.196] (**) ADS7846 Touchscreen: Applying InputClass "Touch rotation"
[    19.196] (**) ADS7846 Touchscreen: Applying InputClass "calibration"
[    19.196] (II) LoadModule: "evdev"
[    19.196] (II) Loading /usr/lib/xorg/modules/input/evdev_drv.so
[    19.235] (II) Module evdev: vendor="X.Org Foundation"
[    19.235] 	compiled for 1.18.4, module version = 2.10.3
[    19.235] 	Module class: X.Org XInput Driver
[    19.235] 	ABI class: X.Org XInput driver, version 22.1
[    19.235] (II) Using input driver 'evdev' for 'ADS7846 Touchscreen'
[    19.235] (**) ADS7846 Touchscreen: always reports core events
[    19.235] (**) evdev: ADS7846 Touchscreen: Device: "/dev/input/event0"
[    19.235] (--) evdev: ADS7846 Touchscreen: Vendor 0 Product 0
[    19.235] (--) evdev: ADS7846 Touchscreen: Found absolute axes
[    19.235] (--) evdev: ADS7846 Touchscreen: Found x and y absolute axes
[    19.235] (--) evdev: ADS7846 Touchscreen: Found absolute touchscreen
[    19.235] (**) Option "SwapAxes" "1"
[    19.235] (II) evdev: ADS7846 Touchscreen: Configuring as touchscreen
[    19.236] (**) evdev: ADS7846 Touchscreen: YAxisMapping: buttons 4 and 5
[    19.236] (**) evdev: ADS7846 Touchscreen: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200
[    19.236] (**) Option "config_info" "udev:/sys/devices/platform/soc/3f204000.spi/spi_master/spi0/spi0.1/input/input0/event0"
[    19.236] (II) XINPUT: Adding extended input device "ADS7846 Touchscreen" (type: TOUCHSCREEN, id 6)
[    19.236] (II) evdev: ADS7846 Touchscreen: initialized for absolute axes.
[    19.236] (**) ADS7846 Touchscreen: (accel) keeping acceleration scheme 1
[    19.236] (**) ADS7846 Touchscreen: (accel) acceleration profile 0
[    19.236] (**) ADS7846 Touchscreen: (accel) acceleration factor: 2.000
[    19.236] (**) ADS7846 Touchscreen: (accel) acceleration threshold: 4
[    19.237] (II) config/udev: Adding input device ADS7846 Touchscreen (/dev/input/mouse0)
[    19.238] (**) ADS7846 Touchscreen: Applying InputClass "calibration"
[    19.238] (II) Using input driver 'evdev' for 'ADS7846 Touchscreen'
[    19.238] (**) ADS7846 Touchscreen: always reports core events
[    19.238] (**) evdev: ADS7846 Touchscreen: Device: "/dev/input/mouse0"
[    19.238] (EE) evdev: ADS7846 Touchscreen: Unable to query fd: Inappropriate ioctl for device
[    19.370] (EE) PreInit returned 2 for "ADS7846 Touchscreen"
[    19.370] (II) UnloadModule: "evdev"

Please post the results of

cat /etc/X11/xorg.conf.d/99-calibration.conf

and

cat /usr/share/X11/xorg.conf.d/99-fbturbo.conf

Here is the result:

volumio@chaine:~$ cat /etc/X11/xorg.conf.d/99-calibration.conf
Section "InputClass"
        Identifier      "calibration"
        MatchProduct    "ADS7846 Touchscreen"
        Option  "Calibration"   "115 3700 3865 155"
        Option  "SwapAxes"      "1"
        Driver  "evdev"
EndSection
volumio@chaine:~$ cat /usr/share/X11/xorg.conf.d/99-fbturbo.conf
# This is a minimal sample config file, which can be copied to
# /etc/X11/xorg.conf in order to make the Xorg server pick up
# and load xf86-video-fbturbo driver installed in the system.
#
# When troubleshooting, check /var/log/Xorg.0.log for the debugging
# output and error messages.
# Run "man fbturbo" to get additional information about the extra
# configuration options for tuning the driver.

Section "Device"
        Identifier      "Allwinner A10/A13/A20 FBDEV"
        Driver          "fbturbo"
        Option          "fbdev" "/dev/fb1"

        Option          "SwapbuffersWait" "true"
EndSection

And one bonus :

volumio@chaine:~$ cat /etc/X11/xorg.conf.d/95-touch_display-plugin.conf
# This file is managed by the Touch Display plugin: Do not alter!
# It will be deleted when the Touch Display plugin gets uninstalled.
Section "InputClass"
        Identifier "Touch rotation"
        MatchIsTouchscreen "on"
        MatchDevicePath "/dev/input/event*"
        MatchDriver "libinput|evdev"
EndSection

Some more questions: :slight_smile:

Did you add Driver "evdev" to /etc/X11/xorg.conf.d/99-calibration.conf? I’m asking because the file from the goodtft repo doesn’t contain that line. What happens if you remove it?

Do you see any input devices in /dev/input?

ls -al /dev/input

On your risk you could maybe try exchanging your currently used overlay for the waveshare32c overlay from the waveshare repo.

Did you add Driver "evdev" to /etc/X11/xorg.conf.d/99-calibration.conf? I’m asking because the file from the goodtft repo doesn’t contain that line.

Yes i did.

What happens if you remove it?

volumio@chaine:~$ cat /etc/X11/xorg.conf.d/99-calibration.conf 
Section "InputClass"
        Identifier      "calibration"
        MatchProduct    "ADS7846 Touchscreen"
        Option  "Calibration"   "115 3700 3865 155"
        Option  "SwapAxes"      "1"
#        Driver  "evdev"
EndSection
volumio@chaine:~$ cat /var/log/Xorg.0.log 
[    16.540] 
X.Org X Server 1.18.4
Release Date: 2016-07-19
[    16.540] X Protocol Version 11, Revision 0
[    16.540] Build Operating System: Linux 4.4.26-v7+ armv7l Raspbian
[    16.540] Current Operating System: Linux chaine 4.19.118-v7+ #1311 SMP Mon Apr 27 14:21:24 BST 2020 armv7l
[    16.540] Kernel command line: coherent_pool=1M 8250.nr_uarts=0 bcm2708_fb.fbwidth=640 bcm2708_fb.fbheight=480 bcm2708_fb.fbswap=1 vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000  plymouth.ignore-serial-consoles dwc_otg.fiq_enable=1 dwc_otg.fiq_fsm_enable=1 dwc_otg.fiq_fsm_mask=0xF dwc_otg.nak_holdoff=1 console=ttyS0,115200 kgdboc=ttyS0,115200 console=tty1 imgpart=/dev/mmcblk0p2 imgfile=/volumio_current.sqsh elevator=noop rootwait bootdelay=5 logo.nologo vt.global_cursor_default=0 loglevel=0 snd-bcm2835.enable_compat_alsa=1 snd_bcm2835.enable_headphones=1
[    16.540] Build Date: 11 November 2016  11:59:59AM
[    16.540] xorg-server 2:1.18.4-2+rpi1 (https://www.debian.org/support) 
[    16.540] Current version of pixman: 0.33.3
[    16.540]    Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
[    16.540] Markers: (--) probed, (**) from config file, (==) default setting,
        (++) from command line, (!!) notice, (II) informational,
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[    16.541] (==) Log file: "/var/log/Xorg.0.log", Time: Sun Nov 28 17:58:23 2021
[    16.560] (==) Using config directory: "/etc/X11/xorg.conf.d"
[    16.560] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[    16.596] (==) No Layout section.  Using the first Screen section.
[    16.596] (==) No screen section available. Using defaults.
[    16.596] (**) |-->Screen "Default Screen Section" (0)
[    16.596] (**) |   |-->Monitor "<default monitor>"
[    16.603] (==) No device specified for screen "Default Screen Section".
        Using the first device section listed.
[    16.603] (**) |   |-->Device "Allwinner A10/A13/A20 FBDEV"
[    16.603] (==) No monitor specified for screen "Default Screen Section".
        Using a default monitor configuration.
[    16.603] (==) Automatically adding devices
[    16.603] (==) Automatically enabling devices
[    16.603] (==) Automatically adding GPU devices
[    16.612] (==) Max clients allowed: 256, resource mask: 0x1fffff
[    16.640] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
[    16.640]    Entry deleted from font path.
[    16.644] (==) FontPath set to:
        /usr/share/fonts/X11/misc,
        /usr/share/fonts/X11/100dpi/:unscaled,
        /usr/share/fonts/X11/75dpi/:unscaled,
        /usr/share/fonts/X11/Type1,
        /usr/share/fonts/X11/100dpi,
        /usr/share/fonts/X11/75dpi,
        built-ins
[    16.644] (==) ModulePath set to "/usr/lib/xorg/modules"
[    16.644] (II) The server relies on udev to provide the list of input devices.
        If no devices become available, reconfigure udev or disable AutoAddDevices.
[    16.644] (II) Loader magic: 0x672f20
[    16.644] (II) Module ABI versions:
[    16.644]    X.Org ANSI C Emulation: 0.4
[    16.644]    X.Org Video Driver: 20.0
[    16.644]    X.Org XInput driver : 22.1
[    16.644]    X.Org Server Extension : 9.0
[    16.648] (--) using VT number 2

[    16.648] (II) systemd-logind: logind integration requires -keeptty and -keeptty was not provided, disabling logind integration
[    16.649] (II) no primary bus or device found
[    16.654] (II) LoadModule: "glx"
[    16.671] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[    16.800] (II) Module glx: vendor="X.Org Foundation"
[    16.800]    compiled for 1.18.4, module version = 1.0.0
[    16.800]    ABI class: X.Org Server Extension, version 9.0
[    16.800] (==) AIGLX enabled
[    16.800] (II) LoadModule: "fbturbo"
[    16.801] (II) Loading /usr/lib/xorg/modules/drivers/fbturbo_drv.so
[    16.821] (II) Module fbturbo: vendor="X.Org Foundation"
[    16.821]    compiled for 1.18.4, module version = 0.5.1
[    16.821]    Module class: X.Org Video Driver
[    16.821]    ABI class: X.Org Video Driver, version 20.0
[    16.821] (II) FBTURBO: driver for framebuffer: fbturbo
[    16.830] (WW) Falling back to old probe method for fbturbo
[    16.830] (II) Loading sub module "fbdevhw"
[    16.830] (II) LoadModule: "fbdevhw"
[    16.830] (II) Loading /usr/lib/xorg/modules/libfbdevhw.so
[    16.835] (II) Module fbdevhw: vendor="X.Org Foundation"
[    16.835]    compiled for 1.18.4, module version = 0.0.2
[    16.835]    ABI class: X.Org Video Driver, version 20.0
[    16.835] (II) FBTURBO(0): using /dev/fb1
[    16.835] (WW) VGA arbiter: cannot open kernel arbiter, no multi-card support
[    16.835] (II) FBTURBO(0): Creating default Display subsection in Screen section
        "Default Screen Section" for depth/fbbpp 16/16
[    16.835] (==) FBTURBO(0): Depth 16, (==) framebuffer bpp 16
[    16.835] (==) FBTURBO(0): RGB weight 565
[    16.835] (==) FBTURBO(0): Default visual is TrueColor
[    16.835] (==) FBTURBO(0): Using gamma correction (1.0, 1.0, 1.0)
[    16.835] (II) FBTURBO(0): hardware: fb_ili9340 (video memory: 150kB)
[    16.835] (**) FBTURBO(0): Option "fbdev" "/dev/fb1"
[    16.835] (**) FBTURBO(0): Option "SwapbuffersWait" "true"
[    16.835] (II) FBTURBO(0): processor: Unknown
[    16.835] (II) FBTURBO(0): checking modes against framebuffer device...
[    16.835] (II) FBTURBO(0): checking modes against monitor...
[    16.835] (--) FBTURBO(0): Virtual size is 320x240 (pitch 320)
[    16.835] (**) FBTURBO(0):  Built-in mode "current"
[    16.836] (==) FBTURBO(0): DPI set to (96, 96)
[    16.836] (II) Loading sub module "fb"
[    16.836] (II) LoadModule: "fb"
[    16.840] (II) Loading /usr/lib/xorg/modules/libfb.so
[    16.852] (II) Module fb: vendor="X.Org Foundation"
[    16.852]    compiled for 1.18.4, module version = 1.0.0
[    16.852]    ABI class: X.Org ANSI C Emulation, version 0.4
[    16.853] (II) FBTURBO(0): FBIOBLANK: Invalid argument (Screen blanking not supported by kernel - disabling)
[    16.884] (II) FBTURBO(0): using backing store heuristics
[    16.900] (II) FBTURBO(0): can't load 'g2d_23' kernel module
[    16.901] (II) FBTURBO(0): failed to enable the use of sunxi display controller
[    16.901] (II) FBTURBO(0): No sunxi-g2d hardware detected (check /dev/disp and /dev/g2d)
[    16.901] (II) FBTURBO(0): G2D hardware acceleration can't be enabled
[    16.901] (II) FBTURBO(0): enabled VFP/NEON optimizations
[    16.901] (==) FBTURBO(0): Backing store enabled
[    16.920] (==) FBTURBO(0): DPMS enabled
[    16.920] (II) FBTURBO(0): failed to enable hardware cursor
[    16.920] (II) FBTURBO(0): no 3D acceleration because the driver has been compiled without libUMP
[    16.920] (II) FBTURBO(0): if this is wrong and needs to be fixed, please check ./configure log
[    16.926] (==) RandR enabled
[    16.964] (II) SELinux: Disabled on system
[    16.972] (II) AIGLX: Screen 0 is not DRI2 capable
[    16.972] (EE) AIGLX: reverting to software rendering
[    18.815] (II) AIGLX: enabled GLX_MESA_copy_sub_buffer
[    18.817] (II) AIGLX: Loaded and initialized swrast
[    18.817] (II) GLX: Initialized DRISWRAST GL provider for screen 0
[    19.282] (II) config/udev: Adding input device ADS7846 Touchscreen (/dev/input/event0)
[    19.282] (**) ADS7846 Touchscreen: Applying InputClass "evdev touchscreen catchall"
[    19.282] (**) ADS7846 Touchscreen: Applying InputClass "evdev touchscreen catchall"
[    19.282] (**) ADS7846 Touchscreen: Applying InputClass "Touch rotation"
[    19.282] (**) ADS7846 Touchscreen: Applying InputClass "calibration"
[    19.282] (II) LoadModule: "evdev"
[    19.282] (II) Loading /usr/lib/xorg/modules/input/evdev_drv.so
[    19.327] (II) Module evdev: vendor="X.Org Foundation"
[    19.327]    compiled for 1.18.4, module version = 2.10.3
[    19.327]    Module class: X.Org XInput Driver
[    19.327]    ABI class: X.Org XInput driver, version 22.1
[    19.327] (II) Using input driver 'evdev' for 'ADS7846 Touchscreen'
[    19.328] (**) ADS7846 Touchscreen: always reports core events
[    19.328] (**) evdev: ADS7846 Touchscreen: Device: "/dev/input/event0"
[    19.328] (--) evdev: ADS7846 Touchscreen: Vendor 0 Product 0
[    19.328] (--) evdev: ADS7846 Touchscreen: Found absolute axes
[    19.328] (--) evdev: ADS7846 Touchscreen: Found x and y absolute axes
[    19.328] (--) evdev: ADS7846 Touchscreen: Found absolute touchscreen
[    19.328] (**) Option "SwapAxes" "1"
[    19.328] (II) evdev: ADS7846 Touchscreen: Configuring as touchscreen
[    19.328] (**) evdev: ADS7846 Touchscreen: YAxisMapping: buttons 4 and 5
[    19.328] (**) evdev: ADS7846 Touchscreen: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200
[    19.328] (**) Option "config_info" "udev:/sys/devices/platform/soc/3f204000.spi/spi_master/spi0/spi0.1/input/input0/event0"
[    19.328] (II) XINPUT: Adding extended input device "ADS7846 Touchscreen" (type: TOUCHSCREEN, id 6)
[    19.328] (II) evdev: ADS7846 Touchscreen: initialized for absolute axes.
[    19.329] (**) ADS7846 Touchscreen: (accel) keeping acceleration scheme 1
[    19.329] (**) ADS7846 Touchscreen: (accel) acceleration profile 0
[    19.329] (**) ADS7846 Touchscreen: (accel) acceleration factor: 2.000
[    19.329] (**) ADS7846 Touchscreen: (accel) acceleration threshold: 4
[    19.330] (II) config/udev: Adding input device ADS7846 Touchscreen (/dev/input/mouse0)
[    19.330] (**) ADS7846 Touchscreen: Applying InputClass "calibration"
[    19.330] (II) No input driver specified, ignoring this device.
[    19.330] (II) This device may have been added with another device file.

And still no feedback from my touch attempts.

Do you see any input devices in /dev/input?

volumio@chaine:~$ ls -la /dev/input/
total 0
drwxr-xr-x  3 root root     120 Nov 28 17:58 .
drwxr-xr-x 15 root root    3680 Nov 28 17:58 ..
drwxr-xr-x  2 root root      60 Nov 28 17:58 by-path
crw-rw----  1 root input 13, 64 Nov 28 17:58 event0
crw-rw----  1 root input 13, 63 Nov 28 17:58 mice
crw-rw----  1 root input 13, 32 Nov 28 17:58 mouse0

On your risk you could maybe try exchanging your currently used overlay for the waveshare32c overlay from the waveshare repo.

That will be my next step. I’ll keep you informed.

So i tried waveshare32c and i have a blank screen.
I tried also waveshare 32b (which has an identical pinout as my tft), and the display is working as well as the tft9341 overlay.
However the touchscreen is still unresponsive.

Since there are input devices shown in /dev/input: Do you have keyboard and mouse connected to the Pi? If not, please execute

cat /dev/input/event*

and tap on the touchscreen. Do you get some (weird) signs reflecting the touch events?

I have the same problem as grostim.

I ran DISPLAY=:0.0 xinput_calibrator and replaced the calibration options in 99-calibration.conf.
cat /dev/input/event*
returns glorious garbage so the touch screen is working.

Something else must be misconfigured.

From Xorg.0.log

53.598] (II) Using input driver ‘evdev’ for ‘ADS7846 Touchscreen’
[ 53.598] () ADS7846 Touchscreen: always reports core events
[ 53.598] (
) evdev: ADS7846 Touchscreen: Device: “/dev/input/event0”
[ 53.598] (–) evdev: ADS7846 Touchscreen: Vendor 0 Product 0
[ 53.598] (–) evdev: ADS7846 Touchscreen: Found absolute axes
[ 53.598] (–) evdev: ADS7846 Touchscreen: Found x and y absolute axes
[ 53.598] (–) evdev: ADS7846 Touchscreen: Found absolute touchscreen
[ 53.598] () Option “SwapAxes” “1”
[ 53.599] (II) evdev: ADS7846 Touchscreen: Configuring as touchscreen
[ 53.599] (
) evdev: ADS7846 Touchscreen: YAxisMapping: buttons 4 and 5
[ 53.599] () evdev: ADS7846 Touchscreen: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200
[ 53.599] (
) Option “config_info” “udev:/sys/devices/platform/soc/3f204000.spi/spi_master/spi0/spi0.1/input/input0/event0”
[ 53.599] (II) XINPUT: Adding extended input device “ADS7846 Touchscreen” (type: TOUCHSCREEN, id 6)
[ 53.599] (II) evdev: ADS7846 Touchscreen: initialized for absolute axes.
[ 53.599] () ADS7846 Touchscreen: (accel) keeping acceleration scheme 1
[ 53.599] (
) ADS7846 Touchscreen: (accel) acceleration profile 0
[ 53.599] () ADS7846 Touchscreen: (accel) acceleration factor: 2.000
[ 53.599] (
) ADS7846 Touchscreen: (accel) acceleration threshold: 4
[ 53.601] (II) config/udev: Adding input device ADS7846 Touchscreen (/dev/input/mouse0)
[ 53.601] (**) ADS7846 Touchscreen: Applying InputClass “calibration”
[ 53.601] (II) No input driver specified, ignoring this device.
[ 53.601] (II) This device may have been added with another device file.

Adding Option “InvertX” “1” to 99-calibration.conf allows the touchscreen to react but not correctly and I cannot successfully calibrate after this change.

DISPLAY=:0.0 xinput_calibrator -v --misclick 0 --precalib 0 1000 0 1000

Section “InputClass”
Identifier “calibration”
MatchProduct “ADS7846 Touchscreen”
Option “Calibration” “999 998 662 662”
Option “SwapAxes” “1”
EndSection

DISPLAY=:0.0 xinput
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ ADS7846 Touchscreen id=6 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]

Enabling device 6 with xinput has no effect.

BTW This was working with LCDshow on Raspberry Pi OS

Do you have the same display as grostim?

This is the display. I don’t know if it is the same.

No, it’s not: grostim has a 3.2 inch display :wink:

What overlay are you using?

How do your /boot/config.txt and /boot/userconfig.txt look? Please post the results of

cat /boot/config.txt

and

cat /boot/userconfig.txt

BTW: From your description it seems you don’t have the same problem as grostim. While grostim seems to have no reaction from his touchscreen the issue with your touchscreen appears to be some misalignment, i.e. the touch event doesn’t happen at the location where you touch the screen.

I suggest to enable the option “Show Mouse Pointer” on the config page of the Touch Dispaly plugin for better visibility of the touch screen’s reaction and describe where you tap on the screen and where the mouse pointer appears.

With the mouse pointer turned on I can see the cursor move when I touch but the cursor is no where near where I am touching.

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
dtoverlay=tft35a
include userconfig.txt

cat /boot/userconfig.txt

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

dtparam=spi=on
dtoverlay=tft35a

Please describe, where you touch and where the cursor appears, like touch: left upper corner => cursor: right upper corner

touch: left upper corner => cursor: middle of screen below touch point
touch: right upper corner => cursor: upper left corner
touch: left lower corner => cursor: middle of screen, 1/3 from the left side
touch: right lower corner => nothing

Ok, please the content of the current /etc/X11/xorg.conf.d/99-calibration.conf.

cat /etc/X11/xorg.conf.d/99-calibration.conf

And how is the touchscreen reacting if /etc/X11/xorg.conf.d/99-calibration.conf has the following content?

Section "InputClass"
        Identifier      "calibration"
        MatchProduct    "ADS7846 Touchscreen"
        Option  "Calibration"   "268 3880 227 3936"
        Option  "SwapAxes"      "0"
EndSection

My conf is the same as yours. I replaced the one posted earlier with the one included with LCD-show.

cat /etc/X11/xorg.conf.d/99-calibration.conf
Section “InputClass”
Identifier “calibration”
MatchProduct “ADS7846 Touchscreen”
Option “Calibration” “268 3880 227 3936”
Option “SwapAxes” “0”
EndSection

Thanks for clarifying.

Is rotation set to 0 deg. on the Touch Display plugin’s config page?

Do you have any other display related plugins installed?

Rotation is set to 0°. No other plugins are installed.

Could you try the following “Option “Calibration” line in /etc/X11/xorg.conf.d/99-calibration.conf and report how the touch reaction changes please?

Option "Calibration" "3936 227 3880 268"

Also please post the results of

ls -al /etc/X11/xorg.conf.d

and

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

Somewhat different however the cursor never moves to the right side of the screen.

ls -al /etc/X11/xorg.conf.d
total 28
drwxr-xr-x 2 root root 4096 Dec 4 15:33 .
drwxr-xr-x 1 root root 4096 Dec 4 14:04 …
-rw-r–r-- 1 root root 316 Dec 4 15:28 95-touch_display-plugin.conf
-rwxr-xr-x 1 root root 247 Dec 4 16:56 99-calibration.conf
-rwxr-xr-x 1 root root 204 Dec 4 14:31 99-calibration.conf.bak

ls -al /usr/share/X11/xorg.conf.d
total 36
drwxr-xr-x 2 root root 4096 Dec 4 14:21 .
drwxr-xr-x 1 root root 4096 Dec 4 14:02 …
-rw-r–r-- 1 root root 1099 Sep 24 2016 10-evdev.conf
-rw-r–r-- 1 root root 1350 Nov 11 2016 10-quirks.conf
-rw-r–r-- 1 root root 788 Sep 30 2016 40-libinput.conf
-rw-r–r-- 1 root root 2747 Oct 28 2016 70-wacom.conf
-rw-r–r-- 1 root root 609 Dec 4 14:18 99-fbturbo.conf