|
Revision 1.17, 25th May 2008
Linux Installation |
|||||||||||
|
Welcome
to UPDD Linux platform specific notes for UPDD 4.1.1, released in beta form 25/04/08. For earlier releases click here. Although
the first UPDD V4 driver was released in Oct 2006 these notes and the
information held within has been build up over the years with the usage of
our previous driver in the Linux environments but have been modified to
accommodate installation and other subtle changes relating to version 4. Very important general note: Linux is an open source environment
utilised and supported by highly knowledgeable and capable developers.
Many aspects of the Linux system are maintained by Linux groups and
communities. Nearly all software created by these Linux groups is made
available under open source license agreements, including any touch screen
drivers that have been written, mainly by individuals. Linux distributions
are many and varied and all have slight subtle differences. Many users,
developers and integrators in the Linux community do not expect to pay for
software. All of this makes it commercially very difficult to operate
in the Linux environment with a niche product such as our touch screen driver
products. Our driver is mainly aimed at the non technical Linux users or larger
commercial organisations that need a tried and tested touch driver
solution that comes with comprehensive support. To this end our driver
offers a generalised installation package with basic system requirements and
in many cases should work ‘out the box’, especially with
the main stream Linux distributions. If you are a Linux technician,
with access to open source touch driver code that you can modify and
make the necessary system configuration changes then UPDD is unlikely to
match your specific requirements particularly as there are license costs
involved. Further, given the number of Linux distributions, if UPDD has any
issues on distributions not listed and tested we may not be readily able to
offer free
support as the amount of support needed does not match the commercial
viability of Linux sales. License NoticeThe software is licensed software and as such requires a license per system when the production version of the software is installed. Production software is either supplied by pointer device manufacturers or system integrators (who are entitled to distribute the driver) or is available directly from Touch-Base sales. Evaluation software, which is available from our Download Centre has a 100 ‘mouse click’ restriction at which point the driver needs to be reloaded or a calibration performed to gain a further 100 clicks. Copyright NoticeThis software, Universal Pointer Device Driver – TBUPDD, is copyright © 1998 – 2008 by Touch-Base Ltd. All rights reserved. The Linux version utilises a software library, libusb, which is used under the terms of the GNU Lesser General Public License as published by the Free Software Foundation and under the terms of this license the following applies: Copyright (c) 2000-2003 Johannes Erdfelt johannes@erdfelt.com All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. The name of the author may not be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTR Under the terms of this license we will also make the Universal Pointer Device Driver binaries available to allow the libusb module to be replaced with an alternative version. Please contact technical@touch-base.com for further information. Full details of the LGPL are available here. |
|||||||||||
Linux driver build history |
|||||||||||
|
Release |
Date |
Change |
|||||||||
|
4.0.2 |
10th
Oct 06 |
Initial
Version 4 release for X86 systems |
|||||||||
|
|
22nd
Nov 06 |
Support new X
interface on Fedora Core 5 |
|||||||||
|
4.0.4 |
5th
Jan 07 |
Added support
for Power PC based systems |
|||||||||
|
|
16th
Jan 07 |
Changes
required for SUSE 10.1 |
|||||||||
|
|
17th
Jan 07 |
Interactive touch
fix. Mouse settings called from Click Mode dialog for KDE and Gnome. |
|||||||||
|
|
9th
March 07 |
Multi-monitor
support added |
|||||||||
|
4.0.6 |
15th
Nov 07 |
Linux 64 bit
support |
|||||||||
|
4.1.1 |
25th
Apr 08 |
Much improved
PnP support based on common code across all platforms |
|||||||||
DeliverablesThe main
installation package is held within the compressed file called linuxupdd.tgz. Software requested from Touch-Base to be delivered
electronically will be delivered in one of three ways:
General Notes
UPDD for
Linux has two driver components. A core processing engine which exists
outside the kernel and an X extension to provide the mouse interface for X
based GUI applications. This architecture allows for maximum portability. As
the core driver is not embedded in the kernel a single compiled module can be
executed on any kernel version. The vast majority of users use X to host GUI
applications; however, UPDD has the flexibility to support other GUI’s
by reimplementation of this minimal module. The
initial UPDD for Linux was developed under Linux 2.4 + X (or X-Windows). The
driver has been tested on various Linux flavours using Xfree86, mainly version
4.x and more recently X.org. It has also been extensively tested under 2.6.x
kernel. In theory the driver should install and run on most of the standard
Linux distributions. Please contact us
if you should experience any difficulties installing or running the driver as
it is likely to be a minor issue that is preventing the software from
working. You
should be aware that it is possible to load multiple X sessions on a machine
and switch between them as required. At any one time an X session will be active
on the desktop and the other X sessions will be in the background. The driver
can be installed from any X session. Each X session running will receive
pointer movements and click requests which might not be desirable as you will
not know what is being selected in the hidden, background, X sessions. We
believe that in a touch environment most users will only run with one X
session and therefore we do not think this is a significant issue. Please
contact us if this causes any problems, as it may be possible for us to limit
mouse movement and clicks to the active X session if you must run in a
multiple X session environment. The
driver is statically linked with its required libraries and as such is quite
large in size. This is normally not an
issue for standard Linux desktop systems but can be an issue in specialised,
cut down or embedded Linux environments.
Please contact technical@touch-base.com
if you require a dynamically linked version of the driver.
USB
PS/2
In the file /etc/X11/XF86Config there
is a section which will be similar to the following:- Section “InputDevice” Identifier “Mouse0” #
Modified by mouseconfig Driver “mouse” Option “Device” “/dev/mouse” Option “Protocol” “PS/2” Option “Emulate3Buttons” “no” Option “ZaxisMapping” “4 5” EndSection This identifies a PS/2 mouse to use with X
using the name ’Mouse0’ to identify itself. There will be
another section like the one shown below: Section “ServerLayout” InputDevice
“Updd0” “SendCoreEvents”
Identifier “Anaconda
Configured” Screen 0
“Screen0” 0 0
InputDevice
“Mouse0” “CorePointer” #
InputDevice
“Keyboard0” “CoreKeyboard” EndSection The line ‘InputDevice “Mouse0”
“CorePointer”’ in this section is including the PS/2
mouse driver configured in the other section. This line should be removed. The line ‘InputDevice
“Updd0” “SendCoreEvents”’ should be
modified so that it reads:- InputDevice “Updd0”
“CorePointer” System Requirements
Apart from the Linux kernel software our software requires the following
components: |
|||||||||||
|
Processor |
X86 |
Fully supported and tested in-house |
|
|
ARM |
Have generated an ARM build with a cross compiler but have not tested in-house due to lack of ARM based hardware. |
|
|
PowerPC |
With earlier versions we have supported this processor but 4.1.x has not yet been compiled for this processor. |
|
Graphics Manager |
XF86config Xorg.conf |
graphical interface (if using a
graphics interface – driver will load and work without X allowing for
application API interface to driver) See Window Manager installation below. |
|
|
“86” in the config file names refers to the fact that it was originally developed on x86 and doesn’t actually reflect what processor/platform it’s running on |
|
|
File utilities |
mkdir, cd etc, Sound utility sox if using calibration beeps, see Hardware requirement below. |
|
|
Libraries |
C |
UPDD V4 uses dynamic linked
library calls so requires the C library to be available. UPDD V4 utilises release 6 (libstdc++.so.6). C library version 6 has
been available for a number of years and should be shipped as standard in
most Linux distributions. For legacy distributions with earlier C libraries
either install the V6 lib or use UPDD V3 (uses V5 C library).A C++ version 6
library that may be suitable in some distributions can be found here.
If this library is not available in your distribution then we can
supply a driver with statically linked components. |
|
Hardware |
Sound card |
If calibration beeps are enabled in the UPDD Console a sound card is required as we have not been able to access the internal PC speaker under Linux. |
|
|
USB |
For USB devices the USB file system must be a component of the distribution and enabled. |
If you need a driver for other
environments, such as a different graphics manager or different processor we
can update our driver to match your requirements but there will be a cost
involved on a time and materials basis.
UPDD Linux has been around many years and used on many distribution and
the old Linux documentation lists previous distributions tested. The following table shows the distributions
tested since 4.1.1 release:
|
Distribution |
OS rel |
Proc |
UPDD |
Date |
|
|
4 & 5 |
x86 |
4.1.1 |
25th April 2008 |
Tested in-house and customer sites |
|
|
7.10 |
x86 |
4.1.1 |
25th April 2008 |
Tested in-house |
|
|
|
8.04 |
x86 |
|
|
Not OK – awaits install script change |
|
7 |
x86 |
4.1.1 |
25th April 2008 |
Tested in-house. |
|
|
|
8 and 9 |
x86 |
4.1.1 |
25th April 2008 |
Not OK
– awaits X interface changes |
|
10.3 |
X86 |
4.1.1 |
21st April 2008 |
Tested in-house and customer sites |
|
|
5.1 |
x86 |
4.1.1 |
9th June 2008 |
Reported OK by a customer. |
|
|
|
|||||
|
Important –
Check the distribution notes section below that records any issues we have
had during testing |
|||||
Distribution Notes
At the
time of writing we are aware of the some distributions that have some issues.
If you are using the graphical install on ‘tested distributions’
then the following does not apply as we are building into the install
individual Linux distribution setup scripts to cater for the distribution
requirements. If you
are manually installing, or installing on untested distributions or there are
issues after install on tested distributions then please read the appropriate
section for your distribution: |
|||||
Distribution |
Issues |
General |
Window
management issue – first noted on Fedora Core 5 and 6 and also reported
on Suse 10.1 but could effect other distributions: Generating a
click via touch is sometimes ignored. In some areas of the Linux menu system
we have found that unless the mouse is moved to the position of the click the
click is ignored, such as the 2nd level of menus from the
Application start menu option:
Some items
within the applications menu will expand to a 2nd level menu.
Lifting the stylus off the first menu and clicking into the second menu item will not activate the selected
item. You need to slide your finger
from the first menu to the second menu and lift the stylus off when over the
desired item. This problem can also be
seen with a mouse by having the mouse at the position of the second level
item and clicking when it is shown. With no mouse movement prior to click,
the click is ignored. |
Calibration |
Correct operation of the calibration requires the calibration screen to
be displayed in full screen mode. Some Linux distributions cannot handle the
method used by our calibration program to force full screen with
unpredictable results. To date we have
seen this with Linux distribution Maemo. On systems where
the full screen issue occurs, one of the following actions will be necessary: 1. Execute the calibration program in an environment
that supports full screen display. For example if a window manager is
preventing full screen mode try running without the window manager
active. (This has been necessary on
systems using the TWM window manager) 2. In cases where
full screen is not possible we have utilised a UPDD calibration style, named Custom2Point,
whereby calibration does not attempt full screen mode (and therefore cannot
draw accurate calibration points) but instead requests that the top left and
bottom right corners of the calibration area be used as the calibration
reference points. No
other calibration patterns are catered for.
Either request a build from Touch-Base with this calibration style
pre-defined or use the UPDD Console, calibration dialog to add the style
(deleting the existing style) and then calibrate to invoke corner
calibration. |
TWM window manager |
In order to calibrate you must run the
calibration program (tbcalib) without the TWM window manager active so that
the entire screen area is used. If
this is not possible see calibration notes above. |
Slackware 10 |
We found two issues with this distribution: 1. The Linux files are installed in a different file structure so UPDD install does not locate the configuration file and therefore there is some extra work to do after installation, as follows: Install UPDD as normal. Then create a file called “rc.updd” in the
“/etc/rc.d” directory with the following content:- #!/bin/sh if [ “$1” = “stop” ]; then echo “Stopping updd…” killall tbupddwu elif [ “$1” = “restart”]; then echo “Restarting updd…” killall tbupddwu sleep 1 /opt/tbupddlx/tbupddwu & |