Welcome

Welcome to the Universal Pointer Device Driver Help

Windows 95/98/ME/NT/W2K/XP - Universal Pointer Device Driver Version 3.5.x or above

Use the help system to learn more about UPDD

  • Find answers to your queries
  • Explanation of settings
  • Connect to the Touch-Base web site
  • Trouble shoot your pointer device problems

This version of the help file describes the features available in the general version of the software and may vary from that installed on your system.

©1999,2002. Touch-Base Ltd. All rights Reserved


Overview

The Universal Pointing Device Driver is a functionally rich pointing device driver that has been developed to meet the demands of the new generation of GUI operating systems and the pointing devices used to interface with these systems.

The driver handles any number of simultaneously connected pointer devices in single or multi-monitor environments.

The pointing devices can function in absolute pointing mode, such as a touch screen, or relative mode, such as a mouse.

The Windows version of this driver is available for all 32bit systems and supports mice, touch screens, digitizers, electronic whiteboards and light pens which connect via serial, BUS, USB and PS/2 hardware ports (not all port types are supported in all Windows operating systems).

Components

UPDD consists of the following main components:

Kernel Mode Driver

The central module responsible for:

  • interfacing with the system hardware ports
  • communicating with the pointer devices
  • system pointer movement based on desktop segment calibration data
  • pen down/up processing
  • implementing the device configuration settings

User Mode Daemon Process

Not all functions performed by the driver can be achieved, or are allowed, at a kernel mode level and need to be performed at a processing level commonly known as the ‘User Mode’ level. These functions are performed by the driver’s user mode daemon process. This process is responsible for the UPDD system tray and also implements some of the background tasks required by the UPDD suite of add-on utilities.

Driver Control Utility

Referred to as the DCU this shows, and allows the update of, pointer device configuration and settings.

Calibration Program

Stores alignment data between the pointer device and the desktop segment for use by the kernel mode driver.

System Tray Utility

A short cut to the UPDD functions and standard utilities.

Event Selector

Pointer devices generate events, the most obvious being that they generate X, Y co-ordinates to indicate where the stylus is in contact. UPDD allows actions to be associated with these events, such as left mouse clicks or right mouse clicks. The Event Selector allows the user to quickly switch between the actions to be performed when these events occur.


Installation and Deinstallation

Installation

UPDD is available in many flavors to suit many types of installations. Separate documentation is available on the Touch-Base web site for each type of installation supported.

Deinstallation

Depending on the type of installation a uninstall option may not be available, such as in embedded systems like Win CE or XPE.

Where an uninstall option is available it will follow the standard uninstall process for the OS.

E.g. For Windows installable systems the driver can be removed via the Windows Control Panel, Add/Remove Programs option:

Select the ‘Universal Pointer Device Driver’ entry in the Add/Remove Programs dialog.


System Configuration

UPDD is installed as a system driver and can be located in the ‘Mouse/Mice and other pointing devices’ entry of the Window’s device manager, as shown in the following two examples:

Windows 2000 | Windows 95

There may be more than one UPDD entry depending on the driver configuration. For PnP devices supported by UPDD there will be a UPDD device entry per device.

The driver’s settings and configuration are defined in the Driver Control Utility (DCU) as held in the Windows Control Panel.


Control Programs-General

Control Programs

The driver’s main control programs are held in the UPDD Program Group as shown below:

Utility | Description
Calibrate | Invokes the pointer device calibration procedure.
Event Selector | Invokes the desktop icon Event Selector.
Settings | Invokes the Driver Control Utility (DCU).
Test | Invokes the driver Test Utility.


Calibration

Calibration is a procedure used to align the pointer device with the Windows desktop segment. When using the pointer device the mouse cursor should normally position itself under the stylus when it is in contact with the pointer device. If this is not the case then calibration will be required.

Invoking Calibration

Calibration can be invoked in various ways:

· The ‘Calibrate’ button in the Driver Control Utility;

This will calibrate the currently selected device and calibration mode in the DCU.

· The UPDD System Tray menu;

This will allow you to select the device, calibration mode or toolbar to be calibrated. In the example shown the device has one calibration mode (Normal) and one toolbar (Annotate)

· Directly calling the calibration program from an application, desktop icon or, as shown below, the Windows Program Manager;

This will calibrate the currently selected device and calibration mode in the DCU.

Calibration Procedure

Once invoked the calibration screen is displayed requesting that each calibration point be selected in turn.

The number of points shown and the position of the points are configured in the DCU Calibration dialog.

Calibration Notes

Calibration is a fundamentally important feature for pointer devices as successful usage is reliant on correct desktop alignment. UPDD implements some important features to ensure the calibration procedure produces the best possible results.

The following issues should be considered when setting up UPDD’s calibration features:

· Absolute pointer devices
Calibration is only required for absolute pointer devices.

· Calibration Bounce
A calibration point is processed when stylus contact is removed (pen up) and the next calibration point is displayed. If a stylus ‘bounces’ on a calibration point, thus producing two pen up’s, then the next calibration point will be satisfied by the erroneous second pen up requiring the calibration process to be restarted – which can be annoying if calibrating with many calibration points. This is known as ‘Calibration bounce’. To avoid this problem UPDD implements a setting called ‘Min Cal Delta’. This value indicates the number of co-ordinates that must differ between the calibration points for the next point to be accepted. If this value is set to zero this feature is effectively disabled. This setting is found in the registry at
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TBUPDD\Parameters\{guid}\(Device Number}\Min Cal Delta.

