Elo Touch Solutions Multi-Touch Driver Package User Manual

Elo Touch Solutions
670 N McCarthy Blvd
Milpitas, CA 95035

Package Version:  9.0.0
Release Date: 2023-02-27
---------------------------------------------------------------------------------------------------------

Supported OS:
	Windows Workstations: 7 and newer.
	Windows Server: 2008R2 SP1 or newer.

Supported Touch Technologies: 
iTouch (SAW)
iTouch Plus (SAW)
pCap
Optical 
IntelliTouch (SAW)
IntelliTouch Plus (SAW)
AccuTouch
IR (CarrollTouch/Multi-touch)
PulseTouch

Supported Touch Controllers: 
iTouch Plus (dual touch): 2515-00/01/06/07
IntelliTouch Plus (dual touch): 2510, 2515-7, 2520, 2521, 32000
AccuTouch (single touch): 2210, 2216, 2218 
IntelliTouch (single touch): 2310, 2500, 2700, 2701 
Carroll Touch IR (single touch): 4000, 4500 
Surface Capacitive (single touch): 5000, 5010, 5020
Projected Capacitive (up to 40 touches).

Supported Languages:
Chinese Simplified
Chinese Traditional
English
French
German
Italian
Japanese
Portuguese
Spanish

NOTES:

•	Microsoft KB Requirement for Win7 and Win Server 2008 R2:

To enable SHA-2 to support on Windows 7, three Microsoft KBs need to be installed before installing Elo’s driver package. Please follow steps below to install the KBs:

	Install KB4490628
	Install KB4474419 then reboot
	Install KB4534310 then reboot.

Elo Multi-touch version 7.0.0 (or newer) has been signed with Microsoft’s SHA-2 signature, the 3 KBs must be installed before installing Elo’s driver 7.x.0 package.

For detailed requirements to enable the SHA-2 to support on Windows 7, please see the Microsoft document:

https://support.microsoft.com/en-us/help/4472027/2019-sha-2-code-signing-support-requirement-for-windows-and-wsus

•	When switching between admin and non-admin user accounts is desired, please log out the existing account and log in with the new account credential. It requires only one user logs in at the time.

1. Installation and removal instructions

The user must be logged into an Administrator account to run the Elo Setup installer. 

1.1 Installation

