@coiby xu,

with my elan touchpad ,

[ra@localhost ~]$ sudo pip install hid-tools
[sudo] password for ra: 
WARNING: Running pip install with root privileges is generally not a good idea. 
Try `pip install --user` instead.
Collecting hid-tools
  Using cached hid-tools-0.2.tar.gz (51 kB)
Collecting parse
  Downloading parse-1.18.0.tar.gz (30 kB)
Collecting pyudev
  Using cached pyudev-0.22.0.tar.gz (85 kB)
Requirement already satisfied: six in /usr/lib/python3.9/site-packages (from 
pyudev->hid-tools) (1.15.0)
Using legacy 'setup.py install' for hid-tools, since package 'wheel' is not 
installed.
Using legacy 'setup.py install' for parse, since package 'wheel' is not 
installed.
Using legacy 'setup.py install' for pyudev, since package 'wheel' is not 
installed.
Installing collected packages: parse, pyudev, hid-tools
    Running setup.py install for parse ... done
    Running setup.py install for pyudev ... done
    Running setup.py install for hid-tools ... done
Successfully installed hid-tools-0.2 parse-1.18.0 pyudev-0.22.0
[ra@localhost ~]$ sudo hid-recorder
Available devices:
/dev/hidraw0:   Microsoft Microsoft® Nano Transceiver v1.0
/dev/hidraw1:   Microsoft Microsoft® Nano Transceiver v1.0
/dev/hidraw2:   Microsoft Microsoft® Nano Transceiver v1.0
/dev/hidraw3:   MSFT0001:00 04F3:3140
/dev/hidraw4:   ITE Tech. Inc. ITE Device(8910)
Select the device event number [0-4]: 3
# MSFT0001:00 04F3:3140
# 0x05, 0x01,                    // Usage Page (Generic Desktop)        0
# 0x09, 0x02,                    // Usage (Mouse)                       2
# 0xa1, 0x01,                    // Collection (Application)            4
# 0x85, 0x01,                    //  Report ID (1)                      6
# 0x09, 0x01,                    //  Usage (Pointer)                    8
# 0xa1, 0x00,                    //  Collection (Physical)              10
# 0x05, 0x09,                    //   Usage Page (Button)               12
# 0x19, 0x01,                    //   Usage Minimum (1)                 14
# 0x29, 0x02,                    //   Usage Maximum (2)                 16
# 0x15, 0x00,                    //   Logical Minimum (0)               18
# 0x25, 0x01,                    //   Logical Maximum (1)               20
# 0x75, 0x01,                    //   Report Size (1)                   22
# 0x95, 0x02,                    //   Report Count (2)                  24
# 0x81, 0x02,                    //   Input (Data,Var,Abs)              26
# 0x95, 0x06,                    //   Report Count (6)                  28
# 0x81, 0x03,                    //   Input (Cnst,Var,Abs)              30
# 0x05, 0x01,                    //   Usage Page (Generic Desktop)      32
# 0x09, 0x30,                    //   Usage (X)                         34
# 0x09, 0x31,                    //   Usage (Y)                         36
# 0x09, 0x38,                    //   Usage (Wheel)                     38
# 0x15, 0x81,                    //   Logical Minimum (-127)            40
# 0x25, 0x7f,                    //   Logical Maximum (127)             42
# 0x75, 0x08,                    //   Report Size (8)                   44
# 0x95, 0x03,                    //   Report Count (3)                  46
# 0x81, 0x06,                    //   Input (Data,Var,Rel)              48
# 0x05, 0x0c,                    //   Usage Page (Consumer Devices)     50
# 0x0a, 0x38, 0x02,              //   Usage (AC Pan)                    52
# 0x95, 0x01,                    //   Report Count (1)                  55
# 0x81, 0x06,                    //   Input (Data,Var,Rel)              57
# 0x75, 0x08,                    //   Report Size (8)                   59
# 0x95, 0x03,                    //   Report Count (3)                  61
# 0x81, 0x03,                    //   Input (Cnst,Var,Abs)              63
# 0xc0,                          //  End Collection                     65
# 0x06, 0x00, 0xff,              //  Usage Page (Vendor Defined Page 1) 66
# 0x85, 0x0d,                    //  Report ID (13)                     69
# 0x09, 0xc5,                    //  Usage (Vendor Usage 0xc5)          71
# 0x15, 0x00,                    //  Logical Minimum (0)                73
# 0x26, 0xff, 0x00,              //  Logical Maximum (255)              75
# 0x75, 0x08,                    //  Report Size (8)                    78
# 0x95, 0x04,                    //  Report Count (4)                   80
# 0xb1, 0x02,                    //  Feature (Data,Var,Abs)             82
# 0x85, 0x0c,                    //  Report ID (12)                     84
# 0x09, 0xc6,                    //  Usage (Vendor Usage 0xc6)          86
# 0x96, 0x10, 0x04,              //  Report Count (1040)                88
# 0x75, 0x08,                    //  Report Size (8)                    91
# 0xb1, 0x02,                    //  Feature (Data,Var,Abs)             93
# 0x85, 0x0b,                    //  Report ID (11)                     95
# 0x09, 0xc7,                    //  Usage (Vendor Usage 0xc7)          97
# 0x95, 0x42,                    //  Report Count (66)                  99
# 0x75, 0x08,                    //  Report Size (8)                    101
# 0xb1, 0x02,                    //  Feature (Data,Var,Abs)             103
# 0x09, 0x01,                    //  Usage (Vendor Usage 1)             105
# 0x85, 0x5d,                    //  Report ID (93)                     107
# 0x95, 0x1f,                    //  Report Count (31)                  109
# 0x75, 0x08,                    //  Report Size (8)                    111
# 0x81, 0x06,                    //  Input (Data,Var,Rel)               113
# 0xc0,                          // End Collection                      115
# 0x05, 0x0d,                    // Usage Page (Digitizers)             116
# 0x09, 0x05,                    // Usage (Touch Pad)                   118
# 0xa1, 0x01,                    // Collection (Application)            120
# 0x85, 0x04,                    //  Report ID (4)                      122
# 0x09, 0x22,                    //  Usage (Finger)                     124
# 0xa1, 0x02,                    //  Collection (Logical)               126
# 0x15, 0x00,                    //   Logical Minimum (0)               128
# 0x25, 0x01,                    //   Logical Maximum (1)               130
# 0x09, 0x47,                    //   Usage (Confidence)                132
# 0x09, 0x42,                    //   Usage (Tip Switch)                134
# 0x95, 0x02,                    //   Report Count (2)                  136
# 0x75, 0x01,                    //   Report Size (1)                   138
# 0x81, 0x02,                    //   Input (Data,Var,Abs)              140
# 0x75, 0x01,                    //   Report Size (1)                   142
# 0x95, 0x02,                    //   Report Count (2)                  144
# 0x81, 0x03,                    //   Input (Cnst,Var,Abs)              146
# 0x95, 0x01,                    //   Report Count (1)                  148
# 0x75, 0x04,                    //   Report Size (4)                   150
# 0x25, 0x0f,                    //   Logical Maximum (15)              152
# 0x09, 0x51,                    //   Usage (Contact Id)                154
# 0x81, 0x02,                    //   Input (Data,Var,Abs)              156
# 0x05, 0x01,                    //   Usage Page (Generic Desktop)      158
# 0x15, 0x00,                    //   Logical Minimum (0)               160
# 0x26, 0x89, 0x0c,              //   Logical Maximum (3209)            162
# 0x75, 0x10,                    //   Report Size (16)                  165
# 0x55, 0x0e,                    //   Unit Exponent (-2)                167
# 0x65, 0x13,                    //   Unit (Inch,EngLinear)             169
# 0x09, 0x30,                    //   Usage (X)                         171
# 0x35, 0x00,                    //   Physical Minimum (0)              173
# 0x46, 0x91, 0x01,              //   Physical Maximum (401)            175
# 0x95, 0x01,                    //   Report Count (1)                  178
# 0x81, 0x02,                    //   Input (Data,Var,Abs)              180
# 0x46, 0x06, 0x01,              //   Physical Maximum (262)            182
# 0x26, 0x31, 0x08,              //   Logical Maximum (2097)            185
# 0x26, 0x31, 0x08,              //   Logical Maximum (2097)            188
# 0x09, 0x31,                    //   Usage (Y)                         191
# 0x81, 0x02,                    //   Input (Data,Var,Abs)              193
# 0x05, 0x0d,                    //   Usage Page (Digitizers)           195
# 0x15, 0x00,                    //   Logical Minimum (0)               197
# 0x25, 0x64,                    //   Logical Maximum (100)             199
# 0x95, 0x03,                    //   Report Count (3)                  201
# 0xc0,                          //  End Collection                     203
# 0x55, 0x0c,                    //  Unit Exponent (-4)                 204
# 0x66, 0x01, 0x10,              //  Unit (Seconds,SILinear)            206
# 0x47, 0xff, 0xff, 0x00, 0x00,  //  Physical Maximum (65535)           209
# 0x27, 0xff, 0xff, 0x00, 0x00,  //  Logical Maximum (65535)            214
# 0x75, 0x10,                    //  Report Size (16)                   219
# 0x95, 0x01,                    //  Report Count (1)                   221
# 0x09, 0x56,                    //  Usage (Scan Time)                  223
# 0x81, 0x02,                    //  Input (Data,Var,Abs)               225
# 0x09, 0x54,                    //  Usage (Contact Count)              227
# 0x25, 0x7f,                    //  Logical Maximum (127)              229
# 0x95, 0x01,                    //  Report Count (1)                   231
# 0x75, 0x08,                    //  Report Size (8)                    233
# 0x81, 0x02,                    //  Input (Data,Var,Abs)               235
# 0x05, 0x09,                    //  Usage Page (Button)                237
# 0x09, 0x01,                    //  Usage (Vendor Usage 0x01)          239
# 0x25, 0x01,                    //  Logical Maximum (1)                241
# 0x75, 0x01,                    //  Report Size (1)                    243
# 0x95, 0x01,                    //  Report Count (1)                   245
# 0x81, 0x02,                    //  Input (Data,Var,Abs)               247
# 0x95, 0x07,                    //  Report Count (7)                   249
# 0x81, 0x03,                    //  Input (Cnst,Var,Abs)               251
# 0x09, 0xc5,                    //  Usage (Vendor Usage 0xc5)          253
# 0x75, 0x08,                    //  Report Size (8)                    255
# 0x95, 0x02,                    //  Report Count (2)                   257
# 0x81, 0x03,                    //  Input (Cnst,Var,Abs)               259
# 0x05, 0x0d,                    //  Usage Page (Digitizers)            261
# 0x85, 0x02,                    //  Report ID (2)                      263
# 0x09, 0x55,                    //  Usage (Contact Max)                265
# 0x09, 0x59,                    //  Usage (Button Type)                267
# 0x75, 0x04,                    //  Report Size (4)                    269
# 0x95, 0x02,                    //  Report Count (2)                   271
# 0x25, 0x0f,                    //  Logical Maximum (15)               273
# 0xb1, 0x02,                    //  Feature (Data,Var,Abs)             275
# 0x85, 0x07,                    //  Report ID (7)                      277
# 0x09, 0x60,                    //  Usage (Vendor Usage 0x60)          279
# 0x75, 0x01,                    //  Report Size (1)                    281
# 0x95, 0x01,                    //  Report Count (1)                   283
# 0x15, 0x00,                    //  Logical Minimum (0)                285
# 0x25, 0x01,                    //  Logical Maximum (1)                287
# 0xb1, 0x02,                    //  Feature (Data,Var,Abs)             289
# 0x95, 0x0f,                    //  Report Count (15)                  291
# 0xb1, 0x03,                    //  Feature (Cnst,Var,Abs)             293
# 0x06, 0x00, 0xff,              //  Usage Page (Vendor Defined Page 1) 295
# 0x06, 0x00, 0xff,              //  Usage Page (Vendor Defined Page 1) 298
# 0x85, 0x06,                    //  Report ID (6)                      301
# 0x09, 0xc5,                    //  Usage (Vendor Usage 0xc5)          303
# 0x15, 0x00,                    //  Logical Minimum (0)                305
# 0x26, 0xff, 0x00,              //  Logical Maximum (255)              307
# 0x75, 0x08,                    //  Report Size (8)                    310
# 0x96, 0x00, 0x01,              //  Report Count (256)                 312
# 0xb1, 0x02,                    //  Feature (Data,Var,Abs)             315
# 0xc0,                          // End Collection                      317
# 0x05, 0x0d,                    // Usage Page (Digitizers)             318
# 0x09, 0x0e,                    // Usage (Device Configuration)        320
# 0xa1, 0x01,                    // Collection (Application)            322
# 0x85, 0x03,                    //  Report ID (3)                      324
# 0x09, 0x22,                    //  Usage (Finger)                     326
# 0xa1, 0x00,                    //  Collection (Physical)              328
# 0x09, 0x52,                    //   Usage (Inputmode)                 330
# 0x15, 0x00,                    //   Logical Minimum (0)               332
# 0x25, 0x0a,                    //   Logical Maximum (10)              334
# 0x75, 0x08,                    //   Report Size (8)                   336
# 0x95, 0x02,                    //   Report Count (2)                  338
# 0xb1, 0x02,                    //   Feature (Data,Var,Abs)            340
# 0xc0,                          //  End Collection                     342
# 0x09, 0x22,                    //  Usage (Finger)                     343
# 0xa1, 0x00,                    //  Collection (Physical)              345
# 0x85, 0x05,                    //   Report ID (5)                     347
# 0x09, 0x57,                    //   Usage (Surface Switch)            349
# 0x09, 0x58,                    //   Usage (Button Switch)             351
# 0x15, 0x00,                    //   Logical Minimum (0)               353
# 0x75, 0x01,                    //   Report Size (1)                   355
# 0x95, 0x02,                    //   Report Count (2)                  357
# 0x25, 0x03,                    //   Logical Maximum (3)               359
# 0xb1, 0x02,                    //   Feature (Data,Var,Abs)            361
# 0x95, 0x0e,                    //   Report Count (14)                 363
# 0xb1, 0x03,                    //   Feature (Cnst,Var,Abs)            365
# 0xc0,                          //  End Collection                     367
# 0xc0,                          // End Collection                      368
# 
R: 369 05 01 09 02 a1 01 85 01 09 01 a1 00 05 09 19 01 29 02 15 00 25 01 75 01 
95 02 81 02 95 06 81 03 05 01 09 30 09 31 09 38 15 81 25 7f 75 08 95 03 81 06 
05 0c 0a 38 02 95 01 81 06 75 08 95 03 81 03 c0 06 00 ff 85 0d 09 c5 15 00 26 
ff 00 75 08 95 04 b1 02 85 0c 09 c6 96 10 04 75 08 b1 02 85 0b 09 c7 95 42 75 
08 b1 02 09 01 85 5d 95 1f 75 08 81 06 c0 05 0d 09 05 a1 01 85 04 09 22 a1 02 
15 00 25 01 09 47 09 42 95 02 75 01 81 02 75 01 95 02 81 03 95 01 75 04 25 0f 
09 51 81 02 05 01 15 00 26 89 0c 75 10 55 0e 65 13 09 30 35 00 46 91 01 95 01 
81 02 46 06 01 26 31 08 26 31 08 09 31 81 02 05 0d 15 00 25 64 95 03 c0 55 0c 
66 01 10 47 ff ff 00 00 27 ff ff 00 00 75 10 95 01 09 56 81 02 09 54 25 7f 95 
01 75 08 81 02 05 09 09 01 25 01 75 01 95 01 81 02 95 07 81 03 09 c5 75 08 95 
02 81 03 05 0d 85 02 09 55 09 59 75 04 95 02 25 0f b1 02 85 07 09 60 75 01 95 
01 15 00 25 01 b1 02 95 0f b1 03 06 00 ff 06 00 ff 85 06 09 c5 15 00 26 ff 00 
75 08 96 00 01 b1 02 c0 05 0d 09 0e a1 01 85 03 09 22 a1 00 09 52 15 00 25 0a 
75 08 95 02 b1 02 c0 09 22 a1 00 85 05 09 57 09 58 15 00 75 01 95 02 25 03 b1 
02 95 0e b1 03 c0 c0
N: MSFT0001:00 04F3:3140
I: 18 04f3 3140


