📜  linux触摸屏校准——Shell-Bash(1)

📅  最后修改于: 2023-12-03 15:32:42.939000             🧑  作者: Mango

Linux触摸屏校准——Shell-Bash

在使用Linux系统时,如果遇到触摸屏不准确的问题,可以尝试进行校准来解决。本篇文章将介绍如何使用Shell-Bash进行Linux触摸屏校准。

1. 安装evtest工具

在进行校准之前,需要先安装evtest工具,该工具可用于测试Linux输入子系统的设备。

在终端输入以下命令进行安装:

sudo apt-get install evtest
2. 查找设备

使用以下命令查看输入子系统的设备:

cat /proc/bus/input/devices 

通常可以在输出结果中找到类似以下内容:

I: Bus=0003 Vendor=0bda Product=8153 Version=30b2
N: Name="ELAN Touchscreen"
P: Phys=usb-0000:00:14.0-4/input0
S: Sysfs=/devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.0/0003:04F3:23D0.0001/input/input3
U: Uniq=
H: Handlers=event3 mouse0 
B: PROP=2
B: EV=b
B: KEY=e520 10000 0 0 0 0
B: ABS=2e800000000

其中,Name项显示了触摸屏的设备名。

3. 使用evtest工具测试设备

使用以下命令测试触摸屏设备:

sudo evtest /dev/input/event3

其中,/dev/input/event3是触摸屏设备的路径,根据实际设备进行替换。

测试时,可以按照提示在屏幕上进行触摸操作,观察输出结果,并记录下坐标值。

4. 编写校准脚本

根据触摸屏的具体情况,可以编写相应的校准脚本。以下是一个简单的脚本示例:

#!/bin/bash
# Touchscreen Calibration Script
export LD_LIBRARY_PATH=/usr/local/lib
export TSLIB_CONSOLEDEVICE=none

calibration_points=9

echo "Please touch the cross in the upper left corner."

ts_calibrate

echo "Please touch the cross in the center of the screen."

ts_calibrate

echo "Please touch the cross in the lower right corner."

ts_calibrate

校准脚本中使用了ts_calibrate命令,该命令在安装tslib时已经安装,用于进行触摸屏校准。

5. 运行校准脚本

进入校准脚本所在目录,使用以下命令运行校准脚本:

sudo bash calibrate.sh
6. 保存校准结果

校准结束后,会在终端输出校准结果,将结果记录下来,保存为/etc/pointercal文件,以便系统启动时自动加载。

例如:

export TSLIB_TSDEVICE=/dev/input/event3
export TSLIB_CALIBFILE=/etc/pointercal
export TSLIB_CONFFILE=/etc/ts.conf

export TSLIB_FBDEVICE=/dev/fb0
export TSLIB_PLUGINDIR=/usr/local/lib/ts
export TSLIB_CONSOLEDEVICE=none
export TSLIB_TSINFO=/usr/local/etc/ts.conf
export QT_QPA_PLATFORM=linuxfb:tty=/dev/tty1

262 39496 511 39345 0 1 0
总结

Linux触摸屏校准使用Shell-Bash编写校准脚本,使用evtest工具测试设备,可以提高系统的触摸屏精度和响应速度。