· Check Calibration
At the end of the calibration process the new calibration data is stored and used immediately. If the calibration procedure produces poor calibration, possibly due to calibration bounce or inaccurate calibration point selection, then recalibration will be needed. However, if the calibrated device is the only pointer device in use then it may not be possible to invoke the calibration procedure due to poor calibration! A catch 22 situation! To avoid this problem a ‘Check Calibration’ dialog can be enabled such that the ‘OK’ button of the dialog must be selected for the new calibration to be used. Failure to select the OK button within a certain time will result in the new calibration data being discarded.

· Calibration Beeps
The Calibration Beeps option will generate a sound when the calibration point has been selected. Useful if calibration is being done remotely from the system or desktop.

· Pointer Device Orientation
UPDD expects pointer devices to be orientated such that the 0,0 (origin) co-ordinate is being generated from a known point on the device. If the device is incorrectly fitted, say in the case of a touch screen attached to a monitor, and it has been fitted ‘upside-down’ then the cursor will move in the opposite direction to that expected. If the selected calibration pattern is 4 points or more then the calibration procedure will automatically calculate the orientation. Using 2 or 3 point patterns will require that the pointer device is fitted correctly with the origin co-ordinate being generated from the expected position.

· Calibration Algorithms
UPDD employs two calibration algorithms; the standard algorithm works well for devices with good linear characteristics and the advanced algorithm works better on devices with poor linear characteristics. The advanced algorithm is used when the device is calibrated with 4, 9 or 25 point calibration patterns. The advanced algorithm is more dependant on the accuracy with which the calibration is done so it is very important to calibrate with a stylus that can select the exact centre of the calibration cross or tip of the calibration arrow (in 0% in calibration).

· Rotational Software
Software can be used to rotate desktops through 0, 90, 180 and 270 degrees. UPDD can automatically cater for rotated desktops and readjust calibration. See the ‘UPDD Desktop Rotation’ documentation on our web site.

· Multiple desktops
UPDD can support any number of pointer devices and desktop segments. A desktop segment is the area of the desktop associated with the device. E.g. In a two monitor system, both with touch screens fitted, the entire desktop could be spread over the two monitors. In this case each touch screen is associated with one monitor being half the desktop. The calibration procedure will only take place on the desktop segment associated with the device and cursor movement will be restricted to that desktop segment when the device is in use.


Driver Control Utility

The Driver Control Utility (DCU) defines the functionality of the pointer device(s) and the UPDD driver environment.

Invoking the Driver Control Utility

The DCU can be invoked in various ways:

· Via the Windows control panel;

· Double click the UPDD System Tray Utility [image];

· Single click the UPDD System Tray Utility [image] and select ‘Adjust Settings’ from the menu items;

· Directly calling the DCU program from an application, desktop icon or, as shown below, the Windows Program Manager;

Driver Control Utility functionality

For most systems it is unlikely that any changes will need to be made to the driver configuration as the default settings are optimized for best performance. Great care should be made in changing any of these settings as they may have an adverse effect on the performance of the pointer device.

The DCU is fully configurable and depending on the DCU configuration the visual appearance may be totally different to that shown below and some features may not be available. The following Driver Control Utility dialog is the standard configuration initially defined:

General control functions

The general control functions are shown at the bottom of the DCU dialog:

These functions perform the following tasks:

Function

Task

Calibrate

Invokes the calibration procedure.

Test

Invokes the pointing device test utility.

OK

Saves any changes and exits the DCU.

Cancel

Exits the utility without saving any changes since the last Apply request.

Apply

Applies all changes made in any of the tabbed dialogs.

Help

Shows the help topic for the dialog on view.

The OK and Apply buttons perform all significant parts of the driver startup code, including controller initialization, and this may delay the time it takes for the OK and Apply functions to complete.

Specific control dialogs

The Driver Control Panel offers a number of dialogs in which to view or change specific settings, as described in brief below:

Dialog | Description
About | Shows driver version number and license details.
Advanced | Defines the driver’s advanced settings.
Calibration | Calibration related settings.
Devices | Specifies the devices in use.
Events | Lists the pointer device’s events and mouse click association.
General | Offers a number of general functions.
Hardware | Defines the hardware port settings.
Settings | Defines the driver’s most common settings.
Status | Displays system, controller and communication status.
Windows | System pointer Window’s related settings.


Driver Control Utility - About-General

Driver Control Utility – About

The About dialog shows the driver version number and build number.

The function buttons, if shown, reveal the following information:

Function | Description
Support | Shows the support contacts.
History | Lists the development history. The standard version of the driver shows the development history since the last major release but this may vary depending on the OEM version of the driver or the build number.
License | Lists the license agreement under which terms govern the use of this software. Please remember this is licensed software and therefore you need a legitimate copy before using it.


Driver Control Utility - Advanced

Driver Control Utility – Advanced

The advance settings dialog tab contains the advanced driver settings:

The advanced settings and their usage are described below:

Setting

Description

Sample rate

Determines the percentage of pointer device data packets that are passed on to the mouse driver. This should normally be set to 100%. If the use of the pointer device has an adverse affect on the performance of the system or a particularly resource hungry application this value can be reduced, especially in point and click usage. For drawing applications a lower value may have an adverse affect on the drawing quality of the device.

Touchdown Filter

Specifies the initial number of touch packets from the pointer device to ignore before sensing a touchdown. The default and recommended value is zero unless touchdown appears to be slightly offset from point of contact on a calibrated device.

Deglitch

This setting is used to filter out glitches.

Sound pitch and duration

Specifies the sound generated when simulating button presses.

Z Threshold

This setting is only shown for devices that can detect different levels of stylus pressure and indicates the Z value that must be reached to generate a pressure (Z) event. Defined as a percentage of the pressure value a 100% setting represents the highest pressure value. Therefore a higher setting requires more pressure to activate a pressure event. A lower setting requires less pressure. When the pressure event occurs, the mouse click emulation, as defined in the DCU Events dialog, will be performed.

