2014-09-24 1 views
4

Я борюсь с калибровкой сенсорного экрана на Android-платформе Android.Android Touchscreen IDC

Это USB Single-Touch Сенсорный экран от поставщика 0dfc и продукта 0001 как проверенную с dmesg:

<6>[ 4118.091541] input: USB Touchscreen 0dfc:0001 as /devices/platform/usb20_host/usb2/2-1/2-1.3/2-1.3:1.0/input/input23 

Я толкая Vendor_0dfc_Product_0001.idc файл /data/system/devices/idc/ (следуя документации от android source - IDC

меня сенсорное устройство со всеми требованиями к событиям с одним касанием:

[email protected]:/ # getevent -il /dev/input/event3         
add device 1: /dev/input/event3 
    bus:  0003 
    vendor 0dfc 
    product 0001 
    version 0202 
    name:  "USB Touchscreen 0dfc:0001" 
    location: "usb-usb20_host-1.3/input0" 
    id:  "" 
    version: 1.0.1 
    events: 
    KEY (0001): BTN_TOUCH    
    ABS (0003): ABS_X     : value 540, min 0, max 32767, fuzz 0, flat 0, resolution 0 
       ABS_Y     : value 289, min 0, max 32767, fuzz 0, flat 0, resolution 0 
    input props: 
    <none> 

Я также включил опцию Pointer Location с Developer options (настройки Android), чтобы отладить этот этап калибровки.

Установка 1

touch.deviceType = touchScreen 

С помощью этой установки() все жесты на сенсорном экране происходят на вверх левом углу - всего несколько пикселей влево/вправо/вверх/вниз, независимо от жестов (салфетки). Все сенсорные экраны получают события. Все жесты перевернуты - при прокрутке слева указатель идет вправо; при прокрутке вверх указатель опускается.

Установка 2

touch.deviceType = pointer 
touch.gestureMode = pointer 

С помощью этой установки(), как и ожидалось, это показывает указатель, расположенный в позиции после последнего указателя устройства слева (мыши). Все жесты на сенсорном экране (независимо от размера салфетки) сохраняются как настройка - перемещайте только несколько пикселей при каждом событии салфетки и с обратной осью.

Установка 3

touch.deviceType = pointer 
touch.gestureMode = spots 

С помощью этой установки() результат один и тот же, как и установки . Я просто сделал это, чтобы доказать, что файл IDC интерпретируется правильно.

На данном этапе, как вы можете проверить прямо сейчас, у меня есть работает IDC файл (установки 1) требует калибровки для этого сенсорного устройства.

Я пробовал много комбинаций из других файлов IDC (Internet проб) и от android source - IDC - ЛЮБОЙ ДРУГОЙ СОБСТВЕННОСТИ СОСТОЯЛАСЬ ЭФФЕКТ (ни один) - raw.*, output.*, touch.size.*

Кто-нибудь знает, как откалибровать правильно сенсорный экран в Android, который может помочь мне в этом процессе?

Спасибо

+0

Вы решили свою проблему? –

+0

Вы пытались сделать «touch.orientationAware = 1» в файле idc? –

ответ

1

То же здесь,

но моя калибровка приложение did't сделать что-нибудь.

Через некоторое время, чтение /system/etc/init.sh я нашел следующее: " MkDir -p/данных/разное/TSCAL сенсорный/данных/разное/TSCAL/pointercal Чаун 1000,1000/данных/разное/TSCAL/данные/разное/TSCAL/* CHMOD 775/данные/разное/TSCAL CHMOD 664/данные/разное/TSCAL/pointercal "

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