==========================
and an another terminal window:

[ra@localhost ~]$ su
Password: 
[root@localhost ra]# cd /sys/class/gpio
bash: cd: /sys/class/gpio: No such file or directory
[root@localhost ra]# cd /sys
[root@localhost sys]# cd class
[root@localhost class]# ls
ata_device   drm             mdio_bus        pwm           tpm
ata_link     drm_dp_aux_dev  mem             raw           tpmrm
ata_port     extcon          misc            rc            tty
backlight    graphics        msr             regulator     typec
bdi          hidraw          net             remoteproc    typec_mux
block        hwmon           nvme            rfkill        usbmisc
bluetooth    i2c-adapter     nvme-subsystem  rtc           usbmon
bsg          ieee80211       pci_bus         scsi_device   vc
cpuid        input           pcmcia_socket   scsi_disk     video4linux
devcoredump  intel_scu_ipc   phy             scsi_generic  vtconsole
devfreq      iommu           powercap        scsi_host     wakeup
dma          kfd             power_supply    sound         watchdog
dma_heap     leds            pps             spi_master    wmi_bus
dmi          lirc            ptp             thermal       zram-control
[root@localhost class]# uname -r
5.8.13-300.fc33.x86_64
[root@localhost class]# 

===============================
there is no path:there is no path:

cd /sys/class/gpio/
bash: cd: /sys/class/gpio: No such file or directory

the kernel is original fedora kernel,no other patch apply.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1887190

Title:
  MSFT Touchpad not working on Lenovo Legion-5 15ARH05

To manage notifications about this bug go to:
https://bugs.launchpad.net/pop-os/+bug/1887190/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to