LINUX.ORG.RU

Избранные сообщения Moonman

Автоматический ввод матрицы координат тачскрина.

Форум — Linux-hardware

Здравствуйте. Установил на планшет irbis tw20 дебиан 12, из драйверов для винды скомпилировал драйвер тача для линукса. Тач mssl1680, он успешно завелся. Но работал некорректно.
xinput_calibrater не дал результатов, просто никак не реагирует на выданный блок кода. Попробовал подобрать матрицу координат, вот такая вышла: xinput set-prop «silead_ts» –type=float «Coordinate Transformation Matrix» 2.0, 0.0, 0, 0.0, -2.66, 1, 0.0, 0.0, 1 Успешно работает, тач работает изумительно, но после перезагрузки приходится заного забивать. Создал баш скрипт, добавил в него эту команду, проверил работает. Добавил в cron -e его, и ничего не изменилось. сделал так что скрипт дергается каждую минуту и добавил в него создание файла. фаил создается, но вот матрица не применяется. Подскажите как можно автоматически подгружать эту матрицу?

 , ,

Voron_Kor
()

Калибровка тачскрина [MSSL1680]

Форум — Linux-hardware

Здравствуйте. Есть недопланшет IOTA 2120, с установленным archlinux. Для включения поддержки тачскрина собран пакет mssl1680-firmware. Тач определяется и работает (реагирует на нажатия), вот только откалибровать его не получается. Тачскрин ведет себя некорректно, на нажатия реагирует совершенно в противоположной стороне от прикосновения пальца.

Прочитав арч-вики (раздел Touch area) получилось: xinput set-prop "silead_ts" --type=float "Coordinate Transformation Matrix" 1 0 0 0 1 0 0 0 1, но ничего не изменилось, на нажатия, реакция так же неправильная.

xinput_calibrator выдает значения для записи в xorg.conf.d, но они так же не работают (возможно из-за внесенных мной изменений в xinput)

Пробовал калибровку через ts_calibrate, но что делать с /etc/pointercal я к сожалению не понял. Интересный факт, что после сборки пакета xf86-input-tslib, lightdm не хочет запускаться, по этому данный пакет был удален из системы.

Немного информации:

xrandr:

Screen 0: minimum 8 x 8, current 1920 x 1200, maximum 32767 x 32767
DSI1 connected primary 1920x1200+0+0 right X and Y axis (normal left inverted right x axis y axis) 135mm x 216mm
   1200x1920     60.00*+
   1024x768      60.00  
   600x960       60.00  
   800x600       60.32    56.25  
   640x480       59.94  
DP1 disconnected (normal left inverted right x axis y axis)
DP2 disconnected (normal left inverted right x axis y axis)
HDMI1 disconnected (normal left inverted right x axis y axis)
HDMI2 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)

xinput --list:

⎡ Virtual core pointer                    	id=2	[master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
⎜   ↳ HAILUCK CO.,LTD USB KEYBOARD            	id=10	[slave  pointer  (2)]
⎜   ↳ silead_ts                               	id=11	[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)]
    ↳ HAILUCK CO.,LTD USB KEYBOARD            	id=9	[slave  keyboard (3)]
    ↳ Intel HID events                        	id=12	[slave  keyboard (3)]
    ↳ gpio-keys                               	id=13	[slave  keyboard (3)]
    ↳ HAILUCK CO.,LTD USB KEYBOARD            	id=14	[slave  keyboard (3)]

xinput --list-props 11

Device 'silead_ts':
	Device Enabled (140):	1
	Coordinate Transformation Matrix (142):	1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
	libinput Calibration Matrix (295):	1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
	libinput Calibration Matrix Default (296):	1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
	libinput Send Events Modes Available (260):	1, 0
	libinput Send Events Mode Enabled (261):	0, 0
	libinput Send Events Mode Enabled Default (262):	0, 0
	Device Node (263):	"/dev/input/event9"
	Device Product ID (264):	0, 0

dmesg | grep silead_ts

[    2.843691] silead_ts i2c-MSSL1680:00: Silead chip ID: 0x80360000
[    4.320975] input: silead_ts as /devices/pci0000:00/808622C1:05/i2c-5/i2c-MSSL1680:00/input/input9

lsmod | grep silead

silead                 16384  0

С самого утра пытаюсь исправить эту проблему, идеи уже закончились, прошу помощи у вас...

P.S Это мой первый опыт работы с тачскрином на linux, по этому не судите строго. Спасибо.

 ,

flappyright
()