Swap X/Y

When checked, the X and Y axes of the pointer device are swapped.

Initialize

Indicates that the device’s initialization macro, if it exists, is executed.

Enabled

Indicates if the device is enabled. If the device is disabled the hardware port’s resources are available for use by another device or process. This is a way of freeing up the resources without having to uninstall the driver. One example of this is where a serial to USB converter is used and the device needs to be ‘stopped’ before it can be safely unplugged from the system. If UPDD has a connection to the device it cannot be ‘stopped’ until disabled by UPDD.

This function can also be performed via the UPDD System Tray Utility.

Sound

Enables or disables the Sound option that accompanies simulated button presses.

Anchor Mouse

The Anchor Mouse option is set if the mouse cursor is to return to its original position after the pointer device has been used. Normally used in multi-monitor configurations where the cursor is to return to another monitor.

In addition to above controls further functionality is available via the control buttons, as described below:

Control | Description
Macro | Defines the controller macros. Some controllers can accept commands to change the internal settings. In some case commands are needed to initialize the controller and the macro dialog is used to define the required commands. The commands are held in a UPDD Macro language as detailed in the UPDD documents help file.
Default | The 'Defaults' option restores the settings to their default value.
Firmware | Controller firmware settings. The controller firmware dialog contains highly specific controller functions to set controller firmware settings and will only be enabled where appropriate.
Extended | Controller extended settings. The controller extended dialog contains highly specific controller functions and will only be enabled where appropriate.


Driver Control Utility - Calibration

Driver Control Utility – Calibration

This dialog is used to define the pointer device calibration setup.

The calibration settings and their meaning are described below:

Setting | Description
Calibration settings for | Specifies the device against which these calibration settings apply.
Calibration modes | Shows the calibration mode in use. A device can have a number of different calibration modes if required although most devices will have just one calibration mode. Calibration modes are used when a single device has more than one set of calibration settings to cater for multiple modes of use that require a different calibration. If more than one calibration mode is used it is normal for an external application to switch to the new calibration mode (via the UPDD API) at the time the device is switched to a new mode of use.
Calibration points | Specifies the number of calibration points to be used.
Timeout | Indicates the calibration timeout value if the calibration point is not touched within the specified period. Defined in seconds.
Start in at | Indicates if the outside calibration points are to be at the edge of the device (0%) or 12% or 20% in from the corners.
Calibration pattern | Graphically shows the calibration point pattern to be used. Important note: UPDD employs two calibration algorithms. For calibration patterns 4/9/25 an advanced algorithm better suited to non-linear pointer devices is used. For all other calibration patterns a standard algorithm is employed.
Transparent background | If enabled, specifies that the calibration points are shown on the Windows desktop without a white background.
Toolbars | A toolbar is an area of the screen that generates events to external applications instead of moving the system pointer or generating mouse clicks when touched.


Toolbars

This dialog defines device toolbars, if they are required. A toolbar is an area on the pointer device that generates a driver event instead of moving the system pointer and generating mouse clicks when touched.

Toolbar usage

Toolbars have two main uses:

1. To define an inactive area on the pointer device to disable ‘mouse emulation’ in that area - in effect defining an area, or areas, in which system pointer movement is disabled.

2. To trigger an application at the time a toolbar is selected. A UPDD API call is available that allows external applications to be informed when a toolbar element has been selected. Toolbars are an extremely useful function that allows external applications to be informed when certain areas on the pointer device are selected. Toolbars are utilised in all manner of pointer device type applications. They are particularly useful if a pointer device has both a calibrated, mouse emulation area and calibrated, non-mouse emulation area, where an external application is handling the non-mouse emulation area.

Toolbars are calibrated separately from the main device calibration and may ‘sit on top’ or reside to one side of the main calibrated area.

Toolbar definition

Toolbars can be defined and calibrated by external applications using UPDD API calls or defined via the toolbar dialog, invoked from the DCU Calibration dialog.

This dialog is used to configure toolbars as follows:

Setting | Description
Toolbar | Lists the toolbars configured for this device. Add adds a toolbar and Remove removes a toolbar.
Columns | Indicates the number of columns in a toolbar.
Rows | Indicates the number of rows in a toolbar.
Associated calibration modes | Indicates what calibration mode activates the toolbar. An asterisk (*) indicates that it is active with all calibration modes. Add modes, adds a calibration mode to the list and Remove, removes a mode from the list.
Edge | Used to indicate that the toolbar is at the edge of the device (left, right, top, bottom).
Calibrate | Invokes the toolbar calibration process. A dialog is shown requesting that the top left and bottom right corners of the toolbar (not the dialog!) be touched in turn.
Apply | Applies the toolbar changes.

The Apply button on the toolbar dialog or the DCU main dialog must be selected to update the settings.


Driver Control Utility - Devices

This dialog shows the configured devices and allows for the device configuration to be amended.

The list of installed controllers is shown:

Function

Description

#

Unique device number automatically allocated when the device is added.

Device

Device identifier. Can be changed as required. E.g. to reflect use of the device.

Segment

The Windows desktop could be spread over various monitors and this shows the desktop segment being controlled by this device.

Priority

In a multi pointer device environment this setting indicates the priority given to the device the meaning of which is as follows:

Disable: All mouse port activity is blocked.

Interlock: The device can only be used if no other device is in use (i.e. touch screen being touched) and the time since the last use of another device exceeds the ‘release time’ period. Release time is defined in units of 20ms and defaults to 20ms.

