I can't install my 3.5 inch screen MPI3508

I bought a touch screen and I can’t make it work at all I followed the installation guide for my product but the error and when I restart my raspberry pi with volumio a panic kernel message appears but I managed to make it work on raspbian default
guide: http://www.lcdwiki.com/3.5inch_HDMI_Display-B

Did you use the script from this GitHub repository https://github.com/goodtft/LCD-show? There are some issues reported regrading these scripts (e.g. https://github.com/goodtft/LCD-show/issues/140). Don’t know if anything of that applies to your problem. But I could imagine that the file /boot/cmdline.txt has been modified in a way that rendered Volumio unbootable.

You could try to restore the original /boot/cmdline.txt to make the system boot again or install Volumio from scratch. After you got Volumio up and running before starting the MPI3508-show script you could open that file and comment lines 29 to 33.

I replaced the volumio (installing again by etcher), i need to comment /boot/cmdline.txt? or the script MPI3508-show?
I tried to install using the driver that came with the CD along with the screen (via a USB stick) and it shows an error message that ‘’ my device is not a raspberry pi ‘’. I imagine it is because of the error mentioned in this post as the device is called “volumio”
can i like changing device / user name to raspberry pi or editing script so it work? (I’m sorry, I’m pretty layman in programming and linux)

I meant editing the MPI3508-show script. But be aware this was based on the script I have seen in the repository I mentioned above. Since you are using a version from a CD delivered with the screen your script might be different. Maybe post the script here or PM me.

To not complicate things I would refrain from changing the device or user name. The script will most probably not look for the device or user name anyway when it is checking what hardware it is run on .

before reading your post i ended up trying to edit the script by changing the username to ‘’ volumio ‘’ but still he gave the same error message saying ‘’ this is not a raspberry pie device ‘’
but this time he continued the installation but gave panic kernel again but already restored the volume again
I posted the driver that came with the card cd and the script really is different and I ended up posting the driver to github so that you have access to all driver files because I don’t have ctz if the problem is only in MPI3508 -show script, the script on github is the original have no alteration as the same of the cd
post at

I think I would start with a fresh Volumio and try to not use the MPI3508-show script at all.

Install the touch display plugin but don’t enable it now.

Modify /boot/config.txt by adding the entries taken from the MPI3508-show script:

dtparam=spi=on enable_uart=1 config_hdmi_boost=7 hdmi_drive=2 hdmi_force_hotplug=1 hdmi_group=2 hdmi_mode=87 hdmi_cvt 480 320 60 6 0 0 0 dtoverlay=ads7846,cs=1,penirq=25,penirq_pull=2,speed=50000,keep_vref_on=0,swapxy=0,pmax=255,xohms=150,xmin=200,xmax=3900,ymin=200,ymax=3900
Copy /usr/99-calibration.conf-3508 to /etc/X11/xorg.conf.d/99-calibration.conf.


The touch functionality will not work at this stage but hopefully the screen displays the UI after you enable the touch display plugin.

If you should encounter error messages please post their content. It can also be helpful to connect to Volumio via a second SSH connection and run journalctl -f as root before you enable the plugin. That way you can watch many log entries happening - and copy possible error messages to post them here.

After the display works we can proceed with the touch function.

I’m sorry but I don’t understand what I need to do / I how I do this

Sorry for not being clear. The file 99-calibration.conf-3508 is part of the package LCD-show.tar.gz and (for no reason) I assumed you had deflated the package and already looked at the files…

After extracting the files from LCD-show.tar.gz you should find 99-calibration.conf-3508 in the subdirectory “usr” below the directory into which LCD-show.tar.gz had been extracted to.

Instead of extracting 99-calibration.conf-3508 from LCD-show.tar.gz and copying it to /etc/X11/xorg.conf.d you could directly create the file. After creating the folder xorg.conf.d in /etc/X11/ sudo mkdir /etc/X11/xorg.conf.d open the editor nano sudo nano /etc/X11/xorg.conf.d/99-calibration.conf and write/paste the following content (which I copied from the original file)Section "InputClass" Identifier "calibration" MatchProduct "ADS7846 Touchscreen" Option "Calibration" "3945 233 3939 183" Option "SwapAxes" "1" EndSection Then close nano with Ctrl+x, y and the return/enter key.

Hey men I do what you say to I do and the touchscreen function is ready but the calibration is very very descalibrated ksksksks I recorded this video to show to you youtu.be/jJYvOrOUBvc

Ok, nice progress :slight_smile:

Now please post the results of ls -al /usr/share/X11/xorg.conf.d/ and ls -al /etc/X11/xorg.conf.d/
You could also try commenting the line Option "SwapAxes" "1" in /etc/X11/xorg.conf.d/99-calibration.conf or changing the value from “1” to “0” and reboot to see if it has an effect.

I tried to do this and I made but nothing change and

Remember Linux is case sensitive. In /usr/share as well as in /etc the folder has to be X11 (not x11)!

Your screenshot shows that you also have created a folder x11 below /etc which needs to X11. Please execute sudo mkdir /etc/X11/xorg.conf.d and move 99-calibration.conf as follows sudo mv /etc/x11/xorg.conf.d/99-calibration.conf conf /etc/X11/xorg.conf.d/ You may also delete /etc/x11 sudo rm -rf /etc/x11
Then revert the change you have applied to 99-calibration.conf and reboot.

If calibration is still bad, post the results of ls -al /usr/share/X11/xorg.conf.d/ and ls -al /etc/X11/xorg.conf.d/

The calibration still the same thing

Ok, did you also test with “SwapAxes” set to “0” in 99-calibration.conf after you moved that file to /etc/X11/xorg.conf.d/?