•	Double click on Setup.exe
•	Accept the installation agreement and proceed with the installation process.
•	Once installation is complete, both USB and PulseTouch drivers will be installed regardless of if the devices are connected or not; but the serial driver will be installed only if the touch screen with serial (RS232) interface is connected at the time of installation.
•	Elo Service Reporting will be installed by default on Windows 10. Users can modify EloOptions.ini to not install this service (set the value of “InstallServiceReportingClient” to 0 under section [Setup Options). 
•	Before running Setup.exe, user can set certain touch properties using EloOptions.ini located in the setup packages' "Common" folder. Open EloOptions.ini, under section [Setup Options], edit entries below:

•	Touch_MouseMode
•	Touch_Limit
•	Touch_EventGeneration
•	Beep_ExternalSpeaker
•	Beep_MotherboardBeeper
•	Beep_Duration
•	Beep_Frequency
•	IR_BeamMonitoring
•	IR_Unintentional_Touch_Rejection
•	IR_AutoCalibration
•	IR_CustomMapping1PCap
•	HardwareHandshaking
•	LogKernelEvents 

Below is summary of some common entries (please refer to the EloOptions.ini for the complete detailed descriptions of all entries).
Touch_MouseMode (0|1): install Elo touch screen as mouse/pointer device
On Windows 7 or newer, user can choose to install Elo's touch screen as a mouse/pointer device by changing " Touch_MouseMode" to 1. This change must be done before installation. 
There are a few ways to make changes to a setup package:
•	Unzip the setup package using a zip/unzip tool (for example 7-zip) and then change the EloOptions.ini.
•	If the setup package is a self-extracted executable, double-click the setup program and then un-check the checkbox "When done unzipping open ...” You can also choose a different location for storing unzip files. Below is a demonstration screen shot. Once unzip completes, the user can make changes to EloOptions.ini.
	     
Touch_Limit: 
Enforces max number of touches (in digitizer mode) that the touch device supports.
Touch_EventGeneration:
Configure touch behavior, i.e., normal, click on finger-down or click on finger-up.
Beep Settings:
Configure beep-on-touch to come from external speaker, motherboard beeper and/or IR monitor beeper.
Beep_Duration:
Duration of beep tone in milliseconds.
Beep_Frequency:
Frequency of beep tone to influence pitch.
IR_AutoCalibration (0|1)
User can simplify the IR calibration process by setting the IR_AutoCalibration to 1 under section [Setup Options] in EloOptions.ini. For this to work, correct calibration values must be existing in the EloOptions.ini. At the end of setup, user will be prompted with one-touch calibration to identify each IR monitor(s) and load the corresponding calibration parameters (based on the size and interface type of the IR monitor). 
The existing IR calibration values in EloOptions.ini in the installation package are place holders and are for reference only; user needs to set the correct calibration values in the EloOptions.ini first before enabling IR_AutoCalibration (set it to 1) and running Setup.exe.
Touch_MouseMode and Beep settings under [Setup Options] section in EloOptions.ini will be applied to new touch devices.
For detailed information about these ini entries, please refer to EloOptions.ini, there are detailed descriptions for each section and its entries.
Once installation is complete, both USB and PulseTouch drivers will be installed regardless of the devices are connected or not; but the serial driver will be installed only if the touch monitor with serial (RS232) interface is connected at the time of installation.
IR_CustomMapping1PCap (0|1)
This is a custom flag for specific type of pCap (pCap with specific system BIOS product name) and IR (pre-calibration data is available in EloOptions.ini) only. When this flag is on or system with a pCap and an IR, touch on the pCap will be mapped to the primary display and the touch on the IR will be mapped to the non-primary display. The default value is 0. 

	IR_BeamMonitoring (0|1)
Enable (1) or disable (0) IR beam status monitoring. This works only if the touch monitor has been calibrated. To invoke the beam monitoring at end of installation, the auto calibration feature must be turned on by setting both IR_AutoCalibration and IR_CustomMapping1PCap to 1. 
When beam monitoring is enabled, EloConfig will scan the IR beam status with scan frequency specified by the user (default is 20 seconds). When any failed beams have been detected, a horizontal and/or vertical shaded bar will be drawn on the display to indicate the locations of failed beams. A message box will pop up to alert the user of the condition. The user can click the "Close" button of the message box to dismiss the visual alerts. All visual alerts will be cleared once the user has clicked the Close button on the alert box or no beam failure has been corrected (for example, an obstruction on the surface of the monitor has been removed), there will be no further visual alerts unless different beam failure has been detected.
If logging has been enabled for IR beam monitoring, a Windows Event will be logged, and user can view the event using Windows Event Viewer under Event Source "EloConfig". An event will report beam information including total beams, failed beams and position of failed beams in the form of beam indexes from 0 to max beam count on each axis.
	IR_BeamStatusScanInterval (10 - 120)
	Time interval (in seconds) between beam status scanning. Valid range is from 10 to 120 seconds. Default value is 20 seconds.
HardwareHandshaking (0|1)
If a serial RS-232 touch device requires hardware handshaking, this flag should be turned on (set the value to 1). The default value is 0.

LogKernelEvents (0|1)
This option enables the logging of touch history to the Windows’ System log when “LogKernelEvents” in EloOptions.ini is set to 1.

The kernel touch logging consists of a pair the initial touch and un-touch with the same unique index. This can be used for debugging touch issues.
The pairing index is in the range of 0x0000 to 0xFFFF; once it reaches to the maximum (0xFFFF), it will be reset to 0 again.

1.1.1 PulseTouch Calibration File: using alternative storage location 

The PulseTouch driver is installed by default together with the USB driver. The default PulseTouch calibration file is stored under C:\Program Files\Elo Touch Solutions\APRData. 
If the user needs to store the file in different location, please follow steps below:

•	Make sure there is no current Elo installation. 

•	Run RegEdit.exe and create a new sub-key EloMtApr: 
HKLM\System\CurrentControlSet\Services\EloMtApr\
•	Under sub-key EloMtApr, add a new string entry (type REG_SZ) named “AprDataPath” and set its value to desired location for storing the calibration file; for example, E:\EloMtAprCalFile where EloMtAprCalFile is a folder under partition E:\
•	Run the EloSetup. Once the installation is complete, the PulseTouch’s calibration file will be stored under location specified in steps above.
1.2 Uninstallation

•	Launch the Control Panel and choose Programs and Features.
•	Select to remove “Elo Touch Solutions 7.x.x”.
•	When touch driver is removed, the “Elo Service Reporting” will also be removed.

Please note: “Elo Service Reporting” can be uninstalled separately through Windows’ Programs and Features.

1.3 Silent Installation

•	Open the command line shell as an administrator and go to the root of the installation package (where Setup.exe is located).
•	Type: “Setup.exe /s”

1.4 Silent Uninstallation

•	Open the command line shell as an Administrator and go to the root of the installation path (i.e., C:\Program Files\Elo Touch Solutions\...).
•	Input “EloSetup.exe /s /u”
•	Exit the command line window.

1.5 Silent Installation – Log file

	To create a log during installation, use the following command line option: 
	EloSetup /log
	
The log file name is in the format of EloSetup_yyyy_mm_dd.log and is located under "C:\ProgramData\Elo Touch Solutions\" on Windows 7 or newer systems. The user will need to enable hidden files and folders to view the log. 

2. Setup Options

2.1 To show setup option, type “EloSetup /?” in command line.

2.2 Setup for Single-touch:

If single-touch is preferred, follow the steps below:

•	Locate the Elo driver installation package.
•	Locate and open the “Common” folder in the package.
•	Locate and open the EloOptions.ini file.
•	Change the “Touch_Limit” value from 0 to 1 and save the file.
•	Run Setup.exe

Note: All multi-touch functions will be disabled in this scenario. This change in EloOptions.ini must be done before installing the Elo driver package.

2.3 Setup for Maximum Touch:

To set the number of touches, follow the steps below:

•	Locate the Elo driver installation package.
•	Locate and open the “Common” folder in the package.
•	Locate and open the EloOptions.ini file.
•	Change the “Touch_Limit” value from 1 to n (n is maximum touches supported by the touch device) under [Setup Options] section and save the file.
•	Run Setup.exe

3. Configuration Tool: EloConfig.exe

This is the configuration tool for the Elo Multi-Touch driver. The setup program will launch the tool at the end of the installation. This program will be running in the background and will launch when the user starts it from the Window’s Control Panel, or manually execute it from the desktop icon.

The following is a description of each of the buttons located in the Elo Configuration main menu.		

3.1 Device Information

Each calibrated Elo touch monitor is presented by a Radio button with title "Monitor 1”, "Monitor 2"...in Device Information.

When it shows "Screen 0", “Screen 1” meaning the touch monitors have not yet been calibrated. Please note that Elo monitor number may not always be the same as Windows Desktop Monitor number.

Launching “Device Information” will display various properties of each connected (and supported) Elo touch screen such as Monitor Resolution, Controller Model, Controller Firmware Version, Controller Serial Number, etc...

3.2 Calibrate

This feature serves two functions:
•	Map your monitor using Microsoft’s monitor mapping utility.
•	Calibrate your Elo touch screen(s) using Elo’s calibration tool.

3.2.1 Three-point Calibration

The Elo calibration tool is used to calibrate touch recognition on supported Elo touch screen monitors. After touching all 3 targets, the screen will show "Accept" and "Retry" buttons. The user can then test the calibration accuracy before selecting either “Accept” (saving calibration data) or “Retry” (re-doing the 3-point calibration).

Note: Some settings under “Device Information” cannot be configured until the monitors are calibrated.

User can start the calibration session in two ways:

	Method one - from EloConfig UI:

User can start a calibration session by clicking EloConfig – Calibrate. The user will follow the screen instruction to touch specific target and complete the calibration process.

Method two - from command line (4 options):

Option 1: Users may also start the calibration tool from the command line by typing:

        EloConfig.exe /align

From the "Elo Touch Solutions" directory located under "Program Files."  The user will experience the same as starting the calibration session from EloConfig UI.

Option 2: If the user wants to calibrate a touch monitor to a known display, the user may use command line below:

        EloConfig.exe /align 3

The above command will calibrate a touch monitor to display number 3 which is an “Elo Monitor Number” as shown by EloConfig – About – Identify Monitors. When a valid Elo Monitor is following command option “/align”, the calibration session will terminate after any touch monitor is calibrated.

Option 3:  If the user wants to calibrate a touch monitor to the primary display only, the user can use command line option “primary” as follows:

        EloConfig.exe /align primary

Option 4:  If the user wants to calibrate a touch monitor to the non-primary display only, the user can use command line option “nonprimary” as follows:

        EloConfig.exe /align nonprimary

Please note option 4 works only if the system has exact two monitors connected (otherwise the non-primary will not be unique).

3.2.2 One-touch Calibration

PulseTouch and pCap touch monitors usually do not need to be calibrated. But if a system has multiple display monitors connected, the user will need to run the calibration to map touch to display; in this case the user needs to touch only one target during the calibration process.
If the mouse mode is selected during the driver installation (Touch_MouseMode =1), and if the video display is rotated afterward, re-calibration is required.

3.2.3 Auto Mapping Touch to Elo Monitor

Based on EloOptions.ini settings, EloConfig can map touch to Elo monitor at startup if auto mapping is enabled. To enable this feature, open EloOptions.ini, under section [Calibration], set the value of “AutoMapTouchToDisplay” to 1. 
This feature maps touch to the Elo monitors only; it does not do touch calibration.
For this mapping to work, there should be no more than one Elo monitors present in the system and the monitor’s EDID must contain Manufacture ID “ELO”. Please note that not all Elo monitors have the expected Manufacture ID.

3.2.4 Alternative calibration approach 
3.2.4.1 Enforce 3-point calibration:
By default, calibration is carried out by the controller (if onboard calibration is supported). But the user might have special case that need to bypass controller onboard calibration and use driver calibration. In this case, the user needs to configure an option in EloOptions.ini file. Under the section [Calibration], change the value "DriverCalibration" to 1. User does not need to reinstall the package for this change to take effect.
	3.2.4.2 Apply Master-copy of calibration data:
User can use utility EloCalMgr.exe (Admin privilege required) to create a master-copy of calibration data (EloCalMgr /get_cal) and then apply the data to other monitors (EloCalMgr /set_cal). The master-copy of calibration data is saved in EloOptions.ini, under section [Cal Params].

3.3 Beep Settings

	

Beep on touch is a setting in which a “beep” sound is generated on contact with the monitor.  The user will have the option to enable or disable each of the following settings independently:

•	External Speaker:
Plays a sound through an external speaker. If user enables the available sounds or custom sound file option.
•	Motherboard Beeper:
Plays a beep through the internal motherboard speaker. With this option selected, the user will be given the option to modify the beep’s “Tone” and “Duration” through two independent separate slider bars.

3.4 Touch Settings

   
	3.4.1 Uncalibrate

Initialize the controller’s calibration and scaling parameters to 0 – 4K.

3.4.2 Disable touch

Toggle between disable and enable touch function.

3.4.3 Single Touch mode

The “Single Touch Mode” setting allows the user to toggle between multi-touch and single-touch on multi-touch capable monitors. This is a global setting meaning that all supported touch monitors connected to the system will be limited to single-touch if the setting is enabled.

When Single-touch mode checkbox is checked, single-touch will be enforced for this device. When this checkbox is unchecked, action below will be taken:

•	If the touch monitor is not yet calibrated: device's touch capacity will be set to the corresponding value as specified by Touch_Limit under EloOptions.ini's [Setup Options] section;
•	If the touch monitor is calibrated: device's touch capacity will be set to the corresponding value as specified by Touch_Limit in per-monitor section; if the per-monitor section or Touch_Limit entry does not exist in EloOptions.ini, then Touch_Limit specified under [Setup Options] will be used if the entry exists (Otherwise set to device's max capacity Touch_Limit = 0).

