Solaris Installation              Revision 1.2 – 4th Nov 2014
www.touch-base.com\documentation\installation

 

Deliverables

Requirements

Installation

Uninstall

Supported programs

Limitations

 

Contact

 

Welcome to UPDD Solaris platform specific installation instructions and related notes for UPDD version 5. This version is based on the latest code base of the UPDD driver and supports mouse emulation which was not supported in the previous 4.1.10 implementation.  For existing users using UPDD 4.1.10 see the previous Solaris installation instructions.

 

This implementation supports the Solaris operating system on x86 hardware. Initial tests have been conducted with version 10 update 9.

 

These notes should be followed to install the UPDD pointer device driver on Solaris 10 platforms:

 

Driver build history

Release

Date

Change

5.1.1159

Nov 2014

Initial release for Solaris 10, Update 9

 

Deliverables

The software is delivered within a compressed file called upddsolx86_[ver].tgz (e.g upddsolx86_05.01.1159.tgz) and is normally downloaded from a HTTP download link as sent in an email.

 

System Requirements

Component

Note

X86 – 32bit

Not tested but should be compatible as the driver and utilities are 32bit.

X64 – 64 bit

This software is tested on 64bit systems.

Access to TCP IP port 4141

The driver requires access to TCP IP port 4141 for internal computer processing only.

 

 

Installation

Notes

  1. Install script
    In order to provide maximum flexibility to the system administrator the installation process is managed by a simple perl script. This script can be edited to set file locations, ownerships and so on to satisfy the requirements of the target system.

  2. USB interface
    USB support is based around usblib-0.1 as supplied with Solaris. If missing it should be installed from the Solaris installation disk. There are a number of issues with this library, in particular it does not always recognise that devices have been disconnected; hence the PnP features of UPDD might not always work as expected. In particular an unplugged device might not be recognised as such. No guarantee can be given that this software will work with all hardware targets and devices as the compatibility of these with Solaris and usblib is outside of Touch-Base’s control; however it is expected that most USB controllers supported by UPDD should work. However, this driver expects the touch data to be delivered on USB interface 0, endpoint 1 (C:I:E = 1:0:81). A change to the driver will be necessary to support a different controller configuration.

    If the USB device presents itself to the Solaris system as a USB Mouse the Solaris mouse driver will take control. In this case, and to make available the device to the UPDD driver use the following command:

    add_drv -m '* 0666 root sys' -i '"usb4e7,20.204"' ugen

    where ‘4e7,20’ define the device’s vendor and product id which can be seen via the
    dmesg | grep usbif command.

    The prtconf –v indicates the actual values needed to pass on this command as shown for a different controller eef,c000

    name='compatible' type=string items=9
    value='usbeef,c000.8400' + 'usbeef,c000' + 'usbifeef,class3.1.2' + 'usbifeef,class3.1' + 'usbifeef,class3' + 'usbif,class3.1.2' + 'usbif,class3.1' + 'usbif,class3' + 'usb,device'

    It has also been reported that the single add_drv command is not always sufficient and it may be necessary to also use the commands
    rem_drv ugen
    and
    update_drv {parameters}

 

  1. Serial interface
    To support a serial device, following installation of the driver you need to add a device in the driver settings and then set the name of the serial device as per this example:

    tbutils adddevice
    tbutils setting sz port /dev/ttya

  2. Solaris service - xhost
    The install script provides an example installation strategy based around a Solaris service.
    This strategy uses the “xhost +” command to allow the service to interact with a desktop.
    In some cases this might be considered unsecure, if so a system administrator should adapt this script to use a strategy appropriate to the installation.
    The important considerations are:
    • The process tbupddwu must be launched to provide the touch service
    • This process requires root privileges to access the usb interface.
    • If the system pointer (mouse) interface is required then the process must have access to open the display (localhost:0:0)

  3. System libraries
    System libraries required by the driver and its utilities, such as libusb, libaudio, which are not installed by the driver should be installed using the Solaris installation package.

Procedures

To install the software you need to unpack the supplied package to a working directory and run the UPDD installation script as root.

 

This is an example of how this might be undertaken.  You need to open up a terminal window and type in the following commands:

 

 

Terminal command

Note

 

Xhost +

see important ‘Solaris service - xhost’  installation note above

 

cd ~

Change directory to root

 

mkdir updd

Make a temp directory, in this case updd

 

cd updd

Change to the temp directory

 

cp <delivered package> .

Copy delivered package to directory

 

gunzip upddsolx86_[ver].tgz

Decompress (will create .tar file)

 

tar –xvf upddsolx86.tar

