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

I have tried following the instructions several times, all of the different ones but with no success. All I managed was to change it from a white to a black screen.

Finally today I got it working with some minor additional steps.

First of all I had problems runnint apt-get upgrade due to the clock not matching the current time. ntp is no longer used by default in Buster it seems. So I had to manually set the clock for upgrades to work. Before that I got an issue that the repos are not yet valid. (The date and time was set at a month back, probably from when the image was created). After manually setting the time I no longer got any errors when upgrading.

After that I ran in to some issues with fbturbo, looking at the output in Xorg.0.log I could see errors saying “Failed to load module ‘fbturbo’”. After some googling I found thats not included in Buster as well. So following these instructions I was able to compile and install fbturbo and after another reboot I now have a working screen!

I hope this can be of help to anyone that stumbles upon this thread with the same issues.

which Display do you have

The cheap 3.5 inch one from places like AliExpress. This one
http://www.lcdwiki.com/3.5inch_RPi_Display

looks like mine, i use the installtion from Post #345 → the edit steps. Work fine for me.

Hi,
I also have XPT2046 and it works fine after reading @gvolt tuto.
Only one request : I don’t want the screen to stay on even in screensaver mode. I would like it to turn off electrically after a timeout.
Is it possible ?
Thanks a lot.

Can i use the touch screen with the MPD_OLED plug-in ?

yes you can.

Hi gvolt! thanks to you i manage to work with the display using this tut.unfortunately , it couldnt work with the the touch function even i tried to on the mouse pointer.
is there something i missed or didnt put some line in userconfig?

thanks,

What is the brand and exact model name of your display?

What Volumio version are you running?

Please describe what you did to install the display in more detail.

Please post the output of

ls -al /dev/input

and

cat /boot/userconfig.txt

3.5inch touch screen
-3.5inch RPi Display - LCD wiki
-Xpt2046 touch controller
-Ili9486 driver as per box sticker.

4inch touch screen

Both running
Latest os ver 3.757

After boot
Change the timezone from where am i located.
Then execute sudo apt update then install touch display from plug-in store.
After these
Do this introduction from Volumio with 3.5" TFT Touch Screen (GPIO) RPi 3B+ - #345 by gvolt
3.5inch userconfig has these line dtparam=spi=on
dtoverlay=tft35a
While,
4inch has
dtparam=i2c_arm=on
dtparam=spi=on
config_hdmi_boost=7
hdmi_group=2
hdmi_mode=87
hdmi_drive=2
hdmi_cvt 480 800 60 6 0 0 0
dtoverlay=ads7846
dtparam=cs=1
dtparam=penirq=25
dtparam=penirq_pull=2
dtparam=speed=50000
dtparam=swapxy=0
dtparam=pmax=255
dtparam=xohms=150
dtparam=xmin=200
dtparam=xmax=3900
dtparam=ymin=200
dtparam=ymax=3900
display_rotate=3

for 3.5 inch "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
"

for 4 inch " volumio@volumio:~$ cat /boot/userconfig.txt

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

dtparam=spi=on
hdmi_drive=1
hdmi_group=2
hdmi_mode=87
hdmi_cvt 800 480 60 6 0 0 0
dtoverlay=ads7846
dtparam=cs=1
dtparam=penirq=25
dtparam=penirq_pull=2
dtparam=speed=50000
dtparam=swapxy=0
dtparam=pmax=255
dtparam=xohms=150
dtparam=xmin=200
dtparam=xmax=3900
dtparam=ymin=200
dtparam=ymax=3900
".

Just for my understanding: Are you using a 3.5“ and a 4.0” display?

Could you post a picture of the 3.5" display’s PCB?

What are the Pi models the display(s) is/are connected to?

Hi gvolt!

i am using two rpi 3b+ the running seperately.

sure here is my 3.5 inch display .



and
here is my 4inch also

Hi gvolt! i just want to tell you that 4 inch is working now using this tut Miuzei 4 inch IPS Touch Screen LCD Display , however, the touch function not working. and the mouse pointer is at the middle of display and i run these command.
cat /dev/input/event*
nothing happens
while,
volumio@volumio:~$ udevadm info -q all -n /dev/input/event*
P: /devices/platform/soc/3f204000.spi/spi_master/spi0/spi0.1/input/input0/event0
N: input/event0
L: 0
S: input/by-path/platform-3f204000.spi-event
E: DEVPATH=/devices/platform/soc/3f204000.spi/spi_master/spi0/spi0.1/input/input0/event0
E: DEVNAME=/dev/input/event0
E: MAJOR=13
E: MINOR=64
E: SUBSYSTEM=input
E: USEC_INITIALIZED=23482598
E: ID_INPUT=1
E: ID_INPUT_TOUCHSCREEN=1
E: ID_PATH=platform-3f204000.spi
E: ID_PATH_TAG=platform-3f204000_spi
E: LIBINPUT_DEVICE_GROUP=1c/0/1ea6:spi0
E: DEVLINKS=/dev/input/by-path/platform-3f204000.spi-event

And i did this also,
sudo apt-get -y install xserver-xorg-input-evdev

After that execute

sudo cp /usr/share/X11/xorg.conf.d/10-evdev.conf /usr/share/X11/xorg.conf.d/45-evdev.conf

and reboot.

Touch not working.

Regards,

Did you try the alternative ads7846 overlay file from goodtft I mentioned here?

Hi @gvolt !
here is the result of 3.5 inch
Pease post the output of

cat /usr/share/X11/xorg.conf.d/45-evdev.conf
volumio@volumio:~$ cat /usr/share/X11/xorg.conf.d/45-evdev.conf

Catch-all evdev loader for udev-based systems

We don’t simply match on any device since that also adds accelerometers

and other devices that we don’t really want to use. The list below

matches everything but joysticks.

Section “InputClass”
Identifier “evdev pointer catchall”
MatchIsPointer “on”
MatchDevicePath “/dev/input/event*”
Driver “evdev”
EndSection

Section “InputClass”
Identifier “evdev keyboard catchall”
MatchIsKeyboard “on”
MatchDevicePath “/dev/input/event*”
Driver “evdev”
EndSection

Section “InputClass”
Identifier “evdev touchpad catchall”
MatchIsTouchpad “on”
MatchDevicePath “/dev/input/event*”
Driver “evdev”
EndSection

Section “InputClass”
Identifier “evdev tablet catchall”
MatchIsTablet “on”
MatchDevicePath “/dev/input/event*”
Driver “evdev”
EndSection

Section “InputClass”
Identifier “evdev touchscreen catchall”
MatchIsTouchscreen “on”
MatchDevicePath “/dev/input/event*”
Driver “evdev”
.
and

sudo mv /boot/overlays/ads7846.dtbo /boot/overlays/ads7846.dtbo.bak ( nothing happens)

volumio@volumio:~$ sudo curl -L https://github.com/goodtft/LCD-show/raw/master/usr/ads7846-overlay.dtb -o /boot/overlays/ads7846-overlay.dtbo
[sudo] password for volumio:
volumSorry, try again.
[sudo] password for volumio:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:–:-- --:–:-- --:–:-- 0
100 2402 100 2402 0 0 2423 0 --:–:-- --:–:-- --:–:-- 0
volumio@volumio:~$

reboot

nothing happens, the display still working fine and the mouse is still in the middle of screen, touch function still not working.

regards,