3.4.4 Show Right Mouse button tool

This option is available when the touch driver is installed in mouse mode. A Right-click button will be displayed at the top-left corner of touch monitor selected as shown in the screen shot here: 

	To configure Elo touch monitor as a pointer device (mouse mode), user needs to 
	edit EloOptions.ini before installation: under section [Setup Options], set  	"Touch_MouseMode = 1".

3.4.5 Treat Single-click as Double-click

Enable one click to work as double click. Applicable for USB monitors only.

3.4.6 Generating of Click event

The Click event has three options:

•	Normal: Windows click event is generated when a touch-down followed by a touch-up within system defined click area. This is the default touch mode.
•	Click on Finger-down: Windows click event (equivalent to a mouse button click) is generated on contact (touch-down) with the touch monitor.
•	Click on Finger-up: Windows click event is generated when contact is released (touch-up).

3.4.7 Enable Drag option

Starting from version MT 7.2.1, a new option “Enable Drag” is available with either “Click on Finger-up” or “Click on Finger-down”, and only applicable to the USB monitors.

For users dealing with fixed UI, for example, a POS station where user’s clicking is the only function to perform, we recommend “Click on Finger-up” or “Click on Finger-down” without “Enable Drag”. This is the default when either of the two touch modes has been selected. This default selection provides fast/reliable clicking events. Under this default setting, the user will not be able to do normal desktop operations like dragging desktop icons, moving a Window around.
If users prefer either of the two touch modes but also have to work under Windows desktop environment where dragging a desktop icon or moving an application window around is frequently needed, we recommend the users to choose either of the two touch modes with “Enable Drag” option, this will allow users to perform most of the common desktop operations.
Support Push-To-Talk with digitizer configuration