Admin: Any device currently in use is forced into a ‘pen up’ state and the device is given immediate priority.

Controller

Shows the name of the controller installed.

To select a device click anywhere on the device line. This is now the 'current' device against which all subsequent controller actions will apply.

From this dialog you can Add, Modify or Remove a controller. If a Note button is shown it is used to show device specific notes.

Function

Description

Add

The add procedure will offer a list of available devices from which to select. A name is then requested for the selected device along with the desktop segment that is to be associated with this controller.

Modify

The modify function allows previous assigned names and desktop segment associations and device priority to be changed.

Remove

Will remove the selected device from the list. A confirmation is requested prior to removal.

Notes

If the driver has any associated notes this button will be shown to display the notes.

PnP devices

PnP devices will automatically be detected on PnP systems (98/ME/W2K/XP) and the PnP devices will appear automatically in this dialog as they are detected on the system – they do not need to be manually added. Automatic UPDD detection of PnP devices is not supported on 95 and PnP devices are not supported under Windows NT.


Driver Control Utility - Events

Driver Control Utility – Events

This screen shows the pointer device events that can be generated by the device and the Button Modes (mouse click actions) associated with the events. When an event occurs either the Primary or Secondary action will be performed depending on the Event Selector state.

In this example the device generates an event when contact/lifting off the device and this event has been named the Contact event:

To change the button action associated with the event, select the dropdown dialog and highlight the required action.


Driver Control Utility - General

Driver Control Utility – General

This dialog holds general settings and functions.

Settings | Description
Show icons in system tray | Use this setting to enable or disable the UPDD System Tray Utilities.
Check calibration | If set, requests that a 'Check calibration' dialog box is displayed at the end of calibration. The OK must be selected within the time threshold defined in the calibration settings or the system reverts backs to the previous calibration.
Calibration beeps | If set, sound is used to indicate a calibration point has been accepted.
Clone settings | Copies the current UPDD configuration setting to file UPDDclon.reg to be used for automatic setup in subsequent installations.
Dump settings | This function is used to dump driver and system settings to a text file UPDDset.txt. Often requested to aid support queries.


Driver Control Utility - Hardware

Driver Control Utility – Hardware

This dialog shows details of the pointer device port usage and hardware settings. The dialog will vary depending on port type; Serial, USB, BUS or PS/2.

In this example the device is configured on serial port COM4:

The hardware port settings should not be changed without good reason as an incorrect setting could have an adverse effect on the performance of the device.

Port

Setting

Description

Serial

The assigned communication settings are shown for the selected port. The address and IRQ for a given port (e.g. COM1) can vary between systems as this is set, and can be changed, via the BIOS. If Auto Detect is selected the port option will be disabled and the settings shown will be either the port on which the controller was located, or, if the controller is not located, the port is set to none. PnP serial devices are automatically configured and therefore the port option will be disabled and the serial port setting will show where the port has been plugged in.

Auto Detect

This option will only be seen if the controller can be auto detected.

The driver can auto detect the serial port that the controller is attached to by utilising the controller macro as defined in the Macros section of the DCU Advanced dialog. If the Auto Detect option appears on the Hardware screen, it can be enabled to request the driver search all com ports for the controller. The Auto Detect option will be shown if the macro defines a controller acknowledgement [ACK] command.

FIFO

The FIFO setting enables the buffered mode of operation for UART serial devices.

Check port

This setting, defined in seconds, requests the driver to check the status of the com port at the specified time interval, to ensure the port is correctly initialised and able to function. Should be set to zero unless otherwise instructed to aid support.

Communication
Port settings

Shows the serial port in use and the settings as supplied by the system for the selected port.

Advanced

Allows Baud rate, parity, data bits and stop bits settings to be changed.

BUS

In a Bus connected device only the port address and IRQ need to be specified. The default parameters should match the factory default settings. You may wish to change these to avoid port address and IRQ conflicts, but you must always ensure that the driver settings match the controller switch or jumper settings.

IRQ

Specifies the Interrupt Request Queue

Addr

Specifies the Port address

USB

No hardware settings are necessary for USB connected controllers. All configuration is performed by the PnP configuration manager.

PS/2

No hardware settings are necessary for PS/2 (aux) port connected controllers.


Driver Control Utility - Settings

Driver Control Utility – Settings

The Settings dialog contains the most commonly used protocol and driver settings. The default settings will be defined for optimum controller performance and should not be changed without good reason.

The 'Defaults' option will restore the settings to their default value.

The ‘Packets’ option will reveal the data packets defined for this device and allow them to be enabled or disabled.

Setting

Description

Click time

Click time is "a short time" interval that the driver uses in the button click logic that uses time intervals between clicks. Click time is defined in units of 20ms.

Tap time

Tap time is "a short time" interval that the driver uses in the button click logic that uses time intervals between taps. Tap time is defined in units of 20ms.

Lift off time

The Lift off Time value specifies the time interval required to register a stylus lift. Lift off time is defined in units of 20ms. This value is only used to perform a pen up if the ‘Use Lift off’ packet is disabled otherwise Pen ups are generated as soon as the stylus leaves the pointer device display.

UPDD implements a number of methods to compensate for jitter, or noise errors, found with some pointer device controllers as described below.

Method

Description

Stabilization

Stabilization causes small movements to be ignored.

Averaging

Applies a filter to produce smoother drawing. Averaging takes the average of the last N co-ordinates. This is a very basic approach to filtering that can improve drawing and not affect drawing speed.

Low pass filter

Applies a filter to produce smoother drawing. Software implementation of a low pass filter algorithm to remove jitter. This is a more advanced approach to filtering that can improve drawing but will affect the speed of drawing the higher the value used.

