Solaris Installation              Revision 1.2 – 4th Nov 2014\documentation\installation






Supported programs





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





Nov 2014

Initial release for Solaris 10, Update 9



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



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.





  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
    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.


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



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



Run installation script as root


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


Sudo perl



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:





Calibration utility


Command line utilites


The driver module


Driver settings


Application program interface (api) library


Soft link to api library


Soft link to api library


ACE (see


Qt (see


Soft link to Qt library


Soft link to Qt library


Soft link to Qt library


Service start script


Service definition



To uninstall the software execute the command


sudo /opt/tbupddso/

(or sudo perl /opt/tbupddso/


  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



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



The following support programs are located in /opt/tbupddso





touch screen calibration utility


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 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.


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


For further information or technical assistance please email the technical support team at