Starting from version MT 7.2.1, when Elo touch device is configured as a digitizer (which is the default installation configuration), if users choose “Click on Finger-up” with “Enable Drag”, the users can press and hold a button without the need to wiggle/shift/roll finger to activate Windows button down event.  
Please note, on Windows7 or newer, the user needs to turn off “Flick” gesture to make the above feature to work as designed.
3.5 Touch Zones
	This utility allows the user to define certain areas, or “touch zones”, on the display, where touch is either enabled or disabled. The user can define a maximum of 64 zones for a single touch screen.

			

To define a new touch zone:

First set the option to enable touch inside or outside of the defined zone, then click "Define Zone". A rectangle box pops up which can be used to define a touch zone. Drag the box to desired location within current display; or change the box size by dragging any boarder or corner of the box.

They are either all defined as “Touch inside the zone” or “Touch outside the zone”, no mix option.

To delete an existing zone:

To remove a touch zone, select the zone number and click "Delete"

       

3.6 Edge Acceleration

The Edge Acceleration tool is used to increase sensitivity along the edges of the touch screen. This option allows users to access areas of the screen that would otherwise be limited by the frame of the monitor. Note that EA may not be configured until the monitor has been calibrated.

The position of EA may be individually increased/decreased by entering the desired pixel along of each edges. EA may be disabled by entering value of 0 in all respective boxes.