It is recommended that only one filter method be used. The default values assigned to these settings are set to give the best results for the device and will not normally need to be changed.


Driver Control Utility - Status

Driver Control Utility – Status

This dialog shows the pointer device status along with system resource usage.

For each configured device this dialog shows the load status, initialisation status and communication errors as described below:

Load status | Description
 | A green tick indicates that a connection to the port has been successfully completed.
 | A yellow exclamation mark indicates that the initialisation macro was sent to the pointer device but did not get the expected response. The driver still connects to the device and it may be working. If this persists it may indicate that the device is not functioning as expected.
 | A red cross indicates that the driver is not loaded or an error was encountered during controller initialisation as described in the 'Init state'. If all settings following the device name show 'n/a' then the driver has not loaded or has been stopped. If the driver is loaded but the device is not functioning the most likely cause is that the specified port resource(s) are already in use by another process or the port is not available.

The driver will attempt to connect to the controller and process any initialisation macro, as defined in the DCU, Advanced, Macro dialog. Most controllers do not need to be initialised but some will have a UPDD macro defined to send commands to the controller and optionally look for command responses. The Init State reflects what UPDD can determine about the state of the controller NOT the actual state of the controller. Irrespective of the Init status the driver will try and connect to the port so the device may well be functioning even when showing a bad status.

Init State

Description

Action (if required)

OK

The init macro contains an ACK statement and the device acknowledged the initialisation macro as expected.

None – Controller should be functioning as expected.

Not required

No initialization macro is defined.

None - No controller initialisation is required.

Unknown

The initialisation macro does not contain an ACK statement so the driver is not expecting and response from the controller.

None - Initialisation macro is sent but no response is expected so the controller status is unknown.

Timed out

The init macro contains an ACK statement but a valid acknowledgement was not seen from the device within the specified time.

May indicate a fault with the controller or the macro’s ACK statement does not allow enough time for the device to respond to the controller. It may also indicate that the wrong controller is connected.

Syntax

The macro syntax is incorrect.

Correct the macro syntax.

In progress

Macro initialisation in progress.

N/A

Failed

The init macro contains a NAK statement and the device has NAK’ed the initialisation process.

Highly unlikely that the device is functioning and may indicate a fault with the controller or the wrong controller is connected.

Not started

This is shown prior to the initialisation process running. It should only been seen momentarily once the initialisation process has been started.

It can indicate that the controller has been added but that you have not selected OK or Apply on the DCU. If this state persists then the initialisation process is not started due to a communication error. May need to be debugged as described in the UPDD Support document. See also ‘Action’ statement for Unavailable status below.

Not supported

Indicates that a macro directive was found that conflicts with the current controller type, e.g. [BREAK ...] for a USB controller or [USB ...] for a serial controller.

Correct the macro.

Unavailable

Initialisation status is unavailable.

If the error counts shows 0 then the driver loaded but the macro could not run. This may indicate that the hardware port is not available. E.g.

  • Serial port not found at specified IRQ and/or Addr.
  • Another process has the port.
  • A Serial to USB converter is used to connect a serial controller to a USB port only system and the USB converter is not plugged in.
  • Virtual port is not available.

Check correct hardware port has been selected or make port available.

If the error count shows n/a then the driver did not load. Further investigation will be needed to determine what is preventing the driver from loading.

Any error count shown under Comms error, Overflow or Sync indicates that the driver is experiencing some form of error with the hardware port. These values should be zero or very low. Any high counts will imply an error is occurring that may affect performance of the pointer device. This could indicate the controller is running at a different baud rate to that defined in UPDD settings. If all values are ‘n/a’ then the driver has not loaded, see above.

Other settings

Description

Pool usage

This shows the memory pool usage by the driver. ‘Now’ is the current value. ‘HWM’ (High Water Mark) is the peak (highest) value.

Refresh

This option resets the count values shown for the Comms, Overflow and Sync errors.

Reset

This option resets the initialisation status.

Re-initialize

This function re-initialises the controller


Driver Control Utility - Windows

Driver Control Utility – Windows

Microsoft Windows has a number of settings pertinent to pointer devices and this dialog brings together the relevant settings in one area.

Double click capabilities are affected by a number of Windows Mouse settings as described below:

Setting | Description
Time (Double Click Speed) | This setting changes the time period within which Windows will register two clicks as a double click
Height (Double Click Height) | This is a Windows configuration parameter and specifies the number of pixels, vertically, within which Windows will recognise two clicks as a double click.
Width (Double Click Width) | This is a Windows configuration parameter and specifies the number of pixels, horizontally, within which Windows will recognise two clicks as a double click.
Mouse Click Test | This area is used to test single and double click responses.

To achieve a double click using the pointer device requires a number of factors to come together to produce the conditions such that Windows will produce a double click.

1 The Windows double click settings must be such that a double click can be performed within the time and area thresholds.

2 Any movement at touchdown of the second click causes the double click settings to be ignored and treated as a drag. During rapid double clicks the driver minimizes movement on the second click to overcome this problem.


Event Selector

Using the pointer device will generate device events. Device events vary between different devices and are listed in the DCU Event dialog. Mouse click actions are associated with these events. Each event can have a 'Primary' and 'Secondary' associated action.

By their very nature, all pointer devices have a common event, which is the action of using a stylus on the device (in the case of a mouse it is the action of moving the device). In UPDD this event is usually defined as the Contact or Default event. There may be other events defined.

Event switching toggles between the primary or secondary action and this can be performed from the desktop Event Selector or the Event Selector system tray icon.

Invoking the desktop Event Selector

The desktop Event Selector can be invoked in various ways:

· Single click the UPDD System Tray Utility [image] and select ‘Event Selector’ from the menu items;

