Volumio on 3.5 inch GPIO display ERROR

Hello Volumio users !

I have Raspberry PI 3 model B, I also bought a 3.5 inch TFT resistive touchscreen display - “GoodTFT MHS35”.
I was able to run this screen with Volumio, everything works fine, but when switching tracks I get an error.

Touch Display Error setting screensaver timeout: Error: Command failed: /bin/bash -c "/usr/bin/xset -display :0 s off +dpms 0 0 0" No protocol specified /usr/bin/xset: unable to open display ":0"

I’ll write the commands I executed

I install and activate Touch Display Plugin
Then I proceeded to install the display and touchscreen driver

git clone https://github.com/goodtft/LCD-show
cd LCD-show/
sudo mkdir /etc/X11/xorg.conf.d
sudo cp ./usr/mhs35-overlay.dtb /boot/overlays/
sudo cp ./usr/mhs35-overlay.dtb /boot/overlays/mhs35.dtbo
sudo cp -rf ./usr/99-calibration.conf-mhs35-90  /etc/X11/xorg.conf.d/99-calibration.conf
sudo mkdir -p /usr/share/X11/xorg.conf.d/
sudo cp -rf ./usr/99-fbturbo.conf  /usr/share/X11/xorg.conf.d/99-fbturbo.conf

Then I modify the 99-calibration.conf file and add the Driver “evdev” option:

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

the file should be:
Section “InputClass”
Identifier “calibration”
MatchProduct “ADS7846 Touchscreen”
Option “Calibration” “3936 227 268 3880”
Option “SwapAxes” “1”
Driver “evdev”
EndSection

I modify the /boot/config.txt

sudo nano /boot/config.txt

add the last line:
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=mhs35

Install missing packages:

sudo apt update
sudo apt install lightdm
sudo apt install xserver-xorg-input-evdev

After a reboot, everything works fine, but like I said, when I switch tracks I get an error:

Touch Display Error setting screensaver timeout: Error: Command failed: /bin/bash -c "/usr/bin/xset -display :0 s off +dpms 0 0 0" No protocol specified /usr/bin/xset: unable to open display ":0"

I had no time to look for details, so I can’t say for sure atm, but it could be that lightdm “interferes” here. What is the purpose of lightdm in your system? Does the lightdm service run (systemctl status lightdm)? Would you mind to uninstall lightdm completely or at least disable the lightdm service sudo systemctl disable lightdm and reboot?

Touch display plugin must be installed or not ?

I don’t know, I was following instructions.

UPD:

I executed that command. If the touch display plugin is installed, an error appears, if the touch display plugin is disabled, there is no error, but only the login window appears on the 3.5 display, Volumio does not load.

UPD2:

[code]volumio@volumio:~$ sudo systemctl status lightdm
● lightdm.service - Light Display Manager
Loaded: loaded (/lib/systemd/system/lightdm.service; static)
Active: active (running) since Mon 2019-09-02 21:22:08 UTC; 7min ago
Docs: man:lightdm(1)
Process: 696 ExecStartPre=/bin/sh -c [ “$(cat /etc/X11/default-display-manager 2>/dev/null)” = “/usr/sbin/lightdm” ] (code=exited, status=0/SUCCESS)
Main PID: 706 (lightdm)
CGroup: /system.slice/lightdm.service
├─706 /usr/sbin/lightdm
├─745 /usr/lib/xorg/Xorg :0 -seat seat0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch
└─918 lightdm --session-child 13 20

Sep 02 21:22:08 volumio lightdm[706]: ** (lightdm:706): WARNING **: Error getting user list from org.freedesktop.Accounts: GDBus.Error:org.freedesktop.DBus.Error.Service…ervice files
Sep 02 21:22:08 volumio systemd[1]: Started Light Display Manager.
Sep 02 21:22:13 volumio lightdm[706]: ** (process:798): WARNING **: Error getting user list from org.freedesktop.Accounts: GDBus.Error:org.freedesktop.DBus.Error.Service…ervice files
Sep 02 21:22:14 volumio lightdm[798]: pam_unix(lightdm-greeter:session): session opened for user lightdm by (uid=0)
Hint: Some lines were ellipsized, use -l to show in full.[/code]
(Touch Display Plugin removed & run the command: sudo systemctl disable lightdm)