The user must click “Apply” before closing for any changes to take effect.

3.7 Common Settings 

Configure shared touch screen settings such as hiding the Arrow Mouse pointer, Spanned display mode and Double Click Settings.

3.7.1 Spanned display mode

The “Spanned display mode” option is only available when a single “spanned” monitor is detected on the system. If the system is not configured in “spanned” mode, this option will be grayed out. 

Enabling the “Spanned display mode” option followed by clicking the “Calibrate” button in the main EloConfig page will display a configuration window asking you to provide the number of rows, columns, and monitor orientation in the spanned setup. After this information has been entered, click the OK button and you will be able to calibrate each supported touch monitor in the setup. Note that in order to be able to calibrate your monitors in the spanned set up; all monitors need to be set up in the same orientation.

To calibrate Elo touch monitors in video span mode, user needs to make change to the EloOptions.ini to enforce 3-point driver calibration as following:

[Calibration]
DriverCalibration = 1

This will invoke the 3-point calibration for all Elo touch monitors. 

3.7.2 Hide Arrow Mode Pointer

This feature allows the user to turn on/off the standard mouse cursor.

	3.7.3 Restart Windows Touch Service

	Select this option to restart Windows Touch Service in case of no touch is reported. 	Applicable on Windows 7 only regardless of Service packs.

3.7.4 Double-click Settings

The double-click area represented by the square with a folder image defines the maximum area a double-click is recognized. If two clicks are not within this area it will not be considered as a valid double-clicks. The user can change the size of the area to make double-click easier to be registered by the system. The bigger the area the easier a double-click gets recognized by the system.

The user can also set the maximum time interval between the two clicks. 

User can verify if the double-click setting works by performing a double-click on the image and checking for the folder open/close status.

3.8 Clean Screen Notification

Users can clean touch monitors without power-down the display by using features below. Once 	a cleaning session is invoked, a top-level layer full window will cover the display and allow the user to clean the screen without interact with any running applications.

	
Enable Clean Screen Notification:

If this option is enabled, the cleaning session will be invoked by one of the two options below:

•	Time Elapsed: Users specify number of hours that elapses to start the cleaning session. Valid input is from 1 to 240 hours (10 days).

•	4-Corner Touch: Users can invoke the cleaning session by touching 4 corners of the screen. The 4 corners can be touched in any order. The corner area is defined by any of the four corner-rectangle areas with 1/4 of monitor width and height. User should touch the 4 corners in a normal speed (within 3 seconds between touches). Users should avoid touching any buttons of the running application during the process. 
	
	Below is a screen shot of the cleaning session. Once the user has completed the 	cleaning, simply double-click the touch screen to exit the cleaning mode.

	Limited support: 

This feature is available to touch monitors with USB interface; it's not supported in RS-232 Serial or PulseTouch monitors. 

	This feature does not work if video display is configured in spanned display mode.
 
3.9 Untouch Timeout & Drag Delay

Applicable to the USB monitors only.

Drag delay:

A touch that moves/shifts within specified time and distance will still be considered as a touch down event.

Delay period: 100 to 2,000 milli-seconds (ms); default is 200 ms.
Max finger shift: 0 to 10mm; default is 1 mm.

Untouch timeout:

A touch-up event will be generated if a touch-down has been longer than the specified time and the touch shift is within the specified distance. 

Timeout: 1 to 300 seconds; default is 10 sec.
Max finger shift: 0 to 10 millimeters (mm); default is 1 mm.

3.10 IR Beam Monitoring

This option will only be available and visible when a supported IR monitor is connected to the system. The IR Beam Monitor function allows user to monitor the health of the IR touch monitor. User can configure this function to periodically check if the Infrared LEDs and receivers are functioning properly.
In the EloConfig, the "IR Beam Monitoring" button will be visible for IR touch monitors after the monitors are calibrated.
Users can set options below for monitoring IR beam status:
Enable or disable beam health monitoring.

Enable logging: Write beam failure messages to Windows’ Application event log with 
event error level "Error" under Source “EloConfig". Subsequence failures at the same location will not generate duplicated event into the Application log. An "Information" level event is logged when all beams return to working condition. Beam test interval: Specify beam scan frequency in the range of 10 to 120 seconds.

When the beam monitoring is enabled, a message box along with a shaded a vertical and/or horizontal bar will pop up to indicate the failed beams or blocked area. Touch will not function within the shaded area on the display until the failed condition is corrected.

      

	Events as shown in Event Viewer’s Application Log:

3.11  PulseTouch Settings

This option will only be available and visible when a supported PulseTouch monitor is connected to the system and its PulseTouch tab is selected. Clicking on the PulseTouch button will launch the PulseTouch preferences window allowing the user to select four unique usage types: Point of Sale, Signature, Gaming, and General. 

