2. TC/BSD系统如何连接触摸屏?

触摸屏分为:电容触摸屏和电阻触摸屏。电容式触摸屏一般的情况下不需要安装驱动的程度,电阻式触摸屏大多数是需要在系统中安装厂家的专用驱动安装包。在最新版的TC/BSD操作系统中有通用的驱动(usbhid)能识别大部分触摸屏。在新的TC/BSD系统版本中,默认是开启的。

建议大家在使用TC/BSD操作系统时,选择带有持久内存的电容触屏,基本能实现免驱动,并且在其它操作系统中校准后,在TC/BSD操作系统中可以免校准,大大的简化了工程量。


一、查询触摸屏生效的相关信息

  1. dmesg | grep -i touch

     

    这段日志信息表明系统已成功识别并加载了一个 ​​多点触控屏幕(Multitouch TouchScreen​​ 设备,并提供了相关细节。以下是详细解析:

    设备基本信息​​
    hmt0​​:系统分配的设备节点名称(Human-Machine Interface Touch deviceHMT)。
    ​​ILITEK ILITEK-TP​​:触控屏幕的制造商(ILITEK)和型号(ILITEK-TP)。
    ​​on hidbus2​​:该设备通过 ​​HID 总线(hidbus2​​ 连接,表示它是一个符合​​HIDHuman Interface Device)协议​​的输入设备(如触摸屏、键盘等)。
    Multitouch touchscreen with 0 external buttons​​这是一个支持 ​​多点触控(Multitouch​​ 的屏幕。

    0 external buttons​​:触控屏本身没有物理按钮(如某些触摸板会有附加按键)。

    关键信息解读​​
    设备已正确驱动​​,日志中没有报错(如 rejected failed),且明确标注了设备型号和功能,说明内核已成功识别并加载了对应的驱动(可能是 hid hmt驱动模块)。
    FreeBSD 中,hmt驱动专门用于处理 ​​HID 多点触控设备​​

    HID 协议兼容性​​
    设备通过 hidbus连接,表明它使用标准的 ​​USB HID 协议​​,无需额外厂商驱动(除非需要特殊功能)。

    功能支持​​
    多点触控(Multitouch)意味着支持手势操作(如双指缩放、滑动等)。无物理按钮的设计常见于现代触控屏(如笔记本电脑的触摸屏或外接触控显示器)。

  2. doas usbconfig list

    ugen0.3: <Multi-Touch Screen ILI Technology Corp.>

    • 设备类型:多点触控屏幕(制造商 ILI Technology
    • 位置usbus0(连接在第一个 USB 总线上)
    • 状态
      • cfg=0:未配置(可能未加载触控驱动
      • md=HOST:主机模式
      • spd=FULL (12Mbps)USB 1.1 全速模式(12Mbps)
      • pwr=ON (400mA):已供电,消耗 400mA 电流(触屏功耗较高)
  3. 检查 /dev/input/ 设备

    ls /dev/input/

    如果出现 eventX 设备(如 /dev/input/event0),说明触摸屏已被识别。

  4. 触控无反应

    检查是否有其他驱动冲突:

    dmesg | grep -i "error\|reject\|fail"

    • DMC​​ (Display Microcontroller)Intel 显卡的显示微控制器,负责电源管理、显示时序等低功耗功能。无需处理。

二、关于触摸屏的校准

  1. 带有持久内存的触摸屏,可以在其它操作系统中校准后,在TC/BSD系统下免于校准。
     
  2. TC/BSD系统校准
    • doas swaymsg -s /var/run/user/1002/sway-ipc.1002.1378.sock -t get_inputs    (黄色部分根据实际设备填写);
    •  ​​swaymsg​​Sway 提供的命令行工具,用于通过 IPC Sway 通信;
    • -s /var/run/user/1002/sway-ipc.1002.1378.sock​​:指定 Sway IPC socket 文件路径(通常位于 /run/user/<UID>/ /var/run/user/<UID>/)。1002是用户 IDUID),1378 Sway 进程的 PID;
    • -s /var/run/user/1002/sway-ipc.1002.1378.sock​​:指定 Sway IPC socket 文件路径(通常位于 /run/user/<UID>/ /var/run/user/<UID>/)。1002是用户 IDUID),1378 Sway 进程的 PID。

把以上信息配置到sway 中:

doas ee /home/<graphicsUser>/.config/sway/config


1 0 0 0 1 0校准矩阵包含了以下六个位置对应属性的数值(从第一位置到第六位置):

  1. X轴的缩放系数。此值决定了输入坐标在水平方向上的伸缩或压缩程度;
  2. X轴的剪切(倾斜)系数。此值可用于实现水平方向的倾斜效果;
  3. X轴进行平移。此值会将输入坐标向水平方向移动;
  4. Y轴的剪切(倾斜)系数。此值可用于实现垂直方向的倾斜效果;
  5. Y轴的缩放系数。此值决定了输入坐标在垂直方向上的伸缩或压缩程度;
  6. Y轴进行平移。此值会使输入坐标发生垂直方向的移动。

按“ESC”键并保存设置。

TF1200中,以按下“Win+Shift+c”来加载新的配置。

HTML5 触摸测试页面中进行触摸测试,并调整


2025.8.12 关春雨 供稿