· Directly calling the Event Selector from an application, desktop icon or, as shown below, the Windows Program Manager;

Switching Events

Clicking on either of the event selectors will toggle between the primary (left) and secondary (right) action. By default, the Event Selector automatically switches back to the primary setting after a single secondary action has been performed..

From the desktop

From the system tray

Primary

Secondary

Primary

Secondary

Event Selector Settings

Event Selector settings can be changed in the Event Selector menu. The menu can be viewed by clicking on the title bar mouse icon on the desktop Event Selector:

One hit: Indicates if the Event Selector automatically switches to the Primary setting after a single secondary use.

Icon: Indicates the size of the mouse icon displayed in the desktop event selector.

Text mode: Indicates that text be shown instead of a mouse icon.

Example Usage

In the following example the device has a single event, the Contact event, and has the Primary action set to Touchdown Left and the Secondary action to Touchdown Right. When the Event Selector is in the primary position the device will generate a left button click when used and a right button click when the Event Selector is in the secondary position.

Some devices may have more events shown and may be of different names.


System Tray Utilities

Two system tray utilities are offered to invoke a number of pointer device functions. If the UPDD system tray utility icons are missing from the system tray they can be reinstated from the DCU General dialog.

Event Selector icon

This icon reflects the current setting of the Event State and, when selected, toggles between the primary and secondary mouse click action.

Pointer Device Manager

A single click will list the menu items as described below. A double click will load the Driver Control Utility.

Menu

Item

Description

Enabled

Indicates if the device is enabled. A tick ( [image]) indicates that the device is enabled and a cross ( [image]) indicates that it is disabled. This option can be used to temporarily disable the pointer device. If more than one device is configured a sub menu lists the devices to show the enabled state.

Calibrate

Invokes the calibration procedure.

Adjust settings

Invokes the Driver Control Utility.

Test

Invokes the Test Utility.

Event Selector

Invokes the Event Selector.

Button Modes

Lists Button Modes (mouse click actions) to allow instant selection of a new click action. E.g. Changing from 'Touchdown Left' to 'Liftoff Left'. The Button modes listed are set in the DCU Button Modes dialog, ‘show on menus’ option.

Help

Invokes the UPDD help system.

About

Shows UPDD general information.

Close

Removes the UPDD system tray utility icons.

Extensions

Lists the ‘enabled’ UPDD extensions depending on the extensions that have been enabled in the UPDD build. UPDD extensions perform extended functionality. If the extension shows a tick ( [image] ) it is active and a cross ( [image] ) indicates that it is inactive. Selecting the extension will toggle it on/off.

In this example [image] the UPDD utility ‘UPDD Clicks’ has been enabled in the build and is active. UPDD Clicks extends the button modes beyond the standard list so that left click is produced on pen down and right click is performed if the stylus is held stationary for a period of time.


Test Utility

The test utility is used to test devices in as much as it will draw a line as the pointer moves around to show the calibration accuracy. This is testing the route of the data from the device via the hardware port, processed by the UPPD driver and then feed into the Window’s low level mouse interface.

Invoking the Test Utility

The Test Utility can be invoked in various ways:

· The ‘Test’ button in the Driver Control Utility - this will ‘test’ the currently selected device in the DCU.

· Single click the UPDD System Tray Utility [image] and select ‘Test’ option from the menu items;

· Directly calling the Event Selector from an application, desktop icon or, as shown below, the Windows Program Manager;

Test procedure

The drawn line is red when the left button is down and blue when the right button is down. When a liftoff occurs information is displayed to show what click emulation is performed. Whilst contact is made with the touch device data is displayed and shows co-ordinate data information.

Testing driver interface only

An option exists to test the driver interface only and bypass the Windows low level mouse interface. This is known as UPDD Direct mode. Direct operation can be invoked via the Tbtest, Direct menu option as show:

When in direct mode the dialog displays *** Direct Mode ***. In this mode drawing is being achieved via UPDD API calls and not via mouse emulation.


Troubleshooting

If the pointing device is not working correctly it is important to try and correctly determine if the problem is hardware, software or system configuration related. UPDD runs in many operating systems, supports different hardware ports, multiple monitors and multiple devices and to document all possible scenarios that could result in a problem is almost impossible.

Rather than attempt to cover all the potential problems in detail it’s worth highlighting the nature of the problems and suggesting ways of determining where the fault lies.

In a simplified way this schematic represents the pathway of a pointer device action through to mouse emulation:

The fault can lie in any of these areas.

This first thing to establish is if UPDD is receiving any data from the hardware.

If the system pointer moves, but incorrectly, then UPDD is receiving characters. In this case check calibration is OK or that the correct device has been configured in the DCU.

If there is no movement but the DCU status is showing errors then data is being received but being rejected. Again check you have the correct device configured in the DCU.

If it appears that no data is being received then check that data is getting through. With serially connected devices using Hyperterminal will show any data arriving at the port. Prior to running this program disable UPDD use of the port via the system tray utility. Unfortunately with USB, BUS and PS/2 connected devices this is more difficult to establish. If Hyperterminal shows data then it is a DCU configuration issue or another service is using the port. If no data is seen try another pointing device or controller.

Once you have exhausted your attempts at fixing the problem its time to contact support as detailed in the Maintenance and Support section.


Maintenance and Support

If you need support you should first check out the advice in the Troubleshooting section. If you are still unable to resolve the problem the support section of the Touch-Base web site at http://www.touch-base.com/support.cfm carries a Knowledge Base that has details of known driver or environmental problems. The next contact should be with the company that supplied this software to you. They will probably be in the best position to assist you. Select the Support button in the DCU About dialog so see contact details.

To contact Touch-Base directly you will need to specify the Support Contract Number issued as part of the maintenance agreement with Touch-Base if you have one. This SCN number can be located in the DCU About Box dialog. This number will indicate to Touch-Base if support is current.

If you wish to submit a technical support issue to Touch-Base directly please send the following details to support@touch-base.com.

  • The Support Contract Number (no valid SCN, no support!)
  • Where you purchased the software
  • The driver version number, taken from the DCU About box
  • The Windows operating system in use, its build number (from the System applet in the Control Panel) and the service patch status
  • The pointing device and hardware settings
  • The selected pointing device protocol
  • Description of your system (Make, model, architecture, processor, speed, adapters, peripherals, etc)
  • Description of the problem, detailed enough to enable us to reproduce it
  • Button modes affected, if relevant
  • The exact text of any error messages you encountered
  • The system event log
  • Details of any other processes, such as applications or communication devices that may clash with the pointing device
  • Attach to the email the file UPDDset.txt produced by the Dump Settings function in the DCU General dialog.

Not all the above will be relevant to the problem you are reporting but the general advice is supply more information rather than less.

If you have discovered a known problem or one that is easily understood the response should be swift. However, if it is a new problem or one that cannot be reproduced, resolving it may be difficult and in some circumstances may require the hardware to be sent to Touch-Base to help with investigations.


UPDD Utilities and documentation

This help file covers general use and configuration of the UPDD driver, especially when it is used in a single device, mouse emulation environment.

However, there are other aspects to UPDD that are external to the driver and a number of utilities and documents are available that cover these other aspects as described below.

Product | Description
Software development kit | A software development kit is available to allow external applications to interface with the driver. This kit installs demonstration software, example source code and full documentation.
General documentation | Supplied as a HTML help file, this contains all manner of useful documentation, such as UPDD interfaces (Pen, Penx etc), tailoring the DCU, Macro language definition etc.
Utilities | A number of useful utilities are available that enhances the use of UPDD, such as assigning touch areas with keystrokes.
Application programming Interface | HTML help file that describes the UPDD API in detail to allow external applications to interface with the driver.

All the above are available for download from Touch-Base’s web site at www.touch-base.com.


Licence Agreement

This Universal Pointer Device Driver, TBUPDD, is copyright (c) 1998, 2002 by Touch-Base Ltd.

Touch-Base Ltd authorises you to make archival copies of this software for the sole purpose of back up and protecting your investment from loss.

Under no circumstances may you copy this software, documentation or part thereof for the purposes of distribution to others outside the bounds of your license agreement with Touch-Base Ltd or the licence agreement between the supplier of this software and Touch-Base Ltd. A license is required for each system utilising this driver.

Under no circumstances may you remove the copyright notices made part of the software or documentation.

Touch-Base Ltd warrants that the software will function as described in the documentation for a period of 90 days from receipt. If you encounter a bug or deficiency, we will require a problem report detailed enough to allow us to find and fix the problem. If you properly notify us of such a software problem within the warranty period, Touch-Base Ltd will update the defective software at no cost.

Touch-Base Ltd does not assume any liability for the use of this driver beyond the original purchase price of the software. In no event will Touch-Base Ltd be liable to you for additional damages, including any lost profits, lost savings or other incidental or consequential damages arising out of the use of or inability to use these programs, even if Touch-Base Ltd has been advised of the possibility of such damages.

By using this software, you agree to the terms in this Agreement.


Button Modes

This dialog is used to define the button modes (mouse clicks actions) that can be assigned to pointer device events.

Within this dialog existing Button Modes can be edited or new ones added.

The controls perform the following tasks:

Control | Description
Edit Mode | Shows the name of the Button Mode. UPDD is supplied with a number of predefined button modes. The settings of the button mode are displayed and can be modified if required. To edit, change the settings and select the General DCU Apply button.
Button | Indicates if the mouse click emulation (as specified in the triggers) is to be associated with the mouse left or right button.
Show on menus | The UPDD System Tray utility has an option to allow the button modes associated with events to be quickly changed. Enable this check box if this Button Mode is to be listed.
Add | Adds a new Button Mode. When prompted enter a unique button mode name and define the settings as required.
Delete | Deletes the Button Mode on view.
Defaults | Reinstates the default Button Modes. Any custom Button Modes will be preserved.
Triggers | A mouse click comprises two click actions, the button click down and the button click release (up). Systems and their applications’ act on single, double and subsequent mouse clicks and six triggers are used to define these three click types.
 | Down1 | defines the click trigger required to simulate a first button press
 | Up2 | defines the click trigger required to simulate releasing the button.
 | Down3/Up4 | defines the click triggers, if any, which will simulate another button press, if the triggers occurs within the system’s double click time. This defines the actions required to generate a double click.
 | Down5/Up6 | define the click triggers, if any, which will simulate subsequent button presses.
 | The values that can be assigned to each of the six click actions are:
 | None | The mouse click event cannot be triggered. This option can be used to suppress double clicks or subsequent clicks.
 | Immediate | The mouse click event will be generated immediately after the previous mouse click event.
 | Touchdown | The mouse event will be triggered when a finger or stylus makes initial contact with the screen.
 | Liftoff | The mouse click event will be triggered on liftoff - when the finger or stylus stops touching the pointing device
 | Time | Holding a touch stationary for ‘Click time’ triggers the mouse event.
 | Tap | A Tap is defined as a stylus up followed by a stylus down within ‘Tap time’. Note that a mouse click generated by a tap will occur at the point of the stylus up, not at the point of the re-contact.

Using the above settings many different button modes can be created, for example:

Time, time, immediate, time, immediate, time.