Unpack tar file

 

sudo install_updd_sol.pl  

Run installation script as root

 

or (depending on system configuration you might need to run)

 

Sudo perl install_updd_sol.pl

 

 

The updd service is started automatically; there is no need to reboot.

Installed modules

This information is subject to change.

 

A number of package specific and optional links and files, such as help files will be included. These will be in /opt/tbupddso or one of its child folders. These files are not documented here. The following other files are installed:

 

Module

Description

/opt/tbupdddso/tbcalib

Calibration utility

/opt/tbupdddso/tbutils

Command line utilites

/opt/tbupdddso/tbupddwu  

The driver module

/opt/tbupdddso/tbupdd.ini 

Driver settings

/usr/local/lib/libtbapi.so.

Application program interface (api) library

/usr/local/lib/libtbapi.so.1.

Soft link to api library

/usr/local/lib/libtbapi.so.1.0

Soft link to api library

/usr/local/lib/libACE-5.6.2.so 

ACE (see http://www.cs.wustl.edu/~schmidt/ACE.html)

/usr/local/lib/libqt.so

Qt (see http://qt.nokia.com/products/)

/usr/local/lib/libqt.so.3

Soft link to Qt library

/usr/local/lib/libqt.so.3.3

Soft link to Qt library

/usr/local/lib/libqt.so.3.3.8  

Soft link to Qt library

/lib/svc/method/svc-updd 

Service start script

/var/svc/manifest/application/updd.xml

Service definition

 

Uninstall

To uninstall the software execute the command

 

sudo /opt/tbupddso/uninstall_updd_sol.pl

(or sudo perl /opt/tbupddso/uninstall_updd_sol.pl)

Notes:

  1. This script assumes that the default installation script was used.
  2. This removes all installed software including installed shared libraries.

 

Using the supported programs

 

Driver

The main driver process (tbupddwu) is installed and executed as a Solaris service. For full information about such services please consult the Solaris documentation. The following useful commands are noted here:

To stop the service: sudo svcadm disable tbupdd

To start the service: sudo svcadm enable tbupdd

To list information about the service: svcs –l tbupdd

 

Utilities

The following support programs are located in /opt/tbupddso

 

Program

Description

tbcalib

touch screen calibration utility

tbutils

command line interface

These programs are described in more detail in the relevant sections of the updd documentation as linked above.

 

There are no special requirements to run these programs. They can simply be launched from a terminal.

Calibration

Calibration is a procedure used to align the touch screen with the graphical display area or desktop segment. When using mouse emulation interface the mouse cursor should normally position itself under the point of contact. If this is not the case then calibration will be required.

Command Line Utility

This utility is described in a separate document and can be used to list driver and system information and retrieve / change driver settings. The utility is located in folder /opt/tbupddso.

 

The driver is custom built for specific touch device and will only work if the device is located on the system.  For USB the device is located via the USB vendor and product id.  The ‘tbutils list’ command will indicate if a device has been located, as per this example:

 

 

Should the above command not list any devices then you can use the dmesg command “dmesg | grep usbif “to list USB devices within the system along with their vendor and product ids. The vendor and product id must match that configured for the touch device in the UPDD driver.

 

 

Other commands can be used to show the device is working , such as the ‘tbutils caltouches’ to show calibrated touch data received from the controller:

 

 

A user is free to create a desktop shortcut to any of these utilities. As the method to do this depends on the desktop manager in use, please refer to the help for your desktop manager.

 

Current Limitations

UPDD was originally developed for Windows and has since been ported to other OS. When porting to other OS most key updd functionality is supported except where the functionality is OS specific or it is noted in the exclusions below.

 

The driver uses a background daemon process, aidaemon, to implement some features and monitoring functionality, such as a system tray type menu, monitoring screen rotation etc. Aidaemon is NOT included in the current Solaris build and therefore any of the supported functions required in a Solaris environment will need to be implemented on a per request basis.

Mouse Emulation

This driver supports desktop mouse emulation to allow touch interaction with the desktop and applications.  Applications can also utilise the UPDD API to receive touch data directly into the application.

Exclusions

As discussed above, functions associated with the driver’s daemon process are not support under this OS.

Further, these restrictions apply:

 

  • Only USB interface is supported, custom built for a specific device as required.
  • Right click not currently supported – can easily be added if required.
  • Interactive touch – visual notification of right click count down
  • Dynamic detection of system language and no localisation (English only)
  • Multi-monitor support untested (by should work!)
  • No sound on touch or during calibration

Contact

For further information or technical assistance please email the technical support team at technical@touch-base.com