Note that “Apply” must be selected prior to exiting the preferences window before any changes are applied.

3.12 Virtual Keyboard

	Provide the onscreen software keyboard option with touch interface. Keyboard can be minimized, maximized. 

             Users can press-down anywhere inside the virtual keyboard and drag it around to desired location on the touch screen.

             The software keyboard has three states:

	 (1) Normal State:
	
	 This is the default state when the virtual keyboard invoked:

	
	 (2) Full State

	 User can click the "More" button to change the keyboard to full state:

	 (3) Minimized State

	 The user can click the button "Mini" to minimize the virtual keyboard:

3.13 About

The About box provides the driver version, build time, and copyright information.

Online Support: provides link to Elo’s Online Support web page, where users can get support and information on Elo products.

User Manual: serves as both a readme and an user guide for this application.

Component versions: shows version information for both drivers and EloConfig. Please note that a kernel driver file (.sys) versions may not necessarily have the same versions as EloSetup.exe and EloConfig.exe.

Run EloProbe: internal diagnostic tool to collect information about the system under test.

Identify Monitors: User can click this button to view current “Elo Monitor Number” for each monitor connected to the system. The “Elo Monitor Number” is not necessarily the same as “Windows Monitor Number” as identified in Windows Desktop. If user uses command line to start calibrating a touch monitor to particular monitor, the user should use “Elo Monitor Number” to specify the targeted monitor. 

This function will flash the number of the monitor on the screen/display. This is primarily used when there are multiple monitors connected to the system. Note that this utility will not function until the monitor has been calibrated.

		

4. Instructions for Windows 7 Embedded 

Note: This section is for reference purposes, the actual Elo driver package name may be different.

The following notes are intended as a guide for enabling multi-touch functionality with Windows 7 Embedded.

4.1. 	Use Tap.exe to generate a PMQ file including all hardware information of 			target system.

4.2. 	Start ICE (Image Configuration Editor), create an ANSWER file, and import 	this PMQ file. Add the following components from “Distribution Share” to the 	ANSWER file:

		a. \FeaturePack\Application Support\COM OLE Application Support
		b. \FeaturePack\Devices and Printers\Device Framework
		c. \FeaturePack\User Interface\Tablet PC Support

4.3. 	From the menu of ICE, select [Validate] -> [Add Required Packages], or 	resolve the dependencies manually.

4.4. 	There are different ways to install the Elo multi-touch driver for Windows 7. 	The easiest way to do it is as follows: 

a. Download the latest Windows 7 driver version from www.elotouch.com/support/downloads, and unzip it to a folder.
For example, \EloMultiTouch_6.7.0\ if version 6.7 was downloaded. The following instructions assume a folder called \EloMultiTouch_6.7.0\ was created.

b. Copy \EloMultiTouch_6.7.0\ to “$OEM$ Folders” in “Distribution Share” by creating the following structure on the file system. \$OEM$\$1\ means the root directory on target system.

\DS\$OEM$ Folders\EloTouch\$OEM$\$1\EloMultiTouch_6.7.0\

c. Now go back to ICE. “EloTouch” will show up under “$OEM$ Folders” in “Distribution Share”.  Right-click “EloTouch” and select “Insert Oem Folders Path”.

d. From the menu of ICE, select [Insert] -> [Synchronous Command] -> [Pass 4 specialize…]. Enter the following command (/s means silent install. /iu means USB touch screen. /ia means PulseTouch touch screen).

			C:\EloMultiTouch_6.7.0\EloSetup.exe /s

e. From the menu of ICE, select [Tools] -> [Create Media] -> [Create IBW image From Answer File]. Select a bootable USB drive as the target folder for the image. Click [OK].

f. Boot up the system with this USB drive, and follow the steps of IBW (Image Builder Wizard). After the first reboot, unplug this USB driver or change the BIOS Boot setting to boot up from the target system.

5. Touch configuration utility: EloDriverDefaults.exe

EloDriverDefaults is a console utility to be used by administrators to enforce certain touch properties for Elo touch monitors. This tool must be used after Elo touch package has been installed. The utility will read EloOptions.ini as its input. To open the EloOptions.ini for editing, the user must run Notepad as admin and then open the EloOptions.ini located in the installation folder, namely C:\Program Files\Elo Touch Systems\EloOptions.ini.
5.1 Purpose of the tool
When new touch monitors are connected to a system, they can start functioning with certain default properties as defined under section name [Device Default] in EloOptions.ini.
5.2 Supported touch properties
5.2.1 Beep options: 
User can specify sound source of beep (touch alert) or no sound at all:
Beep off (0)
Beep from motherboard beeper (1)
Beep from external speaker (2)
Beep from both beeper and speaker (3)

5.2.2 Touch modes:
User can specify the touch action to be interpreted by the system as a mouse click:
Normal (6)
Click on finger-up (1)
Click on finger-down (0)

