Xinput calibrator astra linux

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

Тачскрин работает, но неправильно, нужно откалибровать. Установил и запустил xinput_calibrator , ткнул 4 точки. Ничего не изменилось (хотя на этом этапе уже должно правильно работать!) Попробовал по указанию программы сохранить настройки в файлик /usr/share/X11/xorg.conf.d/99-calibration.conf :

В этой директории и другие похожие файлы есть, вроде 70-wacom.conf и пр. После ребута так же ничего не изменилось. Попробовал и в /etc/X11/xorg.conf.d/ закинуть (директорию пришлось создать) – так же ничего не поменялось.

Вот еще информация, которая может помочь: xinput -list

(Мой девайс под номером 13)

xinput list-props 13 :

Попробовал поиграться с set-prop – тоже безрезультатно. Свойство вроде применяется (?), но эффекта нет. xinput set-prop 13 —type=atom —format=32 InvertX 1 , xinput list-props 13 :

Этот тред я читал, но не понял, как тамошний гуру всё разрулил, да и у того человека калибровка уже работала, а у меня ничего.

Такое ощущение, что xorg все устройства ввода по два раза обрабатывает, применительно к тачскрину, сначала он в /dev как evdev9 регистрируется, потом ниже как mouse2.

На калибровку может и не повлияет такое, но странно.

Zubok , может глянешь, если есть время?

«libinput Calibration Matrix» пробовал через setprop менять?

А таких опций вроде у libinput нет. См. man libinput. Есть Option «CalibrationMatrix» или свойство «Calibration Matrix»

Попробовал xinput set-prop 13 «Coordinate Transformation Matrix» -1 0 1 0 1 0 0 0 1 – сработало! Касания свапнулись по оси X. Попробовал прописать Option «CalibrationMatrix» «-1 0 1 0 1 0 0 0 1» в файл /usr/share/X11/xorg.conf.d/99-calibration.conf – тоже сработало! Тач пашет после ребута. Теперь буду вручную подбирать коэффициенты.

sleeply4cat , Zubok , огромное спасибо! не знаю, почему сам не допёр до очевидного решения.

Остаётся одна незначительная проблема. Тачскрин именно что управляет курсором, а привычные жесты вроде скрола, удержания (для контексного меню) – не работают. Подозреваю, что есть уже готовые решения, куда копать? В кедах есть некие «Действия при проведении по сенсорному экрану», но что-то оно не пашет.

P.S. Кто будет читать этот тред, возможно вам поможет статья на арч вики, там объясняют за libinput Calibration Matrix .

А таких опций вроде у libinput нет.

Да, видимо, xinput_calibrator рассчитан на какой-то другой драйвер (или как там), который как раз с такими опциями работает.

Лучше в /etc/X11/xorg.conf.d положить. /usr/share/ больше для конфигураций, поставляемых пакетами, то есть для нужд системы, и лучше туда свои конфиги не класть, а то потом будешь вспоминать, что это такое и кто принес.

Теперь буду вручную подбирать коэффициенты.

Источник

Talk:Calibrating Touchscreen

Contents

Touch area

Are you sure about your math? Given the ratio touch_area_width / total_width, you’re saying that if the touch area is smaller than the total width, the scaling factor will be less than 1, and thus make the result even smaller yet. On my device, the ratio total_width/touch_area_width is the right value to use for c0. Similar comment for the height/c2 value.

If you’re in there, you might mention that all values are normalized WRT 1.0 before being multiplied by this matrix. It’s easier to see the point of c1 and c3’s equations if you have that fact in mind. Also, for cases where the touchscreen area is a subset of the screen area, these coefficients need to be negative.

Thanks for the most useful article on X’s transformation matrices that I could find! Vandyswa (talk) 01:19, 6 October 2013 (UTC) Andy Valencia

Читайте также:  Лучшие активаторы windows 10 2019

Google Docs calculator

This document is amazing, I created a google docs calculator to build the command for me. It really should not be this difficult to do this, but your instructions worked *perfectly* for me.

the spreadsheet method is obsolete in most cases

As described on the Touchscreen page, now I can do this instead:

xinput —map-to-output $(xinput list —id-only «Advanced Silicon S.A CoolTouch(TM) System») DVI-0

This page is now showing only the hard way. As the header says, the two pages need merging. But the hard way is still relevant when xrandr cannot identify the separate screens because they’ve been merged into one large screen. —This unsigned comment is by Ecloud (talk) 17:12, 13 July 2016‎. Please sign your posts with

Did you open this to explain your edit? If yes: there is no need for such (as long as an edit is as self-explaining, please use the edit summary box for the edit reason). If you open this item for another point you want to discuss, it does not come across. —Indigo (talk) 20:04, 13 July 2016 (UTC)

Libinput breaks xinput_calibrator

