Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[Solved] [Goodix Touchscreen] Libinput
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware
View previous topic :: View next topic  
Author Message
rem5
n00b
n00b


Joined: 12 Oct 2005
Posts: 73
Location: Lille - France

PostPosted: Sun Mar 03, 2019 6:54 pm    Post subject: [Solved] [Goodix Touchscreen] Libinput Reply with quote

Hello,

I have a laptop (one mix 2 yoga) with a i2c goodix touchscreen witch work perfectly with ubuntu-mate live CD, but on gentoo i'm unable to make the touchscreen as expected : It works but like a touchpad (you can't scroll by sliding finger on the screen, instead it select the text.

After search it seems that these 2 options were the right to select :

Option "Tapping" "true"
Option "TappingDrag" "true"

Now I created a file : /etc/X11/xorg.conf.d/99-touchscreen.conf

Code:
Section "InputClass"
  Identifier    "TouchScreen"
  MatchProduct  "Goodix Capacitive TouchScreen"
  Driver        "libinput"
  Option        "Tapping" "true"
  Option        "TappingDrag" "true"
  Option        "TransformationMatrix"   "0 1 0 -1 0 1 0 0 1"
EndSection


option "TransformationMatrix" is well applied but not these 2 :
Option "Tapping" "true"
Option "TappingDrag" "true"


It seems these cannot be selected on this device as seens bellow

Tap-to-click: n/a
Tap-and-drag: n/a

full output of libinput list-devices for this device :

Code:
Device:           Goodix Capacitive TouchScreen
Kernel:           /dev/input/event12
Group:            7
Seat:             seat0, default
Capabilities:     keyboard touch
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      identity matrix
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   n/a
Rotation:         n/a



Something strange, device is listed in xinput --list as :

Code:
 ↳ AT Translated Set 2 keyboard              id=12   [slave  keyboard (3)]


full output :

Code:
⎡ Virtual core pointer                          id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Logitech Logitech USB Optical Mouse       id=10   [slave  pointer  (2)]
⎜   ↳ FocalTechPS/2 FocalTech Touchpad          id=13   [slave  pointer  (2)]
⎣ Virtual core keyboard                         id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Asus Wireless Radio Control               id=7    [slave  keyboard (3)]
    ↳ Video Bus                                 id=8    [slave  keyboard (3)]
    ↳ Sleep Button                              id=9    [slave  keyboard (3)]
    ↳ Asus WMI hotkeys                          id=11   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=12   [slave  keyboard (3)]


so maybe it's recognized as a keyboard so the Tap missing options ??

here is the corresponding portion of Xorg.0.log :

