【问题标题】:Android touchscreen position offAndroid 触摸屏位置关闭
【发布时间】:2014-03-01 03:37:21
【问题描述】:

我正在使用带有 android 的触摸屏(atmel maxtouch - atmel 1664s),发现越往右(X 变大),我的手指位置与屏幕上的触摸点之间的距离就越大。这会是 IDC 文件、驱动程序或其他地方的设置有问题吗?在同一屏幕上使用其他操作系统(如 Ubuntu)似乎没有这个问题。

我已经使用这个IDC 文件来尝试纠正位置,但最后一行只是将触摸屏变成了触控板。

touch.deviceType = touchScreen
touch.orientationAware = 1
output.x = (raw.x - raw.x.min) * (output.width / raw.width)

【问题讨论】:

  • 这实际上听起来像是给某人的错误报告者的报告。也许Super User 会更有帮助。如果它不是错误报告,并且您有一些代码试图纠正该行为,请发布它。
  • 我将其范围缩小到 idc 文件问题,但我知道问题来源可能来自其他地方。

标签: android kernel-module


【解决方案1】:

内核驱动程序未正确检测和报告输入 X 报告的可能范围。

如果你使用 adb shell 并运行 getevent -il 你应该得到类似的东西

add device 6: /dev/input/event2
  bus:      0000
  vendor    0000
  product   0000
  version   0000
  name:     "touch_dev"
  location: ""
  id:       ""
  version:  1.0.1
  events:
    ABS (0003): ABS_MT_SLOT           : value 0, min 0, max 9, fuzz 0, flat 0, resolution 0
                ABS_MT_TOUCH_MAJOR    : value 0, min 0, max 15, fuzz 0, flat 0, resolution 0
                ABS_MT_POSITION_X     : value 0, min 0, max 1535, fuzz 0, flat 0, resolution 0
                ABS_MT_POSITION_Y     : value 0, min 0, max 2559, fuzz 0, flat 0, resolution 0
                ABS_MT_TRACKING_ID    : value 0, min 0, max 65535, fuzz 0, flat 0, resolution 0
                ABS_MT_PRESSURE       : value 0, min 0, max 255, fuzz 0, flat 0, resolution 0
  input props:
    INPUT_PROP_DIRECT

你可以在我的设备上看到,X 值可以在 0 到 1535 之间。

如果您随后运行getevent -trl /dev/input/event2,在屏幕上移动手指,并查看可能的最大 X 值,它应该对应:

[  115960.226411] EV_ABS       ABS_MT_POSITION_X    000005ee

0x5ee = 1518,所以差不多。

触摸控制器上有一些参数可以调整这种缩放比例,并且需要与内核驱动程序报告的内容同步。标准的 Linux 主线驱动程序不能很好地处理那些与平台数据不同步的参数。有一些补丁可以解决这个问题,但尚未发布:https://github.com/atmel-maxtouch/linux/commit/002438d207

如果当你将手指移到最右边时,触摸仍然在屏幕上,你可以通过这样做来纠正它

output.x = raw.x / scale

其中 scale 是报告坐标与所需坐标的比率。你不能反过来做,因为较低的输入层会将报告扔到屏幕之外。

适当的修复方法是修复内核驱动程序中的错误,或调整触摸控制器上的范围设置。

你没有说它是什么特定的设备,所以很难进一步提供帮助。

【讨论】:

  • 这是一些我将开始探索的好信息。具体的触摸屏设备是 atmel 1664s。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-03-31
  • 2018-03-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多