On my Panasonic CF-30, the xorg conf file generated by xinput_calibrator does not work with libinput. I worked out a very messy way of recalibrating. This could easily be scripted / xinput_calibrator forked, but I’m too lazy to do that at the moment. Here’s my notes on how to do it manually:

1. Delete all xorg conf files for calibration and reload X.

2. Find your touchpanel name with the command:

Mine was «Fujitsu Component USB Touch Panel».

3. Verify your current calibration with this command (replace panel name):

The matrix should be 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000

4. Run xinput_calibrator in verbose mode:

Do the calibration, then look for the DEBUG output lines:

We need the X and Y values from click 0 and click 3.

5. Get display resolution using xrandr:

6. We now need to calculate four values, called «a», «c», «e», and «f» (reference).

7. Test the values with the following command (replace a, c, e, and f with your calculated numbers):

The touchscreen should be calibrated now. If not, you can undo the calibration with this reset command:

8. Determine which udev device corresponds to your panel. I did this by testing all the mouse* devices in /sys/class/input with the following command:

Try each mouse device until you see your panel. You’re looking for the lowest block that includes the text SUBSYSTEMS==»input», like so:

9. Edit a new udev config file like so:

Fill in like so, using the ATTRS found in step 8 and filling in the calculated numbers in place of a, c, e, and f):

10. Reboot and verify.

Zootboy (talk) 01:11, 31 January 2017 (UTC)

Comments on matrix, fractional coordinates

Zootboy’s description, above, was essential for me getting to a working calibration. xinput_calibrator was not working at all (had no effect). I have an old Panasonic CF-29 with a «Fujitsu Lifebook» touchscreen.

My method, with some differences:

  • Run his steps 1-5
  • The «a/c/e/f» calculation is a little hokey. The proper thing to do here is an inverse matrix transformation.