Code:
[  8111.091] (II) event10 - Logitech M585/M590: device is a keyboard
[  8111.092] (II) config/udev: Adding input device Logitech M585/M590 (/dev/input/mouse1)
[  8111.092] (II) No input driver specified, ignoring this device.
[  8111.092] (II) This device may have been added with another device file.
[  8111.092] (II) config/udev: Adding input device Goodix Capacitive TouchScreen (/dev/input/event12)
[  8111.092] (**) Goodix Capacitive TouchScreen: Applying InputClass "libinput keyboard catchall"
[  8111.092] (**) Goodix Capacitive TouchScreen: Applying InputClass "libinput touchscreen catchall"
[  8111.092] (**) Goodix Capacitive TouchScreen: Applying InputClass "TouchScreen"
[  8111.092] (II) Using input driver 'libinput' for 'Goodix Capacitive TouchScreen'
[  8111.092] (**) Goodix Capacitive TouchScreen: always reports core events
[  8111.092] (**) Option "Device" "/dev/input/event12"
[  8111.092] (**) Option "_source" "server/udev"
[  8111.092] (II) event12 - Goodix Capacitive TouchScreen: is tagged by udev as: Keyboard Touchscreen
[  8111.092] (II) event12 - Goodix Capacitive TouchScreen: device is a keyboard
[  8111.093] (II) event12 - Goodix Capacitive TouchScreen: device is a touch device
[  8111.093] (II) event12 - Goodix Capacitive TouchScreen: device removed
[  8111.110] (II) libinput: Goodix Capacitive TouchScreen: needs a virtual subdevice
[  8111.110] (**) Option "config_info" "udev:/sys/devices/pci0000:00/0000:00:15.2/i2c_designware.2/i2c-8/i2c-GDIX1001:00/input/input19/event12"
[  8111.110] (II) XINPUT: Adding extended input device "Goodix Capacitive TouchScreen" (type: TOUCHSCREEN, id 16)
[  8111.110] (**) Option "AccelerationScheme" "none"
[  8111.110] (**) Goodix Capacitive TouchScreen: (accel) selected scheme none/0
[  8111.110] (**) Goodix Capacitive TouchScreen: (accel) acceleration factor: 2.000
[  8111.110] (**) Goodix Capacitive TouchScreen: (accel) acceleration threshold: 4
[  8111.110] (**) Option "TransformationMatrix" "0 1 0 -1 0 1 0 0 1"
[  8111.110] (II) event12 - Goodix Capacitive TouchScreen: is tagged by udev as: Keyboard Touchscreen
[  8111.110] (II) event12 - Goodix Capacitive TouchScreen: device is a keyboard
[  8111.110] (II) event12 - Goodix Capacitive TouchScreen: device is a touch device
[  8111.110] (II) config/udev: Adding input device Goodix Capacitive TouchScreen (/dev/input/mouse2)
[  8111.111] (**) Goodix Capacitive TouchScreen: Applying InputClass "TouchScreen"
[  8111.111] (II) Using input driver 'libinput' for 'Goodix Capacitive TouchScreen'
[  8111.111] (**) Goodix Capacitive TouchScreen: always reports core events
[  8111.111] (**) Option "Device" "/dev/input/mouse2"
[  8111.111] (**) Option "_source" "server/udev"
[  8111.131] (II) mouse2  - failed to create input device '/dev/input/mouse2'.
[  8111.131] (EE) libinput: Goodix Capacitive TouchScreen: Failed to create a device for /dev/input/mouse2
[  8111.131] (EE) PreInit returned 2 for "Goodix Capacitive TouchScreen"
[  8111.131] (II) UnloadModule: "libinput"
[  8111.131] (II) config/udev: Adding input device HDA Intel PCH Mic (/dev/input/event13)
[  8111.131] (II) No input driver specified, ignoring this device.
[  8111.131] (II) This device may have been added with another device file.
[  8111.131] (II) config/udev: Adding input device HDA Intel PCH Headphone (/dev/input/event1
.........
........
[  8112.278] (**) Goodix Capacitive TouchScreen: Applying InputClass "libinput keyboard catchall"
[  8112.278] (**) Goodix Capacitive TouchScreen: Applying InputClass "libinput touchscreen catchall"
[  8112.278] (**) Goodix Capacitive TouchScreen: Applying InputClass "TouchScreen"
[  8112.278] (II) Using input driver 'libinput' for 'Goodix Capacitive TouchScreen'
[  8112.278] (**) Goodix Capacitive TouchScreen: always reports core events
[  8112.278] (**) Option "Device" "/dev/input/event12"
[  8112.278] (**) Option "_source" "_driver/libinput"
[  8112.278] (II) libinput: Goodix Capacitive TouchScreen: is a virtual subdevice
[  8112.278] (**) Option "config_info" "udev:/sys/devices/pci0000:00/0000:00:15.2/i2c_designware.2/i2c-8/i2c-GDIX1001:00/input/input19/event12"
[  8112.278] (II) XINPUT: Adding extended input device "Goodix Capacitive TouchScreen" (type: KEYBOARD, id 19)
[  9357.406] (II) event3  - Power Button: device removed
[  9357.414] (II) event11 - Video Bus: device removed
[  9357.421] (II) event2  - Power Button: device removed
[  9357.429] (II) event1  - Sleep Button: device removed
[  9357.437] (II) event5  - HAILUCK CO.,LTD USB KEYBOARD: device removed
[  9357.445] (II) event6  - HAILUCK CO.,LTD USB KEYBOARD Mouse: device removed
[  9357.461] (II) event7  - HAILUCK CO.,LTD USB KEYBOARD System Control: device removed
[  9357.469] (II) event8  - HAILUCK CO.,LTD USB KEYBOARD Consumer Control: device removed
[  9357.477] (II) event9  - HAILUCK CO.,LTD USB KEYBOARD Wireless Radio Control: device removed
[  9357.494] (II) event4  - AT Translated Set 2 keyboard: device removed
[  9357.503] (II) event10 - Logitech M585/M590: device removed
[  9357.510] (II) event12 - Goodix Capacitive TouchScreen: device removed


If you have some idea for this problem.... :D Thank you
Back to top
View user's profile Send private message
rem5
n00b
n00b


Joined: 12 Oct 2005
Posts: 73
Location: Lille - France

PostPosted: Thu Mar 07, 2019 7:48 am    Post subject: Reply with quote

This is solved as there is no problem :oops:

first my report is false as execute xinput by ssh is evidently not the same.

Second there is no problem, touchscreen works as expected, just by example firefox who don't behave as expected is a firefox config and not a "general" config like I was thinking...


So for this point I juts have to read first line of firefox gentoo wiki :

Code:
Enabling multitouch
Xinput2 scrolling

This brings touch scrolling and multitouch support for Firefox:

MOZ_USE_XINPUT2 environment variable has to be set to a value of 1 in /etc/env.d/80firefox, or just before launching firefox in a shell. for example:
user $MOZ_USE_XINPUT2="1" firefox


So I just feel embarrassed :oops:, the worst is I search for the solution for hours before posting
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum