User Info
Добро пожаловать, Guest Пользователей: 0 Поисковых ботов: 3 Гостей: 1
Google Bot shop oBot forum Yandex Bot account
iMX6. Debian. TFT1024X768(TP). Сенсор и кнопки [Решено]
qqqqq2
Пункты: 5507
Регистрация: 29.04.2016
Из: Санкт-Петербург
Отладочная плата SK-iMX6D-SODIMM
(совместное использование с SK-iMX6-MB-SODIMM).
Debian 7, загрузка с флешки, установлены Иксы.
Подключенный модуль расширения LCD - SK-TFT1024X768(TP)-Plug
Помогите, пожалуйста, оживить сенсорную панель и кнопки.
------------------------------------
Решение
Рекомендация
Jury093 :
- убрал все упоминания об export TS_* (файл /etc/profile)
- убрал /etc/pointercal
- убрал /etc/ts.conf
- убрал содержимое /usr/local/lib (там лежат либа и плугины для TS)
- убрал упоминания из xorg.conf
Далее шаманство
1. Задал в 10 раз большие числа (от разрешения экрана) в файле
/usr/share/X11/xorg.conf.d/99-ads7846-cal.conf
Код Section "InputClass"
Identifier "calibration"
MatchProduct "ADS7846 Touchscreen"
Option "Calibration" "60 10230 10 7670"
Option "SwapAxes" "0"
EndSection
Курсор начал более менее адекватно реагировать на движение пальца по экрану.
Очень-очень-очень не точно, но без прыжков.
2. Запустил программу калибровки (пресловутый xinput-calibrator).
Удалось нажать на все 4 точки.
Итоговый файл 99-ads7846-cal.conf
Код Section "InputClass"
Identifier "calibration"
MatchProduct "ADS7846 Touchscreen"
Option "Calibration" "4225 8006 4239 7949"
Option "SwapAxes" "0"
EndSection
sasamy
Пункты: 86398
Регистрация: 14.08.2009
Тут написано про тачскрин на ubuntu, на debian аналогично
http://www.starterkit.ru/html/index.php?name=forum&op=view&id=22044&num=2#22067
кнопки надо прописать в DT, например для двух кнопок
/ {
aliases {
mxcfb0 = &mxcfb1;
mxcfb1 = &mxcfb2;
};
gpio-keys {
compatible = "gpio-keys";
power {
label = "power";
gpios = <&gpio5 19 GPIO_ACTIVE_LOW>;
gpio-key,wakeup;
debounce-interval = <50>;
linux,code = <KEY_Q>;
};
batcher {
label = "batcher";
gpios = <&gpio5 21 GPIO_ACTIVE_LOW>;
gpio-key,wakeup;
debounce-interval = <50>;
linux,code = <KEY_W>;
};
};
.....
&iomuxc {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_hog>;
hog {
pinctrl_hog: hoggrp {
fsl,pins = <
/* GPIO Button */
MX6QDL_PAD_CSI0_MCLK__GPIO5_IO19 0x80000000
MX6QDL_PAD_CSI0_VSYNC__GPIO5_IO21 0x80000000
....
qqqqq2
Пункты: 5507
Регистрация: 29.04.2016
Из: Санкт-Петербург
Код root@armets:/# ls /etc/pointercal
ls: cannot access /etc/pointercal: No such file or directory
root@armets:/# apt-get install libts-bin
Reading package lists... Done
Building dependency tree
Reading state information... Done
libts-bin is already the newest version.
The following packages were automatically installed and are no longer required:
gnome-terminal-data libvte-2.90-9 libvte-2.90-common
Use 'apt-get autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 33 not upgraded.
root@armets:/# ts_print
ts_open: No such file or directory
root@armets:/# dmesg | grep input
input: ADS7846 Touchscreen as /devices/platform/imx6q-ecspi.3/spi_master/spi3/sp
i3.0/input/input0
input: ADS7846 Touchscreen as /devices/platform/imx6q-ecspi.0/spi_master/spi0/sp
i0.0/input/input1
input: USB Keyboard as /devices/platform/fsl-ehci.1/usb2/2-1/2-1.1/2-1.1.4/2-1
.1.4:1.0/input/input2
generic-usb 0003:04D9:1702.0001: input,hidraw0: USB HID v1.10 Keyboard [ USB Ke
yboard] on usb-fsl-ehci.1-1.1.4/input0
input: USB Keyboard as /devices/platform/fsl-ehci.1/usb2/2-1/2-1.1/2-1.1.4/2-1
.1.4:1.1/input/input3
generic-usb 0003:04D9:1702.0002: input,hidraw1: USB HID v1.10 Device [ USB Keyb
oard] on usb-fsl-ehci.1-1.1.4/input1
root@armets:/# find /usr |grep linear.so
/usr/lib/arm-linux-gnueabi/ts0/linear.so
root@armets:/# ts_calibrate
ts_open: No such file or directory
Jury093
Пункты: 54271
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
делаем последовательно:
1. сначала находим рабочий канал для тача
Код hexdump /dev/input/event0
hexdump /dev/input/event1
после тыкания пальцем должны побежать цифры (выход Ctrl+C)
2. потом прописываем
Код в /etc/profile добавил
export TSLIB_TSDEVICE=/dev/input/eventX
export TSLIB_CALIBFILE=/etc/pointercal
export TSLIB_CONFFILE=/etc/ts.conf
export TSLIB_PLUGINDIR=/usr/lib/ts0
export TSLIB_FBDEVICE=/dev/fb0
где в eventX - X на номер живого канала
а PLUGINDIR указывает на каталог с плугинами
на всякий случай содержимое
/etc/ts.conf
Код # Uncomment if you wish to use the linux input layer event interface
module_raw input
module pthres pmin=1
module variance delta=30
module dejitter delta=100
module linear
3. ребутнутся, чтобы настройки поменялись
4. пробовать
Код ts_calibrate
На любой вопрос есть любой ответ.
qqqqq2
Пункты: 5507
Регистрация: 29.04.2016
Из: Санкт-Петербург
Сделал, как написано выше.
Откалибровал канал 0 с помощью ts_calibrate без запущенных иксов.
Запустил Иксы - реакции нет.
Проверил
Код root@armets:~# ts_print
1469691118.271889: 247 315 65457
1469691118.271889: 247 315 65457
1469691118.318917: 278 347 0
1469691118.621585: 555 306 65441
1469691118.628939: 555 306 0
1469691119.171192: 281 488 65416
^Z
[2]+ Stopped ts_print
root@armets:~#
Jury093
Пункты: 54271
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата Сделал, как написано выше.
Откалибровал канал 0 с помощью ts_calibrate без запущенных иксов.
в теме, указанной Сашей, ничего полезного нет?
Код Тут написано про тачскрин на ubuntu, на debian аналогично
http://www.starterkit.ru/html/index.php?name=forum&op=view&id=22044&num=2#22067
телепатировать по жаре тяжело, что там в /var/log/Xorg.0.log ?
вот тут
http://www.starterkit.ru/html/index.php?name=forum&op=view&id=7427&num=1#7427
можно почитать, лучше с конца
пальцем в небо - вероятно не хватает пакета для иксов, типа поддержка устройств ввода..
кстати, Иксы плохо заточены под работу с тачем.. так, чисто побаловаться.. это не ондроед-гуй..
На любой вопрос есть любой ответ.
qqqqq2
Пункты: 5507
Регистрация: 29.04.2016
Из: Санкт-Петербург
Цитата
в теме, указанной Сашей, ничего полезного нет?
Я так и начинал, как там описано, но...
Код root@armets:~# apt-get install xserver-xorg-input-tslib
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package xserver-xorg-input-tslib is not available, but is referred to by another
package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package 'xserver-xorg-input-tslib' has no installation candidate
Цитата
телепатировать по жаре тяжело, что там в /var/log/Xorg.0.log ?
пальцем в небо - вероятно не хватает пакета для иксов, типа поддержка устройств ввода..
Да, что-то не то с tslib
http://pastebin.com/irjCuAPy
в
usr/share/X11/xorg.conf.d/ создал файл
99-SK-tslib.conf
Код Section "InputClass"
Identifier "evdev touchscreen catchall"
MatchIsTouchscreen "on"
MatchDevicePath "/dev/input/event*"
Driver "tslib"
EndSection
там еще есть файлы
10-evdev.conf
50-synaptics.conf
50-wacom.conf
Jury093
Пункты: 54271
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
На любой вопрос есть любой ответ.
qqqqq2
Пункты: 5507
Регистрация: 29.04.2016
Из: Санкт-Петербург
Цитата
Как могли убрать, не оставив что-то взамен???
Вообще тач отменен в Иксах???
Jury093
Пункты: 54271
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата Как могли убрать, не оставив что-то взамен???
Вообще тач отменен в Иксах???
пожимая плечами - это линукс, он неизменен только на словах.. от дистра к дистру что-то меняется, объединяется или уходит в категорию например obsolete..
https://archive.debian.net/squeeze/x11/xserver-xorg-input-tslib
более вероятно, что перенесли в другой пакет, как вариант сделать distupgrade текущему дистрибутиву на плате, но быть готовым, что утилиты нового возмутятся "древности" текущего ядра.. тут надо читать и пробовать..
На любой вопрос есть любой ответ.