This should use all four points. If X and Y are the resolution width and height, then a Wolfram expression (https://sandbox.open.wolframcloud.com) is:

To put some of these thoughts into code I’ve written https://github.com/reinderien/xcal — works for me, untested otherwise. Reinderien (talk) 23:55, 22 July 2017 (UTC)

Читайте также:  Csp windows server standard

Comments on making transformation matrix permanent

I’ve found that instead of creating a udev rule (step 9 above), the transformation matrix can also be set permanently through an xorg.conf.d file. This can be achieved by setting the «TransformationMatrix» option on the input class.

Put the code below into a file called /etc/X11/xorg.conf.d/98-screen-calibration.conf . Change «MatchProduct» to match your touchscreen device name, and use the correct values for a, c, e, and f.

Mogwai (talk) 20:25, 12 February 2018 (UTC)

Wrapper around xinput_calibrator

Below is a bash script I wrote that wraps around xinput_calibrator and calculates the matrix.

It’s a bit dirty:

  • It expects only one input device
  • It expects the xorg output from xinput_calibrator with separate «MinX», «MaxX», . variables
  • I’m only a beginner when it comes to bash, so there are probably some issues with quoting

Apart from that, it works for me. It sets the calibration immediately by calling xinput (needs to be installed), and also outputs the contents of the xorg conf file

If anyone wants to build on it, or include it in some AUR package or whatnot, please go ahead. Consider it released under the WTFPL.

—This unsigned comment is by Sanderd17 (talk) 09:17, 20 July 2018‎ (UTC). Please sign your posts with

Mention installing the qt5-virtualkeyboard package?

This is my first time commenting on the wiki. I hope this is the right way to go about this. I’ve been using Arch Linux for a while, but decided to install it on a tablet for the first time. Hours of frustration ensued as I struggled to get a touch keyboard working. It turns out that with Qt applications on Wayland, you need the qt5-virtualkeyboard package installed — or at least that is my understanding of it. But I didn’t find anything at all about this on the wiki, and I still don’t when I’m specifically looking for it. I only found this out on Reddit.

To be honest, the experience with touch keyboards seems very poor in general, so I feel like it would be helpful to have a section covering how this works. For X, you can use Onboard, but on Wayland you seem to be limited to Gnome’s Caribou for GTK applications, and the qt5-virtualkeyboard package for Qt applications.

Источник

Debian7. Помогите с сохранением настроек xinput_calibrator пожалуйста.

у меня Debian7 поставил тачскрин egalaxytouch, тач работает. xinput_calibrator после калибровки работает правильно.но после перезагрузки настройки калибровки нужно производить снова.

сохранял в файле /etc/X11/xorg.conf.d/99-calibration.conf’

(как и предлагает утилита) но ничего не меняется, пробовал еще по одной статье настройки сохранять в /usr/share/X11/xorg.conf.d/10-evdev.conf .. но тоже ничего не поменялось.

А файлы показать не хочешь? 10-evdev.conf и 99-calibration.conf?

xinput -list

мой девайс eGalax Inc. id=11

10-evdev.conf

99-calibration.conf

Вообще, всегда лучше настраивать только в одном месте, а не в двух файлах крутить разные ручки. Ок, показывай лог теперь /var/log/Xorg.0.log. Лучше на pastebin.com. Желательно укажи, с какими настройками он сделан, то есть 99- или 10- используется.

А твой xinput -list показывает, что твой тачскрин класса pointer. Поэтому не применяет, так как ты ждешь MatchIsTouchscreen «on»

А Driver «evdev» не пробовал добавить? 10-evdev не трогай лучше. Он пакетом ставится и все время ругань будет при обновлении, что ты его правил.

var/log/Xorg.0.log

Driver «evdev» добавил

99-calibration.conf Driver «evdev» добавил

понял. все забываю на выхлоп смотреть..еще бы знать что делать дальше после таких заявлений.. я так понимаю что настройки калибровки нужно пихать в какой то другой файл?

Читайте также:  Архив курсоры для windows

Хм, а тут заявляет , что класс Touchscreen:

А проверь, при помощи xinput калибровка нормально прикладывается или ругается? (xinput —list-prop за списком свойств. Там должна быть калибровка)

драйвер работает и сохраняет настройки сам только на ubuntu 10.04 (то есть заводской драйвер ставится и утилита калибровки все делает как надо и сохраняет там где надо..но с ubuntu 10.04 как то уже не весело)

не совсем понял. поподробнее подскажи плиз..

А что за заводской драйвер? А точно этот тачскрин с evdev работать умеет?

не совсем понял. поподробнее подскажи плиз..

xinput —list-props 11

Калибровка, как видишь, применилась. И что, не работает?

Если хочешь с калибровкой поиграться без перезагрузки, то делаешь вроде так:

Попробуй разные числа ставить. Вообще, это на что-то влиять будет?

после калибровки работает, после перезагрузки сбрасывается и при нажатии курсор опять съезжает.нужно заново калибровать xinput_calibrator

А что за заводской драйвер, про который ты говорил? И почему Ubuntu 10.04? Вдруг там поддержка куцая?

есть драйвер на сайте производителя, но он заточен под ядро 2,6. http://www.kiosksoft.ru/drivers/cat/73

Пробуй цифры от балды. Их значение на что-нибудь влияет? Debian7. Помогите с сохранением настроек xinput_calibrator пожалуйста. (комментарий) И контролируй —list-props , установились ли корректно.

А глянь сразу же после калибровки, когда все работает как надо, калибровку в выводе xinput —list-props. Может, там проставлено правильное значение?

твоя команда сразу после калибровки правильной http://pastebin.com/yjfGiy8v

Практически на отличается. Ну, с точностью до ошибки «пальчик чуть вправо — пальчик чуть влево». А теперь надо эти цифры переписать, перезагрузиться и командой xinput их прописать самому. Калибровка срабатывает?

Ага, вот одно различие! После калибровки Axis Swap еще включается! Тебе xinput-calibrator об этом сказал? Это тоже надо в 99-calibration указывать!

переписал цифры.сейчас буду читать ман на команду xinput. калибровка со второго раза проходит через xinput_calibrator

после очередной калибровки: xinput —list-props 11

ща в калибрейшн 99 укажу попробую

походу сработало. я так выставил калибрейшн 99:

а что за чудо параметр Option «SwapAxes» «on» ?? не раскроешь фокус-тайну?))

походу сработало. я так выставил калибрейшн 99:

Насколько я помню (я как-то настраивал тачскрин), xinput-calibrator в консоль должен был выдать все, что он сделал: и коэффициенты калибровки и прочие опции. Проверь, говорил ли он об осях? Видимо, у тебя тачскрин повернут и оси x с y местами надо программно менять.

а что за чудо параметр Option «SwapAxes» «on» ?? не раскроешь фокус-тайну?))

Меняет местами ось X и Y. У тебя тачскрин, наверное, вертикально расположен? 🙂

СПАСИБО ОГРОМНОЕ. а то чувак мне тач скрин отдал просто так..он валялся мне жалко было, т.к. под виндой работает не стабильно. а так тач скрин на базе монитора acer AL 1716 F, к нему взади прикреплен контроллер тача и USB кабель, у чвака он выполнял задачи ФОТО киоска, типо автомат по печати фоток клиентами

жалко к androidx86 наверное будет сложно прикрутить его).я ставил андрюлика , но тот никак не отреагировал на мой девайс.

В андроиде, наверное, своя система верхнего уровня. Надо интересоваться. Ведь драйвер evdev получает все параметры из ядра. Значит, ядро Android тоже может получить, но вот вопрос, кто дальше этой информацией воспользоваться может. Можешь создать отдельную тему с нужными тегами — может, подскажет кто. Я в Android не спец.

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

Источник

Оцените статью