Сенсорный экран и EMC2
- Serg
- Мастер
- Сообщения: 21923
- Зарегистрирован: 17 апр 2012, 14:58
- Репутация: 5181
- Заслуга: c781c134843e0c1a3de9
- Настоящее имя: Сергей
- Откуда: Москва
- Контактная информация:
Re: Сенсорный экран и EMC2
А теперь так:
xinput list-props 9
xinput list-props 9
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
- dberegovoy
- Мастер
- Сообщения: 297
- Зарегистрирован: 16 фев 2014, 21:25
- Репутация: 144
- Контактная информация:
Re: Сенсорный экран и EMC2
Вот.UAVpilot писал(а):А теперь так:
xinput list-props 9
На всякий случай все запросы,т.к. менял компы местами и т.п. безрезультатные эксперементы
Код: Выделить всё
denis@CNC:~$ uname -a
Linux CNC 4.9.0-5-rt-amd64 #1 SMP PREEMPT RT Debian 4.9.65-3+deb9u2 (2018-01-04) x86_64 GNU/Linux
denis@CNC:~$ lsusb
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 003: ID 093a:2510 Pixart Imaging, Inc. Optical Mouse
Bus 003 Device 002: ID 0596:0001 MicroTouch Systems, Inc. Touchscreen
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
denis@CNC:~$ xinput
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ 3M 3M USB Touchscreen - EX II id=9 [slave pointer (2)]
⎜ ↳ PixArt USB Optical Mouse id=10 [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)]
↳ Power Button id=8 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=11 [slave keyboard (3)]
↳ HP WMI hotkeys id=12 [slave keyboard (3)]
denis@CNC:~$ xinput list-props 9
Device '3M 3M USB Touchscreen - EX II':
Device Enabled (136): 1
Coordinate Transformation Matrix (138): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Calibration Matrix (276): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Calibration Matrix Default (277): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Send Events Modes Available (259): 1, 0
libinput Send Events Mode Enabled (260): 0, 0
libinput Send Events Mode Enabled Default (261): 0, 0
Device Node (262): "/dev/input/event11"
Device Product ID (263): 1430, 1
denis@CNC:~$
- Serg
- Мастер
- Сообщения: 21923
- Зарегистрирован: 17 апр 2012, 14:58
- Репутация: 5181
- Заслуга: c781c134843e0c1a3de9
- Настоящее имя: Сергей
- Откуда: Москва
- Контактная информация:
Re: Сенсорный экран и EMC2
Можно попробовать поэкспериментировать с параметрами
Coordinate Transformation Matrix (138)
Calibration Matrix (276)
Calibration Matrix Default (277)
Делается это примерно так:
xinput set-prop 9 138 '1.1, 0.5, ....'
действовать должно сразу без перезагрузок и перезапусков.
Coordinate Transformation Matrix (138)
Calibration Matrix (276)
Calibration Matrix Default (277)
Делается это примерно так:
xinput set-prop 9 138 '1.1, 0.5, ....'
действовать должно сразу без перезагрузок и перезапусков.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
- dberegovoy
- Мастер
- Сообщения: 297
- Зарегистрирован: 16 фев 2014, 21:25
- Репутация: 144
- Контактная информация:
Re: Сенсорный экран и EMC2
РугаетсяUAVpilot писал(а):Делается это примерно так:
Код: Выделить всё
denis@CNC:~$ xinput set-prop 9 138 '1.100000, 0.500000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000'
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 131 (XInputExtension)
Minor opcode of failed request: 57 ()
Value in failed request: 0x8a
Serial number of failed request: 19
Current serial number in output stream: 20
denis@CNC:~$ xinput set-prop 9 138 '0.900000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000'
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 131 (XInputExtension)
Minor opcode of failed request: 57 ()
Value in failed request: 0x8a
Serial number of failed request: 19
Current serial number in output stream: 20
denis@CNC:~$ xinput set-prop 9 276 '0.900000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000'
X Error of failed request: BadMatch (invalid parameter attributes)
Major opcode of failed request: 131 (XInputExtension)
Minor opcode of failed request: 57 ()
Serial number of failed request: 19
Current serial number in output stream: 20
denis@CNC:~$ xinput set-prop 9 277 '0.900000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000'
X Error of failed request: BadAccess (attempt to access private resource denied)
Major opcode of failed request: 131 (XInputExtension)
Minor opcode of failed request: 57 ()
Serial number of failed request: 19
Current serial number in output stream: 20
denis@CNC:~$
- Serg
- Мастер
- Сообщения: 21923
- Зарегистрирован: 17 апр 2012, 14:58
- Репутация: 5181
- Заслуга: c781c134843e0c1a3de9
- Настоящее имя: Сергей
- Откуда: Москва
- Контактная информация:
Re: Сенсорный экран и EMC2
Ну на то он и метод научного тыка, чтобы пробовать разные варианты.
Видимо для 138 разрешены только целые значения, а 277 только для чтения...
Ну и "напрягает" нечётное количество элемеентов. Вполне возможно, что какие-то из них работают как выреключатели - только 0 или 1. А может это и вообще не про калибровку, которая тебе нужна...
Вот пару ссылок нашёл, но там видимо другая версия драйвера/ядра:
http://blog.rot13.org/2013/12/touch-scr ... input.html
https://www.raspberrypi.org/forums/view ... 5&t=111416
Кстати, а в логах Xserver'а что про него пишут?
Видимо для 138 разрешены только целые значения, а 277 только для чтения...
Ну и "напрягает" нечётное количество элемеентов. Вполне возможно, что какие-то из них работают как выреключатели - только 0 или 1. А может это и вообще не про калибровку, которая тебе нужна...
Вот пару ссылок нашёл, но там видимо другая версия драйвера/ядра:
http://blog.rot13.org/2013/12/touch-scr ... input.html
https://www.raspberrypi.org/forums/view ... 5&t=111416
Кстати, а в логах Xserver'а что про него пишут?
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
- dberegovoy
- Мастер
- Сообщения: 297
- Зарегистрирован: 16 фев 2014, 21:25
- Репутация: 144
- Контактная информация:
Re: Сенсорный экран и EMC2
Вот часть лог файлаUAVpilot писал(а):, а в логах Xserver'а что про него пишут?
Код: Выделить всё
[ 19.046] (II) config/udev: Adding input device 3M 3M USB Touchscreen - EX II (/dev/input/event11)
[ 19.046] (**) 3M 3M USB Touchscreen - EX II: Applying InputClass "libinput touchscreen catchall"
[ 19.046] (**) 3M 3M USB Touchscreen - EX II: Applying InputClass "calibration"
[ 19.046] (**) 3M 3M USB Touchscreen - EX II: Applying InputClass "calibration"
[ 19.046] (**) 3M 3M USB Touchscreen - EX II: Applying InputClass "calibration"
[ 19.046] (II) Using input driver 'libinput' for '3M 3M USB Touchscreen - EX II'
[ 19.046] (**) 3M 3M USB Touchscreen - EX II: always reports core events
[ 19.046] (**) Option "Device" "/dev/input/event11"
[ 19.046] (**) Option "_source" "server/udev"
[ 19.047] (II) input device '3M 3M USB Touchscreen - EX II', /dev/input/event11 is tagged by udev as: Touchscreen
[ 19.047] (II) input device '3M 3M USB Touchscreen - EX II', /dev/input/event11 is a touch device
[ 19.088] (**) Option "config_info" "udev:/sys/devices/pci0000:00/0000:00:1a.1/usb3/3-1/3-1:1.0/input/input13/event11"
[ 19.088] (II) XINPUT: Adding extended input device "3M 3M USB Touchscreen - EX II" (type: TOUCHSCREEN, id 9)
[ 19.088] (**) Option "AccelerationScheme" "none"
[ 19.088] (**) 3M 3M USB Touchscreen - EX II: (accel) selected scheme none/0
[ 19.088] (**) 3M 3M USB Touchscreen - EX II: (accel) acceleration factor: 2.000
[ 19.088] (**) 3M 3M USB Touchscreen - EX II: (accel) acceleration threshold: 4
[ 19.089] (II) input device '3M 3M USB Touchscreen - EX II', /dev/input/event11 is tagged by udev as: Touchscreen
[ 19.089] (II) input device '3M 3M USB Touchscreen - EX II', /dev/input/event11 is a touch device
[ 19.090] (II) config/udev: Adding input device 3M 3M USB Touchscreen - EX II (/dev/input/mouse0)
[ 19.090] (**) 3M 3M USB Touchscreen - EX II: Applying InputClass "calibration"
[ 19.090] (**) 3M 3M USB Touchscreen - EX II: Applying InputClass "calibration"
[ 19.090] (**) 3M 3M USB Touchscreen - EX II: Applying InputClass "calibration"
[ 19.090] (II) No input driver specified, ignoring this device.
[ 19.091] (II) This device may have been added with another device file.
Гугля по этому поводу бегло изучил (на сколько смог понять) решения, так в основнмом ограничивались размещением файла 99-calibration.conf или секции которую выдает калибратор в каком то файле, но там системы были другие. Отложилось в голове еще такой момент что кто-то решил вопрос используя в качестве калибратора не xinput_calibrator название уже не помню, погуглю снова.
Еще один момент в 3M мануле сказано что родной драйвер предназначен для ядра 2,6,так же можно скачать драйвер 32битный и 64битный. Я их не пробовал применять, руководсвуясь тем что линукс определяет тачь, значит драйвер к нему есть, ну что бы не навредить. Может стоит попробовать
Пробовал как в статье на которую Вы дали ссылку по одному параметру подкидывать, нули или единички "щупая" авось "выключатель", тоже ругается
Код: Выделить всё
denis@CNC:~$ xinput set-prop 9 138 '0'
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 131 (XInputExtension)
Minor opcode of failed request: 57 ()
Value in failed request: 0x8a
Serial number of failed request: 19
Current serial number in output stream: 20
denis@CNC:~$ xinput set-prop 9 138 '1'
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 131 (XInputExtension)
Minor opcode of failed request: 57 ()
Value in failed request: 0x8a
Serial number of failed request: 19
Current serial number in output stream: 20
- Serg
- Мастер
- Сообщения: 21923
- Зарегистрирован: 17 апр 2012, 14:58
- Репутация: 5181
- Заслуга: c781c134843e0c1a3de9
- Настоящее имя: Сергей
- Откуда: Москва
- Контактная информация:
Re: Сенсорный экран и EMC2
Надо evtest'ом попробовать определить на каком устройстве (/dev/input/...) живёт тач. Возможно его придётся насильно указать.dberegovoy писал(а):Я не шибко в этом волоку, но внимание привлекают последние строки про не тот драйвер, игнорируемое устройство и другой файл...
Конфиг Xserver'а может состоять из нескольких файлов для удобства, например каждая секция в своём файле. 99-calibration.conf - один из таких файлов, поэтому важен не файл, а его содержимое.dberegovoy писал(а):в основнмом ограничивались размещением файла 99-calibration.conf
Там есть и какой-то патч для ядер 3.X, но мне вчера не удалось его скачать и посмотреть, что он делает.dberegovoy писал(а):в 3M мануле сказано что родной драйвер предназначен для ядра 2,6,так же можно скачать драйвер 32битный и 64битный.
Не, там параметр один, просто он состоит из девяти чисел. Нужно указывать их все, а пробовать менять только одно из них за раз.dberegovoy писал(а):Пробовал как в статье на которую Вы дали ссылку по одному параметру подкидывать, нули или единички "щупая" авось "выключатель", тоже ругается
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Re: Сенсорный экран и EMC2
Нашел в инете, можно добавить в файл 99-calibration.conf строку - Option "TransformationMatrix" "0 1 0 -1 0 1 0 0 1"
Re: Сенсорный экран и EMC2
Цифры для примера, их необходимо подбирать.
Re: Сенсорный экран и EMC2
-> sudo nano /usr/share/X11/xorg.conf.d/10-evdev.conf
Section "InputClass"
Identifier "evdev touchscreen catchall"
MatchIsTouchscreen "on"
MatchProduct "3M 3M USB Touchscreen - EX II"
Option "Calibration" "2936 13496 2840 13659"
Driver "evdev"
Option "SwapAxes" "True"
Option "InvertX" "1"
Option "InvertY" "1"
EndSection
Подправил 10-evdev.conf и все встало на место!!!
(https://www.raspberrypi.org/forums/view ... 5&t=111416)
Section "InputClass"
Identifier "evdev touchscreen catchall"
MatchIsTouchscreen "on"
MatchProduct "3M 3M USB Touchscreen - EX II"
Option "Calibration" "2936 13496 2840 13659"
Driver "evdev"
Option "SwapAxes" "True"
Option "InvertX" "1"
Option "InvertY" "1"
EndSection
Подправил 10-evdev.conf и все встало на место!!!
(https://www.raspberrypi.org/forums/view ... 5&t=111416)