Сенсорный экран распознается как мышь

Я подключил сенсорный экран 3M к компьютеру Linux. Похоже, он распознает его как мышь. Вот мой xinput вывод: xinput ⎡ Virtual core pointer id=2 [master pointer (3)] ⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)] ⎜ ↳ Logitech USB Optical Mouse id=13 [slave pointer (2)] ⎜ ↳ 3M 3M USB Touchscreen - 36955 id=12 [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)] ↳ Video Bus id=7 [slave keyboard (3)] ↳ Video Bus id=8 [slave keyboard (3)] ↳ Power Button id=9 [slave keyboard (3)] ↳ Logitech USB Keyboard id=10 [slave keyboard (3)] ↳ Logitech USB Keyboard id=11 [slave keyboard (3)] ↳ HP WMI hotkeys id=14 [slave keyboard (3)

После того, как # modprobe -r usbtouchscreen касающееся устройство перестает работать.

В Windows 7 он работает после установки драйвера с этого сайта, поэтому я также попытался установить Linux-драйвер отсюда (Linux, Single Touch, 64 бит). Я думаю, что процесс установки завершился неудачно, так как он прерывается сразу после принятия лицензии (с кодом выхода 0).

Я тестирую свой сенсорный экран с на этом сайте (также работает на Windows, работа в Ubuntu). Отладка показывает, что вход мультитач генерирует события мыши.

Я использую Ubuntu 16.04 с ядром 4.10.0-35-generic и пробовал среды Unity и Cinnamon. Мне нужна эта работа для программирования.

EDIT:

Выход некоторых диагностических инструментов:

# lsinput ...some other devices... /dev/input/event12 bustype : BUS_USB vendor : 0x596 product : 0x1 version : 1088 name : "3M 3M USB Touchscreen - 36955" phys : "usb-0000:00:14.0-3/input0" bits ev : EV_SYN EV_KEY EV_ABS # mtdev-test /dev/input/event12 015ee1f66c7c 00 1 014a 1 015ee1f66c7c 00 3 0000 12183 015ee1f66c7c 00 3 0001 7962 015ee1f66c7c 00 0 0000 0 015ee1f66c80 00 3 0000 12193 ... etc ...

EDIT:

$ xinput list-props 12 Device '3M 3M USB Touchscreen - 36955': Device Enabled (143): 1 Coordinate Transformation Matrix (145): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000 Device Accel Profile (268): 0 Device Accel Constant Deceleration (269): 1.000000 Device Accel Adaptive Deceleration (270): 1.000000 Device Accel Velocity Scaling (271): 10.000000 Device Product ID (262): 1430, 1 Device Node (263): "/dev/input/event12" Evdev Axis Inversion (272): 0, 0 Evdev Axis Calibration (273): Evdev Axes Swap (274): 0 Axis Labels (275): "Abs X" (266), "Abs Y" (267) Button Labels (276): "Button Unknown" (265), "Button Unknown" (265), "Button Unknown" (265), "Button Wheel Up" (149), "Button Wheel Down" (150) Evdev Scrolling Distance (277): 0, 0, 0 Evdev Middle Button Emulation (278): 0 Evdev Middle Button Timeout (279): 50 Evdev Third Button Emulation (280): 0 Evdev Third Button Emulation Timeout (281): 1000 Evdev Third Button Emulation Button (282): 3 Evdev Third Button Emulation Threshold (283): 20 Evdev Wheel Emulation (284): 0 Evdev Wheel Emulation Axes (285): 0, 0, 4, 5 Evdev Wheel Emulation Inertia (286): 10 Evdev Wheel Emulation Timeout (287): 200 Evdev Wheel Emulation Button (288): 4 Evdev Drag Lock Buttons (289): 0

И evtest:

sudo evtest /dev/input/event12 Input driver version is 1.0.1 Input device ID: bus 0x3 vendor 0x596 product 0x1 version 0x440 Input device name: "3M 3M USB Touchscreen - 36955" Supported events: Event type 0 (EV_SYN) Event type 1 (EV_KEY) Event code 330 (BTN_TOUCH) Event type 3 (EV_ABS) Event code 0 (ABS_X) Value 6684 Min 0 Max 16384 Event code 1 (ABS_Y) Value 6185 Min 0 Max 16384 Properties: Testing ... (interrupt to exit) Event: time 1507280785.112401, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 1 Event: time 1507280785.112401, type 3 (EV_ABS), code 0 (ABS_X), value 5971 Event: time 1507280785.112401, type 3 (EV_ABS), code 1 (ABS_Y), value 6240 Event: time 1507280785.112401, -------------- SYN_REPORT ------------ Event: time 1507280785.116364, type 3 (EV_ABS), code 0 (ABS_X), value 5953 Event: time 1507280785.116364, -------------- SYN_REPORT ------------ Event: time 1507280785.118359, type 3 (EV_ABS), code 0 (ABS_X), value 5968 Event: time 1507280785.118359, -------------- SYN_REPORT ------------ # ........... Event: time 1507280785.156333, -------------- SYN_REPORT ------------ Event: time 1507280785.158356, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 0 Event: time 1507280785.158356, -------------- SYN_REPORT ------------

3
задан 6 October 2017 в 12:09

2 ответа

Вам нужно будет установить новое ядро, чтобы проверить, есть ли у него прошивка для него. Прежде всего, проверьте, что является текущим ядром в вашей системе, с помощью команды

uname -a

Вы можете вручную установить ядро ​​4.13 в качестве его текущего стабильного.

Шаг 1: Продолжить к ядру ubuntu 4.13

Шаг 2. На основе вашего uname -a убедитесь, что ваша система / os arch, Если это был X86_64, то это был 64-разрядный, если это был X86, тогда его 32-битный .

Шаг 3. Создайте папку где-нибудь в вашей системе, называя ее 4.13, вы также можете использовать команду

mkdir 4.13

Шаг 4: Войдите в каталог 4.13, теперь выберите файлы на основе вашей арки

64-битный список

Если его 64 бита выбирают это, то есть X86_64:

ubuntu ядро 4.13

http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.13/linux-headers-4.13.0-041300-generic_4.13.0-041300.201709031731_amd64 .deb

http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.13/linux-headers-4.13.0-041300-generic_4.13.0-041300.201709031731_amd64. deb

32 бит

Если его 32 бита aka X86 затем выберите это:

http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.13/linux-headers -4.13.0-041300_4.13.0-041300.201709031731_all.deb

http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.13/linux-headers-4.13. 0-041300_4.13.0-041300.201709031731_all.deb

http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.13/linux-image-4.13.0- 041300-generic_4.13.0-041300.201709031731_i386.deb

Вы можете сохранить любой список в текстовом файле, например, «kernel_files.list». Теперь в терминале используйте wget для загрузки этих файлов.

wget -i kernel_files.list

Это будет загружать весь список с помощью wget.

Шаг 5: Теперь приступайте к установке их

sudo dpkg -i *.deb

Это приведет к установке всех трех компонентов ядра вместе, наконец, вы увидите, что все ядра скомпилированы.

Шаг 6: Перезагрузите вашу систему, чтобы использовать новое ядро ​​

reboot

Шаг 7: проверьте установку нового ядра, выполнив команду

uname -a

. Теперь проверьте правильность работы сенсорного экрана.

Проверьте, является ли система получая входы через него с помощью

dmesg

Если он все еще не работает, установите

make,gcc,g++,build-utils

, выполнив команду

sudo apt install make gcc g++ build-utils

, а затем установите (! d36)

Примечание # 1: Если вы не уверены в установке нового ядра вручную, вы можете использовать ukuu вместо этого,

Для установки ukuu

sudo apt-add-repository -y ppa:teejee2008/ppa sudo apt-get update sudo apt-get install ukuu

Затем запустите ukuu и установите ядро ​​4.13 с помощью ukuu dashboard.

Примечание # 2: вы всегда можете sw возвратитесь к предыдущему ядру, выпустив C во время загрузки вашего компьютера на основе Ubuntu.

Примечание # 3.

Примечание # 4: используйте сенсорное перо, так как оно было бы более точным, чем ваш палец.

Не пытайтесь использовать ваш сенсорный экран и экран без пыли, масла и грязи и т. Д.

Примечание # 5: ядро ​​4.14 находится под тестированием, поэтому не устанавливайте это

1
ответ дан 18 July 2018 в 05:52

Вам нужно будет установить новое ядро, чтобы проверить, есть ли у него прошивка для него. Прежде всего, проверьте, что является текущим ядром в вашей системе, с помощью команды

uname -a

Вы можете вручную установить ядро ​​4.13 в качестве его текущего стабильного.

Шаг 1: Продолжить к ядру ubuntu 4.13

Шаг 2. На основе вашего uname -a убедитесь, что ваша система / os arch, Если это был X86_64, то это был 64-разрядный, если это был X86, тогда его 32-битный .

Шаг 3. Создайте папку где-нибудь в вашей системе, называя ее 4.13, вы также можете использовать команду

mkdir 4.13

Шаг 4: Войдите в каталог 4.13, теперь выберите файлы на основе вашей арки

64-битный список

Если его 64 бита выбирают это, то есть X86_64:

ubuntu ядро 4.13

http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.13/linux-headers-4.13.0-041300-generic_4.13.0-041300.201709031731_amd64 .deb

http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.13/linux-headers-4.13.0-041300-generic_4.13.0-041300.201709031731_amd64. deb

32 бит

Если его 32 бита aka X86 затем выберите это:

http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.13/linux-headers -4.13.0-041300_4.13.0-041300.201709031731_all.deb

http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.13/linux-headers-4.13. 0-041300_4.13.0-041300.201709031731_all.deb

http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.13/linux-image-4.13.0- 041300-generic_4.13.0-041300.201709031731_i386.deb

Вы можете сохранить любой список в текстовом файле, например, «kernel_files.list». Теперь в терминале используйте wget для загрузки этих файлов.

wget -i kernel_files.list

Это будет загружать весь список с помощью wget.

Шаг 5: Теперь приступайте к установке их

sudo dpkg -i *.deb

Это приведет к установке всех трех компонентов ядра вместе, наконец, вы увидите, что все ядра скомпилированы.

Шаг 6: Перезагрузите вашу систему, чтобы использовать новое ядро ​​

reboot

Шаг 7: проверьте установку нового ядра, выполнив команду

uname -a

. Теперь проверьте правильность работы сенсорного экрана.

Проверьте, является ли система получая входы через него с помощью

dmesg

Если он все еще не работает, установите

make,gcc,g++,build-utils

, выполнив команду

sudo apt install make gcc g++ build-utils

, а затем установите (! d36)

Примечание # 1: Если вы не уверены в установке нового ядра вручную, вы можете использовать ukuu вместо этого,

Для установки ukuu

sudo apt-add-repository -y ppa:teejee2008/ppa sudo apt-get update sudo apt-get install ukuu

Затем запустите ukuu и установите ядро ​​4.13 с помощью ukuu dashboard.

Примечание # 2: вы всегда можете sw возвратитесь к предыдущему ядру, выпустив C во время загрузки вашего компьютера на основе Ubuntu.

Примечание # 3.

Примечание # 4: используйте сенсорное перо, так как оно было бы более точным, чем ваш палец.

Не пытайтесь использовать ваш сенсорный экран и экран без пыли, масла и грязи и т. Д.

Примечание # 5: ядро ​​4.14 находится под тестированием, поэтому не устанавливайте это

1
ответ дан 24 July 2018 в 18:27
  • 1
    Я знаю, как обновить ядро, но это не решает мою проблему. – jaskmar 12 October 2017 в 16:25
  • 2
    если ядро ​​и драйверы не исправляют проблему, то не могут сказать – SIDDHARTH 12 October 2017 в 22:14

Другие вопросы по тегам:

Похожие вопросы: