[revised question] - EVDEV not picking up calibration.conf after reboot - cinnamon 64 18.3

Questions about hardware,drivers and peripherals
Forum rules
Before you post please read how to get help
Post Reply
Tinman55
Level 1
Level 1
Posts: 3
Joined: Wed Jan 10, 2018 12:45 am

[revised question] - EVDEV not picking up calibration.conf after reboot - cinnamon 64 18.3

Post by Tinman55 » Wed Jan 10, 2018 1:41 am

Hi All, been enjoying Mint for many versions now.
Currently on my garage machine I upgraded from 17.3 to 18.3.

Specs are ASRock G41C-GS, Intel E8600 with 4 Gb RAM, 120 Gb SSD, Intel 4 series graphics controller.

The fresh install went great, everything looks good and works great, except for the touchscreen.
Elo TouchSystems, Inc. Elo TouchSystems 2700 IntelliTouch(r) USB Touchmonitor Interface id=10 [slave pointer (2)] (from xinput)

I installed xinput_calibrator as I did in 17.3 but since 18.3 is using the libinput driver this did not provide a calibration of the screen.
I read at numerous locations about creating xformation matrix with math wizardry and making a script that is kicked on startup, etc, then looking at the LinuxMint main page it says Mint 18.3 will support either libinput or evdev for the driver.

So I removed (sudo apt remove) xserver-xorg-input-libinput and restarted.
Boom, evdev is driving the touchscreen, xinput_calibrator works as usual, inverts X,Y as needed and it harks out the calibration config.
I created the 99-calibration.conf file under /usr/share/X11/xorg.conf.d (same as location as 17.3) and rebooted.

And there is the issue, the calibration data is not read or loaded upon the restart.

(File contents)
Section "InputClass"
Identifier "calibration"
MatchProduct "Elo TouchSystems, Inc. Elo TouchSystems 2700 IntelliTouch(r) USB Touchmonitor Interface"
Option "Calibration" "4084 -11 4095 37"
Option "EmulateThirdButton" "1"
Option "EmulateThirdButtonTimeout" "750"
Option "EmulateThirdButtonMoveThreshold" "30"
EndSection

Everything works as expected until I reboot. Then I have to calibrate touchscreen to get things correct again.
Since I ripped libinput out is there some setting for evdev that I need to change so the calibration data file is read upon reboot?
Is this something I can add to the .xprofile that I created to set the display resolution?
(the display was not correctly detected so I added the following to .xprofile)
xrandr --newmode "1368x768_60.00" 85.25 1368 1440 1576 1784 768 771 781 798 -hsync +vsync
xrandr --addmode VGA1 "1368x768_60.00"

I have another of these machines with 17.3 still and I compared .conf files between the 2 but I can't find any setting that jumps out and says evdev here or a remaining reference to libinput.

This is the list props for the touchscreen......
xinput list-props 10
Device 'Elo TouchSystems, Inc. Elo TouchSystems 2700 IntelliTouch(r) USB Touchmonitor Interface':
Device Enabled (119): 1
Coordinate Transformation Matrix (121): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
Device Accel Profile (244): 0
Device Accel Constant Deceleration (245): 1.000000
Device Accel Adaptive Deceleration (246): 1.000000
Device Accel Velocity Scaling (247): 10.000000
Device Product ID (237): 1255, 32
Device Node (238): "/dev/input/event4"
Evdev Axis Inversion (248): 0, 0
Evdev Axis Calibration (249): 4097, -12, 4078, 11
Evdev Axes Swap (250): 0
Axis Labels (251): "Abs X" (266), "Abs Y" (267), "Abs Misc" (268)
Button Labels (252): "Button Left" (122), "Button Unknown" (240), "Button Unknown" (240), "Button Wheel Up" (125), "Button Wheel Down" (126)
Evdev Scrolling Distance (253): 0, 0, 0
Evdev Middle Button Emulation (254): 0
Evdev Middle Button Timeout (255): 50
Evdev Third Button Emulation (256): 1
Evdev Third Button Emulation Timeout (257): 750
Evdev Third Button Emulation Button (258): 3
Evdev Third Button Emulation Threshold (259): 30
Evdev Wheel Emulation (260): 0
Evdev Wheel Emulation Axes (261): 0, 0, 4, 5
Evdev Wheel Emulation Inertia (262): 10
Evdev Wheel Emulation Timeout (263): 200
Evdev Wheel Emulation Button (264): 4
Evdev Drag Lock Buttons (265): 0

I know I can go back to 17.3 but I do like to keep somewhat current on the releases.
If I can get the calibration data to load on restart I am good.
Thanks in advance!

-jon
Last edited by Tinman55 on Mon Jan 15, 2018 9:56 pm, edited 1 time in total.

orschiro
Level 4
Level 4
Posts: 230
Joined: Mon Dec 04, 2017 2:56 am
Contact:

Re: Touchscreen changes with libinput vs evdev

Post by orschiro » Thu Jan 11, 2018 2:28 am

Is this something I can add to the .xprofile that I created to set the display resolution?
Maybe create a simple bash script that you run on startup?

Tinman55
Level 1
Level 1
Posts: 3
Joined: Wed Jan 10, 2018 12:45 am

Re: Touchscreen changes with libinput vs evdev

Post by Tinman55 » Thu Jan 11, 2018 5:12 pm

Hey thanks for the reply orschiro.

Since this all worked perfectly in all versions up to 17.3 I was really hoping it could be made to function the same in 18.3.
I could do a script if I could figure out the cmd line verbiage for the evdev string however I still think it is a setting in a config or xinput or something that I have missed when I removed the libinput driver(s) to force 18.3 to use evdev.
The touchscreen does work as normal, it is just not loading the calibration data after a reboot.

Perhaps I should reload libinput and put more effort into calibration and settings with that driver.
Or just remain at 17.3 until 19 comes out and try that version.

Anyway, still digging.....

Tinman55
Level 1
Level 1
Posts: 3
Joined: Wed Jan 10, 2018 12:45 am

Re: [revised question] - EVDEV not picking up calibration.conf after reboot - cinnamon 64 18.3

Post by Tinman55 » Thu Jan 18, 2018 1:14 am

Ok, so not a fix but a workaround.
For the evdev driver to work correctly in version 18.3 for my ELO touchscreen I had to remove libinput after the first boot of the fresh install.
sudo apt remove xserver-xorg-input-libinput
Then I proceeded on with the complete download and updates through the Update Manager to finalize the local install.

This is repeatable.
Do the complete installation and updates then remove libinput and the touchscreen with evdev does not read the calibration file after reboot.
Do the first installation step, remove libinput, then finish installation through Update Manager and evdev picks up the calibration file after a reboot.

Anyway thanks for the one comment and hopefully this may help another with a similar evdev issue.

Post Reply

Return to “Hardware Support”