HID-Touchscreen-Einstellungen in Android

711
stratotanker

Ich versuche, einen anderen Touchscreen in Android zu verwenden. Der Touchscreen ist über USB angeschlossen und wird als HID-Gerät erkannt, funktioniert jedoch nicht. Selbst wenn ich die Anzeige von Positionen aktiviere, sehe ich keine Ereignisse auf dem Bildschirm (1280x800). Wenn der Bildschirm in den Standby-Modus wechselt, wird er durch die Berührung nicht aufgeweckt (wenn ich jedoch eine USB-Maus anschließe, kann ich mit dem System interagieren). Ich kann nicht verstehen, was nicht funktioniert. Der kerner erkennt das Gerät:

input: HID 03eb:214e as /devices/platform/fsl-ehci.1/usb2/2-1/2-1.3/2-1.3:1.1/input/input2 

Android EventHub auch:

I/EventHub( 2499): New device: id=2, fd=92, path='/dev/input/event2', name='HID 03eb:214e', classes=0x80000004, configuration='/system/usr/idc/Vendor_03eb_Product_214e.idc', keyLayout='', keyCharacterMap='', builtinKeyboard=false 

Android InputReader auch:

I/InputReader( 2499): Touch device 'HID 03eb:214e' could not query the properties of its associated display. The device will be inoperable until the display size becomes available. ... I/InputReader( 2499): Device reconfigured: id=2, name='HID 03eb:214e', size 1280x800, orientation 0, mode 3, display id 0 

Android-Zeiger zeigen diese Meldungen:

I/Pointer ( 2499): Device Enumerated: Input Device 2: HID 03eb:214e I/Pointer ( 2499): Descriptor: b73a78ee3e94e1f7d81637579fe842568d9492f6 I/Pointer ( 2499): Generation: 12 I/Pointer ( 2499): Location: external I/Pointer ( 2499): Keyboard Type: none I/Pointer ( 2499): Has Vibrator: false I/Pointer ( 2499): Sources: 0x2002 ( mouse ) I/Pointer ( 2499): AXIS_X: source=0x2002 min=0.0 max=1279.0 flat=0.0 fuzz=0.3125 I/Pointer ( 2499): AXIS_Y: source=0x2002 min=0.0 max=799.0 flat=0.0 fuzz=0.1953125 I/Pointer ( 2499): AXIS_PRESSURE: source=0x2002 min=0.0 max=1.0 flat=0.0 fuzz=0.0 

Die Ausgabe des Befehls dumpsys sagt folgendes aus:

Device 2: HID 03eb:214e Generation: 12 IsExternal: true Sources: 0x00002002 KeyboardType: 0 Motion Ranges: X: source=0x00002002, min=0.000, max=1279.000, flat=0.000, fuzz=0.312 Y: source=0x00002002, min=0.000, max=799.000, flat=0.000, fuzz=0.195 PRESSURE: source=0x00002002, min=0.000, max=1.000, flat=0.000, fuzz=0.000 Touch Input Mapper: Parameters: GestureMode: spots DeviceType: pointer AssociatedDisplay: hasAssociatedDisplay=true, isExternal=false OrientationAware: true Raw Touch Axes: X: min=0, max=4095, flat=0, fuzz=0, resolution=0 Y: min=0, max=4095, flat=0, fuzz=0, resolution=0 Pressure: unknown range TouchMajor: unknown range TouchMinor: unknown range ToolMajor: unknown range ToolMinor: unknown range Orientation: unknown range Distance: unknown range TiltX: unknown range TiltY: unknown range TrackingId: unknown range Slot: unknown range Calibration: touch.size.calibration: none touch.pressure.calibration: none touch.orientation.calibration: none touch.distance.calibration: none Viewport: displayId=0, orientation=0, logicalFrame=[0, 0, 1280, 800], physicalFrame=[0, 0, 1280, 800], deviceSize=[1280, 800] SurfaceWidth: 1280px SurfaceHeight: 800px SurfaceLeft: 0 SurfaceTop: 0 SurfaceOrientation: 0 Translation and Scaling Factors: XTranslate: 0.000 YTranslate: 0.000 XScale: 0.312 YScale: 0.195 XPrecision: 3.200 YPrecision: 5.120 GeometricScale: 0.254 PressureScale: 0.000 SizeScale: 0.000 OrientationScale: 0.000 DistanceScale: 0.000 HaveTilt: false TiltXCenter: 0.000 TiltXScale: 0.000 TiltYCenter: 0.000 TiltYScale: 0.000 Last Button State: 0x00000000 Last Raw Touch: pointerCount=0 Last Cooked Touch: pointerCount=0 Pointer Gesture Detector: XMovementScale: 0.208 YMovementScale: 0.208 XZoomScale: 0.078 YZoomScale: 0.078 MaxSwipeWidth: 1448.154663 