This will generate a continuous sequence of button presses as long as the finger is held stationary.

Avoid configuring all triggers as immediate. The driver will go into a tight loop continuously pressing and releasing the button, and you would have to reboot.


Event State

The driver will perform the Primary or Secondary event action depending on the event state value held internally.

This value is set by a driver Application Programming Interface (API) call as documented in the UPDD Software Development Kit. This call is made by the Event Selector but may also be made by other applications if required.


Pre-defined Button Modes

UPDD is supplied with a number of pre-defined button modes for both left and right buttons. The term 'touch' is used in the descriptions as a generic term to represent a contact made on the pointing device, typically with a stylus (such as a finger). However, it could be any stylus, such as a coloured marker pen if using a whiteboard or a pen if using a digitizer.

The following button modes show the trigger definitions followed by the functional description.

Button Mode | Down1 | Up2 | Down3 | Up4 | Down5 | Up6
Touchdown Left | Touchdown | Liftoff | Touchdown | Liftoff | Touchdown | Liftoff
 | The system pointer is moved to the point of the touch, then the left button is immediately pressed. The stylus can slide around with the button held down. The button is released when the stylus is removed from the device. Touching twice in quick succession in approximately the same place can generate double clicks.
Touchdown Right | Touchdown | Liftoff | Touchdown | Liftoff | Touchdown | Liftoff
 | The system pointer is moved to the point of the touch, then the right button is immediately pressed. The stylus can slide around with the button held down. The button is released when the stylus is removed from the device. Touching twice in quick succession in approximately the same place can generate double clicks.
Touchdown Immediate Left | Touchdown | Immediate | Touchdown | Immediate | Touchdown | Immediate
 | The system pointer is moved to the point of the touch, then the left button is immediately pressed and released. The button is not held down. Touching twice in quick succession in approximately the same place can generate double clicks.
Time Left | Time | Liftoff | None | None | None | None
 | The system pointer is moved to the point of the touch, but no button is pressed. Sliding the stylus on the device can move the system pointer. Any time the stylus is held stationary for a period of time, the left button is pressed, a beep sounds and the button is only released when the stylus is removed from the device. Double clicks are not possible with these settings.
Time/Tap Left | Time | Liftoff | Tap | Liftoff | None | None
 | This is similar to Time mode, but double clicks are possible. After holding stationary to generate the first left button press, lifting the stylus off and then immediately touching again will generate another button press.
Tap Left | Tap | Liftoff | Tap | Liftoff | Tap | Liftoff
 | The system pointer is moved to the point of the touch, but the button is not pressed. Quickly lifting the stylus off and then touching it again within a short time generate left button presses. Double clicks are achieved by doing this twice in quick succession.
Time/Time Left | Time | Time | Immediate | Liftoff | None | None
 | This mode is similar to time mode, but a left button double click is generated by holding the stylus stationary for a further time period.
Liftoff Left | Liftoff | Immediate | Liftoff | Immediate | Liftoff | Immediate
 | The system pointer is moved to the point of the touch, but the button is not pressed. When the stylus is removed from the device, the left button is pressed and then immediately released again. Quickly touching the device and lifting off again can achieve double clicks.
Touchdown Double Click Left | Touchdown | Immediate | Immediate | Immediate | None | None
 | A left button double click is generated when the device is touched.
Touchdown Double Click Right | Touchdown | Immediate | Immediate | Immediate | None | None
 | A right button double click is generated when the device is touched.
Liftoff Double Click Left | Liftoff | Immediate | Immediate | Immediate | None | None
 | Lifting the stylus off the device generates a left button double click.
Time Double Click Left | Time | Immediate | Immediate | Immediate | None | None
 | A left button double click is generated when the stylus is held stationary for a period of time.
Tap Double Click Left | Tap | Immediate | Immediate | Immediate | None | None
 | A left button double click is generated when the stylus is lifted from the device and quickly placed back down.

The predefined button modes can be changed so they may differ from the descriptions above. The original modes can be re-instated by using the Defaults button on the DCU Button Modes dialog.


Preparation

General

It is advisible to save any work and close all applications. Ensure that any previous drivers or test drivers installed to support the pointer device are removed. It is important that Plug and Play devices (eg USB) are recognised as new hardware by the plug and play manager. If they are not then another driver has claimed responsibility for the device.

Serial and Bus devices

Your pointing device should be correctly installed before installating the driver. The driver can be installed without the device connected but cannot be tested until such times as the device is connected.

For some types of pointing device controllers the driver has specific requirements for the controller switch or jumper settings and these must be set accordingly as described during install. The Device page of the Device Control Utility also lists the required controller settings.

For serial devices the UPDD hardware settings must reflect the COM port in use. For BUS controller devices the UPDD hardware settings must reflect the port address and IRQ in use by the controller.

USB device

It is preferable for the driver to be installed prior to connecting the device. The plug and play manager will recognise the USB device, extract its vendor id and then look for the driver. If it is not found it will request that the driver disk be made available. If the driver is not loaded the device will work once the driver has been installed and the system rebooted.

USB is only supported in Windows 98, Windows 98 SE and Windows 2000.

See also:

Hardware Ports

NT/2000 Serial Port Driver


Software Development Kit

The UPDD offers an extensive Application Programmers Interface (API) to allow external applications to interface with the driver and Touch-Panel. The driver’s utilities all use the API to interface with the driver and a UPDD Software Development Kit (SDK) is available to enable user written applications to interface with the driver if required. The SDK offers full documentation, demonstration programs with source code and the programming modules required to utilize the API.

The SDK, along with other UPDD utilities, is available for download from Touch-Base’s web site at www.touch-base.com.