本文提供有关Elo多点触控Linux驱动程序,单点触控(ST)USB v4.0.1的安装说明
以下是Elo多点触控Linux驱动程序,单点触控(ST)USB v4.0.1的安装说明。
该驱动程序已过时且不再支持。
Elo多点触控Linux驱动程序 - 单点触控(ST)USB
Intel i686(32位)或AMD64/Intel(64位)
安装/校准/卸载说明
--------------------------------------------------------------------------------
版本 4.0.1
2014年11月11日
Elo Touch Solutions
===============================================================================
Elo Linux多点触控ST USB驱动程序包包含为Linux内核2.6.x和3.x.x(GCC版本4.0.0及更高版本)设计的用户空间Linux驱动程序、视频对齐工具和单触摸Elo触摸显示器的控制面板工具(非多触摸)。此多USB触摸屏驱动程序仅在至少具有GCC版本4.0.0或更高版本的Linux发行版上工作,因编译libusb-1.0库源代码的限制。
此自述文件的组织结构如下:
1. 支持的触摸显示器和Elo触摸屏控制器
2. 系统要求
3. 安装Elo触摸屏USB驱动程序
4. USB驱动程序命令行选项和使用
5. 设置活动触摸区域
6. 校准触摸屏
7. 从NVRAM中检索校准值 / 预校准(可选)
8. 访问控制面板
9. 卸载Elo触摸屏USB驱动程序
10. 故障排除
11. 联系Elo Touch Solutions
==========================================================
1. 支持的触摸显示器和Elo触摸屏控制器
==========================================================
- Elo Smartset USB控制器
(IntelliTouch(R) 2701, 2700, 2600, 2500U,
CarrollTouch(R) 4500U, 4000U,
Accutouch(R) 2216, 3000U, 2218,
Surface Capacitive 5020, 5010, 5000,
声音脉冲识别(APR)Smartset 7010
和其他Elo Smartset USB控制器)
======================
2. 系统要求
======================
- 32位Intel i686(x86)平台(或)[访问www.elotouch.com的Linux下载部分
以下载适用于您的32或64位Linux的驱动程序包]
- 支持的内核:
内核版本2.6.x(GCC版本4.0.0及更高版本)
内核版本3.x.x
- 支持的Xorg Xwindows版本:
Xorg版本6.8.2 - 7.2
Xorg(Xserver)版本1.3 - 1.8
Xorg(Xserver)版本1.9及更新版本
- 支持的Motif版本:
Motif版本3.0(libXm.so.3)
- 支持的libusb版本:
libusb版本1.0
===============================================
3. 安装Elo触摸屏USB驱动程序
===============================================
重要:
==========
a.) 必须在Linux计算机上拥有管理员访问权限才能
安装Elo触摸屏USB驱动程序。
b.) 确保系统中卸载所有先前的Elo驱动程序。
c.) Elo触摸屏驱动程序组件现在需要新的libusb-1.0
库支持(较老的libusb-0.1库将不工作)。大多数
较新的Linux发行版已经开始将此库作为其
标准发布的一部分出货。客户也可以从源代码中下载并编译
libusb-1.0库(需要gcc v4.0.0或更高版本),
可在libusb网站上获取。该驱动程序将不适用于
旧版的libusb-0.1库。
d.) 请勿在Windows系统上解压下载的二进制包。
e.) 使用图形用户界面(GUI)控制面板(/etc/opt/elo-usb/cpl)需要Motif 3.0(libXm.so.3)库。
Openmotif或lesstif安装包提供所需的
libXm.so.3库。
步骤I:
-------
将elo驱动程序文件从二进制文件夹复制到默认的elo文件夹。更改所有elo驱动程序文件的权限。 这些广泛的权限是为了适应大多数系统。请更改它们以调整到您的访问控制策略以及特定组或用户。
a.) 将驱动程序文件复制到/etc/opt/elo-usb文件夹位置。
# cp -r ./bin-usb/ /etc/opt/elo-usb
b.) 使用chmod命令为所有
用户设置/etc/opt/elo-usb文件夹的完全权限(读/写/执行)。
这些广泛的权限是为了适应大多数系统。请更改它们以调整到您的访问控制
策略和特定组或用户。
# cd /etc/opt/elo-usb
# chmod 777 *
# chmod 444 *.txt
c.) 将udev规则文件复制到/etc/udev/rules.d/文件夹位置。
请编辑触摸屏设备权限,以调整到您的
访问控制策略和特定组或用户。
# cp /etc/opt/elo-usb/99-elotouch.rules /etc/udev/rules.d
步骤II:
--------
配置一个脚本以在系统启动时调用Elo服务。
Debian、Ubuntu(6.10之前)系统:
- - - - - - - - - - - - - - - - - - - - -
将/etc/opt/elo-usb目录中的elorc脚本文件复制到/etc/init.d目录。
# cp /etc/opt/elo-usb/elorc /etc/init.d
需要在所需的运行级目录(例如:rc2.d, rc3.d,...rc5.d)中为elorc脚本创建一个符号链接。这将允许elorc脚本在系统启动时运行。 Ubuntu和Debian系统使用运行级2(rc2.d目录)作为默认值。
该目录中有形式为SDDxxxx的启动文件(符号链接),其中DD是序列号。选择一个序列号XX,该序列号应大于此目录中找到的显示管理器脚本(xdm、gdm等)的序列号。
使用维护脚本update-rc.d创建带有选定序列号XX的elorc符号链接。
# cd /etc/rc2.d
# update-rc.d elorc start XX 2 .
重要:
==========
- 仅使用update-rc.d维护脚本来修改这些 符号链接。如果这些符号链接是
手动创建的,则elorc脚本不会在启动时运行。
- 注意,update-rc.d命令语法在运行级参数后有一个空格和一个句点。
- 以上示例是针对运行级2。选择适当的文件夹
以满足所需的运行级。可以在
/etc/inittab文件中找到默认运行级。
备注:
=====
运行级目录的路径可能因发行版而异。Redhat的运行级5的路径为"/etc/rc.d/rc5.d",而Debian和Ubuntu的路径为"/etc/rc2.d",运行级为2。
在系统中找到相应的运行级目录,并使用update-rc.d维护脚本在该目录中创建elorc脚本文件的符号链接。
Redhat、Fedora、Mandrake、Slackware和Ubuntu(6.10或更高)系统:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
在上述发行版中,从/etc/rc.d/rc*.d目录运行elorc脚本存在一些限制。因此,在"/etc/rc.local"文件中的守护进程配置脚本末尾添加以下行。
[ rc.local文件可能也位于/etc/rc.d/rc.local位置。使用"# find /etc -name rc.local"命令找到rc.local文件。]
/etc/opt/elo-usb/loadEloTouchUSB.sh
SUSE系统:
- - - - - - -
在"/etc/init.d/boot.local"文件中的配置脚本末尾添加以下行。
/etc/opt/elo-usb/loadEloTouchUSB.sh
步骤III:
----------
插入USB触摸屏并重启系统,以完成驱动程序安装过程。
# shutdown -r now
===========================================
4. USB驱动程序命令行选项和使用
===========================================
USB(elousbd)驱动程序命令行选项如下所示。如果需要,修改
/etc/opt/elo-usb/loadEloTouchUSB.sh脚本文件,以向elousbd
驱动程序启动添加命令行选项。
--help [打印用法信息和可用选项]
--version [显示USB触摸屏驱动程序版本信息]
--displaycoordinates [在终端上显示触摸数据,
对应每次触摸。触摸数据包含触摸状态(触摸/流/未触摸)及X和Y坐标。
此选项用于测试触摸屏,因此触摸数据仅显示,而不发送至Xserver以移动鼠标指针。]
--xwarppointer [使用XWarpPointer调用将触摸事件发送到X窗口系统]
--activetoucharea <originx,originy,width,height> [设置活动触摸区域参数:OriginX、OriginY、Width和
Height。当这些参数设置时,鼠标指针将在指定区域内仅对触摸输入作出响应。]
使用示例:
---------------
elousbd --help [打印此使用信息]
elousbd --version [显示USB触摸屏驱动程序版本信息]
elousbd --displaycoordinates [启用将触摸数据打印到终端以测试触摸屏]
elousbd --xwarppointer [使用XWarpPointer调用将触摸事件发送至X窗口系统]
elousbd --activetoucharea 150,200,1000,700 [设置活动触摸区域:Origin=(150,200),Width=1000,Height=700]
============================
5. 设置活动触摸区域
============================
重要:
==========
“--activetoucharea”驱动程序命令行选项将使Linux桌面某些区域无法触摸输入。
此选项目前仅与一个视频屏幕有效,且在多个视频屏幕设置中的行为未知。如果Elo
触摸屏是Linux系统的唯一输入设备,请密切注意活动触摸区域参数。
步骤I:
-------
如果您已经知道“--activetoucharea”选项参数的值,请跳过此步骤。打开终端,检查USB触摸屏是否已连接。如果已激活,请卸载“elousbd”驱动程序。使用“--displaycoordinates”选项启动elousbd驱动程序,以确定和计算“--activetoucharea”选项参数(OriginX、OriginY、Width和Height)的值。使用sudo命令执行以下命令,如果您没有管理员访问权限。
# lsusb [列出连接到Linux系统的所有USB设备]
# killall elousbd [卸载elousbd驱动程序,如果已加载]
# cd /etc/opt/elo-usb
# ./elousbd --displaycoordinates [加载elousbd驱动程序以在终端上显示坐标]
现在,驱动程序将报告与被触摸区域相对应的视频坐标。使用此信息来确定和计算活动触摸区域的原点坐标(左上角)、宽度和高度。
步骤II:
--------
使用“--activetoucharea”选项参数(OriginX、OriginY、Width和Height)的值,手动加载elousbd驱动程序。
# killall elousbd [卸载elousbd驱动程序,如果已加载]
# elousbd --activetoucharea 150,200,1000,700 [设置活动触摸区域:Origin=(150,200),Width=1000,Height=700]
要在每次加载驱动程序时加载这些参数,请修改/etc/opt/elo-usb/loadEloTouchUSB.sh脚本文件,并添加这些命令行选项以启动elousbd驱动程序。
备注:
=====
当在驱动程序中选择活动触摸区域选项时,所有在活动区域外生成的触摸事件将被驱动程序丢弃,并且不会报告给Xwindows。当在活动区域内生成触摸事件时,事件报告将恢复。
==============================
6. 校准触摸屏
==============================
重要:
==========
用户必须对“/dev/elo-usb”和“/etc/opt/elo-usb”目录具有读写访问权限才能执行触摸屏校准。先前的校准命令行参数-u和-s现已过时。elova校准工具中的所有长命令行选项已修改为使用“--”格式,而不是“-”格式。(例子:“--help”而不是“-help”)
输入“# /etc/opt/elo-usb/elova --help”以获取可用的命令行参数和用法。
步骤I:
-------
从X Windows的命令窗口以root权限运行校准工具,从/etc/opt/elo-usb目录进行单视频或多个视频设置(支持Xorg Xinerama、Xorg非Xinerama和Nvidia Twinview选项)。
# cd /etc/opt/elo-usb
# sudo ./elova --nvram
‘--nvram’或‘--precal’选项将校准数据写入显示器的NVRAM和硬盘上的配置文件。若要执行只更新硬盘上的配置文件的校准,请使用下面的命令。
# cd /etc/opt/elo-usb
# sudo ./elova
在多个视频设置中,校准目标将在第一个视频屏幕上显示,并在每个目标或屏幕的默认30秒超时后切换到下一个视频屏幕。校准所有触摸屏后,数据将存储在硬盘上的配置文件中。要仅在一个特定的视频屏幕上显示校准目标(示例:videoscreen[1]),使用下面的命令。
# cd /etc/opt/elo-usb
# sudo ./elova --videoscreen=1
要更改或禁用每个目标或屏幕的默认校准超时,请使用下面的命令。[超时范围:最小=0(无超时),最大=300秒,默认=30秒]
# cd /etc/opt/elo-usb
# sudo ./elova --caltargettimeout=0 [禁用所有目标和视频屏幕的校准超时]
# sudo ./elova --caltargettimeout=45 [将校准超时修改为45秒]
要查看可进行校准的视频和USB触摸设备列表,请使用下面的命令。
# cd /etc/opt/elo-usb
# ./elova --viewdevices
要查看elova校准程序的所有可用选项和具体用途,请使用下面的命令。
# cd /etc/opt/elo-usb
# ./elova --help
步骤II:
--------
从正常使用的位置触摸目标。校准数据在校准结束时写入驱动程序。声学脉冲识别(APR)Smartset 7010控制器不需要像其他Smartset控制器那样进行3点校准。如果检测到APR 7010控制器,只会执行单触摸对齐(仅显示1个目标),而不是完全的3点校准。
=============================================================
7. 从NVRAM中检索校准值 / 预校准(可选)
=============================================================
重要:
==========
要使用此功能,显示器NVRAM(非易失性随机访问内存)中必须存在有效的校准。用户必须首先使用elova进行触摸屏校准,并将校准值写入显示器NVRAM。NVRAM中现有的值将被丢弃,因为NVRAM中只能存储一组校准值。因此,在执行新的校准并写入NVRAM之前,请确保当前的NVRAM校准值可以被覆盖。
选项I:[手动选项]
---------
要立即从NVRAM检索校准值,请从X Windows的命令窗口在/etc/opt/elo-usb目录中运行程序'eloautocalib'。命令行选项'--renew'启用从显示器NVRAM读取校准值,并覆盖硬盘上当前的配置文件中的值。
# cd /etc/opt/elo-usb
# ./eloautocalib --renew
要查看eloautocalib程序的所有可用选项和具体使用,请使用下面的命令。
# cd /etc/opt/elo-usb
# ./eloautocalib --help
选项II:[自动选项]
----------
将/etc/opt/elo-usb目录中的xEloInit.sh脚本文件复制到/etc/X11/xinit/xinitrc.d/目录。如果目标“xinitrc.d”不存在(示例:Ubuntu),请编辑/etc/X11/xinit/xinitrc脚本文件,并添加一行以调用/etc/opt/elo-usb/xEloInit.sh脚本文件。
# cp /etc/opt/elo-usb/xEloInit.sh /etc/X11/xinit/xinitrc.d/
要在系统启动时自动从NVRAM中检索校准值,请启用位于'/etc/X11/xinit/xinitrc.d/'目录中的'xEloInit.sh'脚本文件中的'eloautocalib'条目。默认情况下,eloautocalib条目被注释掉,并且不会从显示器NVRAM加载校准值。取消注释条目'/etc/opt/elo-usb/eloautocalib --renew'以在系统启动期间启用从显示器NVRAM读取校准值并覆盖硬盘上当前的配置文件中的值。
默认:'# /etc/opt/elo-usb/eloautocalib --renew' - 不从NVRAM加载校准值
修改后:'/etc/opt/elo-usb/eloautocalib --renew' - 从NVRAM加载校准值
==============================
8. 访问控制面板
==============================
控制面板应用程序让用户轻松设置可用的驱动程序配置选项。驱动程序包安装后,切换到/etc/opt/elo-usb目录并运行控制面板应用程序。
重要:
==========
用户必须对"/dev/elo-usb"文件夹具有读写访问权限,以运行控制面板应用程序。
步骤I:
-------
以root权限从X Windows的命令窗口运行控制面板工具,从/etc/opt/elo-usb目录中。使用基于图形用户界面的控制面板(/etc/opt/elo-usb/cpl)需要Motif版本3.0(libXm.so.3)。
# cd /etc/opt/elo-usb
# sudo ./cpl
步骤II:
--------
通过点击各个选项卡浏览。以下是与每个选项卡相关的信息概述。
一般 - 执行触摸屏校准
模式 - 更改触摸屏模式
声音 - 修改触摸时的蜂鸣参数(启用/禁用蜂鸣,蜂鸣音调,蜂鸣持续时间)
Touchscreen-0 - 显示与USB触摸屏0相关的数据。
Touchscreen-1 - 显示与USB触摸屏1相关的数据。
关于 - 包的信息。单击“Readme”按钮以打开此自述文件。
步骤III:
---------
如果未安装Motif,请使用命令行版本的应用程序访问控制面板。从X Windows的命令窗口在/etc/opt/elo-usb目录中运行命令行应用程序。
# cd /etc/opt/elo-usb
# ./cplcmd
=================================================
9. 卸载Elo触摸屏USB驱动程序
=================================================
重要:
==========
必须在Linux计算机上拥有管理员访问权限,才能卸载Elo触摸屏USB驱动程序。
步骤I:
-------
删除在启动时调用Elo服务的脚本或命令。
SUSE系统:
- - - - - - -
从"/etc/init.d/boot.local"文件中的配置脚本中删除步骤II中的以下条目。
/etc/opt/elo-usb/loadEloTouchUSB.sh
Redhat、Fedora、Mandrake、Slackware和Ubuntu(6.10或更高)系统:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
从"/etc/rc.local"文件中的配置脚本中删除步骤II中的以下条目。(或"/etc/rc.d/rc.local"文件)
/etc/opt/elo-usb/loadEloTouchUSB.sh
Debian、Ubuntu(6.10之前)系统:
- - - - - - - - - - - - - - - - - - - - -
a.) 使用update-rc.d维护脚本删除在步骤II中创建的符号链接文件。
# update-rc.d -f elorc remove
b.) 删除放置在"/etc/init.d"目录中的elo脚本文件“elorc”。
# rm /etc/init.d/elorc
步骤II:
--------
从系统中删除所有elo驱动程序文件。
a.) 删除主elo驱动程序文件夹。
# rm -rf /etc/opt/elo-usb
b.) 删除与elo相关的设备文件夹和文件。
# rm -rf /dev/elo-usb
# rm -rf /etc/udev/rules.d/99-elotouch.rules
步骤III:
---------
重启系统以完成驱动程序卸载过程。
# shutdown -r now
===================
10. 故障排除
===================
A. 确保在目标Linux系统上已安装libusb-1.0库。驱动程序将不适用于旧版libusb-0.1库。大多数Linux发行版默认附带较新的libusb-1.0库。也可以通过从libusb-1.0网站上下载和编译库源代码(需要gcc v4.0.0或更高版本)来安装。
B. 如果触摸无效,请检查elousbd驱动程序是否已加载并且当前在内存中可用。一些Xorg Xserver版本在用户注销时终止触摸屏驱动程序。此情况下的当前解决方法是从X Windows启动脚本启动驱动程序或重启系统。
# ps -e |grep elo
检查驱动程序日志文件中是否报告了任何错误。
# gedit /var/log/elo-usb/EloUsbErrorLog.txt
如果驱动程序不存在,则重新加载驱动程序。手动加载驱动程序需要root访问权限。普通用户需重启系统,以便在系统启动期间重新加载elousbd守护进程。根据设置的访问控制和文件权限,普通用户可能能够手动加载驱动程序。
# sudo /etc/opt/elo-usb/elousbd
C. 如果从rc.local或boot.local等常规启动位置启动Elo触摸屏驱动程序无效,请首先通过在X Windows GUI的终端窗口中手动启动驱动程序来测试触摸屏是否工作。
# sudo /etc/opt/elo-usb/loadEloTouchUSB.sh
如果手动启动驱动程序时触摸屏工作,请尝试将触摸屏驱动程序启动行添加到X Windows启动脚本的末尾。X Windows启动脚本通常位于以下路径/etc/X11/xinit/xinitrc.d/。从X Windows启动脚本运行触摸屏驱动程序仅在用户成功登录到GUI登录屏幕后提供触摸输入。
D. 在GUI控制面板声音选项卡(蜂鸣测试按钮)中,蜂鸣声不工作,或者如果从非root用户上下文手动加载驱动程序。驱动程序必须从系统启动脚本或root用户帐户加载,才能使蜂鸣提示功能正常。蜂鸣提示功能还依赖于pcspkr(PC扬声器)内核模块。
E. 在尝试手动加载驱动程序时,如果出现“打开USB_ERROR_LOG_FILE时出错”,请检查/var/log/elo-usb/EloUsbErrorLog.txt文件的文件权限。用户需要对此日志文件具有读写访问权限,以启动驱动程序。
F. 如果目标Linux平台在单独的X视频屏幕模式或Xinerama模式下配置有多个视频屏幕,则在校准后,光标可能不会始终对触摸做出正确的响应。驱动程序用于发送触摸事件的默认调用XTestFakeMotionEvent存在一个错误,防止光标在单独的X视频屏幕模式或Xinerama模式中切换[Xorg v7.4或更高版本]。在这种情况下,使用“--xwarppointer”命令行参数启动驱动程序,以使用XWarpPointer调用而不是XTestFakeMotionEvent调用将触摸事件发送到X Windows系统。
==============================
11. 联系Elo TouchSystems
==============================
网站:http://www.elotouch.com
电子邮件:eloinfo@elotouch.com
邮寄地址:
----------------
Elo Touch Solutions Inc,
1033 McCarthy Blvd,
Milpitas, CA 95035
USA
电话:(800)557-1458
(650)361-4700
传真:(650)361-4722
--------------------------------
Elo TouchSystems GmbH & Co. KG
Haidgraben 6
D-85521 Ottobrunn
Germany
电话:+49 (0) 89/60822-0
传真:+49 (0) 89/60822-150
--------------------------------
Elo TouchSystems, NV
Diestsesteenweg 692
B-3010 Kessel-Lo
Belgium
电话:+32 (16) 35-2100
传真:+32 (16) 35-2101
================================================================================
版权所有(c)2014 Eli Touch Solutions
保留所有权利。
================================================================================
000004145</originx,originy,width,height>
Please report any broken links by emailing support@elotouch.com and include a link to the knowledge article