Edit: I had another look at your video and I have the impression that the x and y axes are swapped. So, please test /boot/config.txt with “swapxy” set to 1 in the line beginning with “dtoverlay=ads7846”: dtoverlay=ads7846,cs=1,penirq=25,penirq_pull=2,speed=50000,keep_vref_on=0,swapxy=1,pmax=255,xohms=150,xmin=200,xmax=3900,ymin=200,ymax=3900

If that has no effect, too, copy 40-libinput.conf from /usr/share/X11/xorg.conf.d/ to /etc/X11/xorg.conf.d/ sudo cp /usr/share/X11/xorg.conf.d/40-libinput.conf /etc/X11/xorg.conf.d/
Open /etc/X11/xorg.conf.d/40-libinput.conf sudo nano /etc/X11/xorg.conf.d/40-libinput.conf and add the line Option "CalibrationMatrix" "1 0 0 0 1 0 0 0 1" to the Section “InputClass” with the Identifier “libinput touchscreen catchall”.

After that the section should look like this:Section "InputClass" Identifier "libinput touchscreen catchall" MatchIsTouchscreen "on" MatchDevicePath "/dev/input/event*" Driver "libinput" Option "CalibrationMatrix" "1 0 0 0 1 0 0 0 1" EndSection
Then save 40-libinput.conf and reboot.

The calibration matrix “1 0 0 0 1 0 0 0 1” means a touch rotation of 0°. You may also try other matrices to see if changes in 40-libinput.conf have any effect: “0 1 0 -1 0 1 0 0 1” should rotate touch by 90°, “-1 0 1 0 -1 1 0 0 1” by 180° and “0 -1 1 1 0 0 0 0 1” by 270°. Swapping x and y axes: " 0 1 0 1 0 0 0 0 1"; inverting x: “-1 0 1 0 1 1 0 0 1”; inverting y: “1 0 0 0 -1 1 0 0 1”.

P.S. Did you create /usr/share/X11/xorg.conf.d/xorg.conf.d? It doesn’t seem to exist by default. At least I don’t have such a folder on my system.

i tried to do this: sudo cp /usr/share/X11/xorg.conf.d/40-libinput.conf /etc/X11/xorg.conf.d/ but after do this the volumio don’t start the gui. i tried to install: xinput-calibrator_0.7.5-1_armhf.deb with dpkg install comand but nothing, change the x and y continue inverted. sorry I haven’t had much free time to made this function, and no i have /usr/share paste but i do it manually and all the archives i put here with de terminal.

With /etc/X11/xorg.conf.d/40-libinput.conf in place and when the UI did not start what is the result of systemctl status -l volumio-kiosk
Also please post the content of /etc/X11/xorg.conf.d/40-libinput.conf cat /etc/X11/xorg.conf.d/40-libinput.conf

Did the installation xinput-calibration fail or what (other) the error did occur?

Just to clarify: Did you change “swapxy” in /boot/config.txt in the line beginning with “dtoverlay=ads7846”?

Hm, assuming /usr/share/X11/xorg.conf.d/xorg.conf.d has been created accidentally you might remove it with: sudo rm -r /usr/share/X11/xorg.conf.d/xorg.conf.d

P.S. Instead of posting screenshots maybe you could try to copy the text of error messages or results of commands you executed in the terminal and paste it into your posts using code tags.

[code] ___
/_ \ __
__ __ //\ \ __ __ ___ ___ /_\ ___
/\ /\ \ / __\\ \ \ /\ \/\ \ /' __ __\/\ \ / __
\ \ _/ |/\ \L\ \
\ _\ \ _\ /\ /\ /\ \ \ /\ \L\
\ _
/ \ _//_\ _/\ _\ _\ _\ _\ _/
// // // // /////////___/

         Free Audiophile Linux Music Player - Version 2.0

      C 2015 Michelangelo Guarise - Volumio Team - Volumio.org

Volumio Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
volumio@volumio:~$ systemctl status -l volumio-kiosk
● volumio-kiosk.service - Volumio Kiosk
Loaded: loaded (/lib/systemd/system/volumio-kiosk.service; disabled)
Active: inactive (dead)
volumio@volumio:~$ cat /etc/X11/xorg.conf.d/40-libinput.conf
Section “InputClass”
Identifier “libinput touchscreen catchall”
MatchIsTouchscreen “on”
MatchDevicePath “/dev/input/event*”
Driver “libinput”
Option “CalibrationMatrix” “1 0 0 0 1 0 0 0 1”
volumio@volumio:~$ sudo rm -r /usr/share/X11/xorg.conf.d/xorg.conf.d
rm: cannot remove ‘/usr/share/X11/xorg.conf.d/xorg.conf.d’: No such file or directory
volumio@volumio:~$ [code] I have made all this things but the calibration didn’t change and in this time the gui have started and didn’t have any error message in the installation and I tried “swapaxes” with 0 and 1 and nothing change

Sorry, my mistake. Command has to be sudo rm -r /etc/X11/xorg.conf.d/xorg.conf.d

With “swapaxes” do you mean “swapxy” from the dtoverlay in /boot/config.txt?

Since the GUi does start now please post the output of systemctl status -l volumio-kiosk after the GUI is visible.

I suspect your display does not work with libinput but may need evdev. This would require installing xserver-xorg-input-evdev: sudo apt-get install -y xserver-xorg-input-evdev
After that in /etc/X11/xorg.conf.d/40-libinput.conf in section “InputClass” with the identifier “libinput touchscreen catchall” try changing the line regarding the driver to be used from “libinput” to “evdev” so that section looks like this:Section "InputClass" Identifier "libinput touchscreen catchall" MatchIsTouchscreen "on" MatchDevicePath "/dev/input/event*" Driver "evdev" EndSectionReboot.