Mit getevent -l und Berührung der oberen linken Ecke habe ich folgende Ausgabe:

/dev/input/event2: EV_MSC MSC_SCAN 000d0042  /dev/input/event2: EV_KEY BTN_TOUCH DOWN  /dev/input/event2: EV_ABS ABS_MISC 00000001  /dev/input/event2: EV_ABS ABS_X 0000001c  /dev/input/event2: EV_ABS ABS_Y 0000004a  /dev/input/event2: EV_MSC MSC_SCAN 000d0042  /dev/input/event2: EV_KEY BTN_TOUCH UP  /dev/input/event2: EV_ABS 0029 00000002  /dev/input/event2: EV_ABS 002a 00000003  /dev/input/event2: EV_ABS 002b 00000004  /dev/input/event2: EV_ABS 002c 00000005  /dev/input/event2: EV_ABS 002d 0000000f  /dev/input/event2: EV_ABS 002e 00000005  /dev/input/event2: EV_SYN SYN_REPORT 00000000  /dev/input/event2: EV_MSC MSC_SCAN 000d0042  /dev/input/event2: EV_KEY BTN_TOUCH DOWN  /dev/input/event2: EV_MSC MSC_SCAN 000d0042  /dev/input/event2: EV_KEY BTN_TOUCH UP  /dev/input/event2: EV_ABS 002d 00000014  /dev/input/event2: EV_SYN SYN_REPORT 00000000 

Wenn ich stattdessen die untere rechte Ecke berühre:

/dev/input/event2: EV_MSC MSC_SCAN 000d0042  /dev/input/event2: EV_KEY BTN_TOUCH DOWN  /dev/input/event2: EV_ABS ABS_X 00000fb0  /dev/input/event2: EV_ABS ABS_Y 00000fd4  /dev/input/event2: EV_MSC MSC_SCAN 000d0042  /dev/input/event2: EV_KEY BTN_TOUCH UP  /dev/input/event2: EV_ABS 002d 00000050  /dev/input/event2: EV_SYN SYN_REPORT 00000000  /dev/input/event2: EV_MSC MSC_SCAN 000d0042  /dev/input/event2: EV_KEY BTN_TOUCH DOWN  /dev/input/event2: EV_MSC MSC_SCAN 000d0042  /dev/input/event2: EV_KEY BTN_TOUCH UP  /dev/input/event2: EV_ABS 002d 00000055  /dev/input/event2: EV_SYN SYN_REPORT 00000000  /dev/input/event2: EV_ABS 002d 00000091  /dev/input/event2: EV_SYN SYN_REPORT 00000000 

In der Konfigurationsdatei für das Eingabegerät "/system/usr/idc/Vendor_03eb_Product_214e.idc" befinden sich folgende Zeilen:

device.internal = 0  touch.deviceType = default touch.orientationAware = 1 

Ich hoffe jemand kann mir helfen zu verstehen, was ich falsch mache!

Danke im Voraus!

1

0 Antworten auf die Frage