5.2.3 LogKernelEvents (0|1):

User can specify the supported action in \Program Files\Elo Touch Solutions\EloOption.ini, then execute EloDriverDefaults.exe -w from the command line with the admin privilege to apply the new value.
LogKernelEvents = 0|1

5.2.4 Touch_MouseMode (0|1):

User can specify the supported action in \Program Files\Elo Touch Solutions\EloOption.ini, then execute EloDriverDefaults.exe -w from the command line with the admin privilege to apply the new value.

EloDriverDefaults.exe /Touch_MouseMode 0
EloDriverDefaults.exe /Touch_MouseMode 1

5.2.5 Enforce single touch (0|1)
This option is for Windows 7 or newer systems. User can choose to enforce single touch on touch monitors capable of multi-touches.
In EloOptions.ini, the above properties might look like below:
	[Device Default]

	Touch_Limit = 1
	Touch_EventGeneration = 6
	Beep_ExternalSpeaker = 1
	Beep_MotherboardBeeper = 0
	Beep_IrMonitorBeeper = 0
	Beep_Duration = 100
	Beep_Frequency = 800
	EnableTouch = 1
Please note value of Touch_Limit is ignored if Touch_MouseMode under [Setup Options] is 1; and touch limit is not enforced if Touch_Limit is 0.
	[IR Beam Monitoring]
	Enable = 1
	Logging = 1
	ScanInterval = 20
Please refer to EloOptions.ini for detailed instructions.
5.3 Command line options
5.3.1  -s Silent mode, the console box (cmd.exe) will not be shown.
5.3.2  -v Verbose mode, the console box shows running status.
5.3.3  -l Text log file will be generated. The log will be located under C:\ProgramData\. User needs to set Folder Options to enable the "Show hidden files, folders and drives".
5.3.4  -h Show help on all command options.
5.3.5  -r EloDriverDefaults reads settings from the first touch device (screen index 0) and writes into EloOptions.ini. User can use this command line option to populate device global parameters in EloOptions.ini from existing touch device settings.
5.3.6  -w EloDriverDefaults reads settings from EloOptions.ini and writes them into Elo driver defaults storage location in system registry:
HKLM\System\CurrentControlSet\Services\EloTouchscreen.
Then EloDriverDefaults will apply the settings to each of the touch devices connected to the system.
User can use this option to store driver defaults in systems registry so that when new device is connected to the system, these default parameters will take effect for the device.
5.3.7  -m Apply per-monitor settings as defined in EloOptions.ini. Each monitor has a section in the format [Monitor1], [Monitor2]... For detail, please see section below: 5.5 Per-monitor settings.
5.3.8  -i  Apply IR beam monitoring settings as specified in EloOptions.ini under section [IR Beam Monitoring].
5.4 Pre-conditions must be met before running the tool: 
5.4.1 EloDriverDefaults.exe must be executed under the Elo multi-touch package installation folder, namely:
C:\Program Files\Elo Touch Solutions\
5.4.2 The utility must be run with system Administrator's privilege. 
5.4.3 Command line options -r , -w , -m must be used one at a time, none of them should be used with another as command line options.
5.5 Per-monitor settings
Users can set touch properties on a per-touch monitor basis. In EloOptions.ini, the user can specify entries in the format below where each monitor is represented by a section with name like Monitor1, Monitor2, up to 32 touch monitors. These setting will only be applied if the monitor is calibrated.
[Monitor1]
Beep_ExternalSpeaker = 0 
Beep_MotherboardBeeper = 1 
Beep_IrMonitorBeeper = 1 
Touch_EventGeneration = 6

[Monitor2
Beep_ExternalSpeaker = 1 
Beep_MotherboardBeeper = 1 
Beep_IrMonitorBeeper = 1 
Touch_EventGeneration = 1

6. Appendix

6.1 Installation/Uninstallation from Device Manager

6.1.1 Installation
•	Open Windows Device Manager.
•	Under <Human Interface Devices>, identify Elo's "USB Input Device" (Properties -> Details -> Hardware IDs shows PID=0x4E7).
•	Right-click on Elo's <USB Input Device>, and follow these steps:
-	Update Driver Software... 
-	Browse my computer for driver software
-	Let me pick from a list of device drivers on my computer
-	Click the "Have Disk..." button
-	Browse to the location of Elo package and choose EloMTUsb.inf
-	Choose the correct entry (For Example, "Elo Touch Solutions Touchscreen 0x22 2515U IT Plus")
-	Click "Next" to complete the installation.
•	Identify Elo device under "HID-compliant consumer control device", and repeat steps a through g above, but at step f, choose "Elo Touch Solutions Touch Screen - USB HID MT Collection”.

6.1.2 Uninstallation

To uninstall Elo drivers from the Device Manager, right-click on "Elo Touch Solutions Touch Screen - USB HID MT Collection” and select Uninstall. Repeat process for "Elo Touch Solutions Touch Screen 0x22 2515U IT Plus".

You may need to manually refresh the device list (at root level, choose "Scan for hardware changes") to get the device status updated to system defaults. It may take a while (10 - 30 sec) for the "USB Input Device" and "HID-compliant consumer control device" to get restored.

6.2 Sending Smartset Commands

Users can specify Smartset commands in EloOptions.ini to be sent to the controller whenever Elo's device driver is loaded. This feature applies to Elo touch screens using USB or Serial (RS-232) interface with Elo's device driver installed.

6.2.1 Format of the Smartset Command in EloOptions.ini:

Specify Smartset Commands under section [Smartset Commands]. Smartset commands listed under this section will be sent each time Elo's device driver (USB or Serial) is loaded. This happens when the system reboots; or for USB interface, when the USB cable is re-plugged in.

Each Smartset Command takes one line. Below is an example line of a Smartset command (n1 to n8 are hex numbers):
my_ss_command = n1 n2 n3 n4 n5 n6 n7 n8
In the example above, "my_ss_command" is the string you name this line of Smartset commands.

The contents of each Smartset Command must be in 8 positive hex numbers <= 0xFF and separated by a space; hex numbers only. The 8 numbers represent the 8-byte Smartset Command.

6.2.2 Smartset Command Limitations:

There is no limit to the number of Smartset commands that can be sent. For example, if 10 Smartset Commands (10 lines) are specified under the [Smartset Commands] section, all 10 Smartset Commands will be sent to the controller when the Elo's device driver is loaded.

6.2.3 Calibration on system with multiple monitors in spanned display mode

The “Span Mode” is a special video setup on a system with multiple monitors configured to behave as a single big video surface “spanned” across all the monitors. The multiple monitors can consist of Elo’s touch monitors with/without regular display monitors.

With span mode configured, the user must check “Spanned display mode” in the “Common Settings” window before running calibration. Prior to calibration starting, a small window will appear asking the user to provide the number of rows and columns of the spanned setup (For example, if the spanned setups consist of three monitor placed side-by-side horizontally, the row number is 1, and the column number is 3). After this information has been entered, calibration will start. 

6.2.4 Border touch warning for 2515-07

Elo driver will show a warning message which tells the user “Please remove any contact from the monitor border area” if you touch and hold the border/side for about 2 seconds, put a sticky note on the border, or squeeze the border. If you touch the border shortly and lightly, no warning message will appear.

7. Utility to Reset Elo Controllers:

7.1  EloResetController.exe

This is a console application to reset Elo controllers. It is located under the Elo package’s installation folder; this utility must be executed under the Elo package installation folder where other dependent Elo binaries are stored. The utility must be executed with admin privilege. 

	Sample usage of the utility (4 options):

•	EloResetController.exe /vendor
Reset controller using vendor specific commands.
Applies to controller models: CTR-821x, CTR-83xx, CTR-9xxx, and CTR-8060.
•	EloResetController.exe /ddcci

Reset controller using Elo's DDC/CI command.
•	EloResetController.exe /usb
		Reset controller’s USB port using kernel WDF API.
•	EloResetController.exe /devcon
Reset controller using utility EloDevCon.		
If the utility is executed without any command line parameters provided, the reset operation will carry out with all 4 reset methods mentioned above.
If users prefer to run this utility periodically, Windows Task Scheduler could be utilized to run the utility with 	the desired interval:

•	Launch Windows Task Scheduler.

•	In Task scheduler > Action > Import> browse to C:\Program Files\Elo Touch Solutions\Elo_Reset_Controller.xml to create a new task
	
•	In Elo Reset Controller task> Edit “Settings” and “Action” as suitable.

If there are multiple Elo touch monitors connected to the system, the reset action will apply to all touch monitors. 
	
	The utility returns 0 for success and none zero for failure.

7.2  Reset Touch Screen Controllers Using a Keyboard:

The user can double-press the CTRL key on the keyboard to reset all Elo controllers.

The user can disable this function by setting the value of KeyboardResetController = 0 under EloOptions.ini section: [Common Settings] and then reboot the system.

Below are screen shots of prompt showing the reset session status:

 	Fig 1: Reset session start:    

Fig 2: Reset session has completed:

8. Contacting Elo Touch Solutions:

Elo has technical support offices around the world. By telephone, e-mail, you can find an office that is open and staffed with personnel to assist you with questions or problems with Elo products. Consult the list below for the office which can best serve you.

Website:  http://www.elotouch.com
Technical support: http://support.elotouch.com/TechnicalSupport/
Customer Service: http://support.elotouch.com/CustomerService/
Mailing Address:
Elo Touch Solutions
670 N McCarthy Blvd #100
Milpitas CA 95035 USA

Phone: (800) 557-1458, (408) 597-8000