Table of Contents
citron - Citron Infrared Touch Driver (CiTouch) 
Section "InputDevice"
  Identifier "idevname"
  Driver "citron"
  Option "Device"   "devpath"
  ...
EndSection
citron  is a XFree86 input driver for  Citron Infrared Touch
devices. 
The citron driver acts as a pointer input device, and may be used
as the X server's core pointer. It is connected via a "RS232" with the host.
At the moment the following touches are supported. They
are also available as  ZPress touches.  
 IRT6I5-V2.x  6.5 inch Infrared Touch
 
 IRT10I4-V4.x  10.4 inch Infrared Touch
 
 IRT12I1-V2.x  12.1 inch Infrared Touch
 
 IRT15I1-V1.x   15.1 inch Infrared Touch
 
 
Please refer to XF86Config(5)
 for general configuration
details and for options that can be used with all input drivers.  This section
only covers configuration details specific to this driver. For better understanding
please read also the  CTS and various IRT manuals which are available in
"pdf" format from Citron web page  www.citron.de or directly from Citron.
 
The following driver Options are supported: 
- Option "Device" "devpath"
- Specify the device path for the citron touch.  Valid devices are: 
/dev/ttyS0,
/dev/ttyS1, ... 
This option is mandatory. 
It's important to specify the right
device Note: com1 -> /dev/ttyS0, com2 -> /dev/ttyS1, ... 
 
- Option "ScreenNumber"
"screennumber" 
- sets the screennumber for the  citron InputDevice. 
Default:
 ScreenNumber: "0" 
 
- Option "MinX" "value" 
- Option "MinY" "value" 
- These are
the minimum X and Y values for the  citron input device. 
Note: MinX, MinY
must be less than MaxX, MaxY. 
Range:  "0" - "65535" 
Default: MinX: "0"  MinY:
"0" 
 
 
- Option "MaxX" "value" 
- Option "MaxY" "value" 
- These are the maximum
X and Y values for the  citron input device. 
Note: MaxX, MaxY must be greater
than MinX, MinY. 
Range:  "0" - "65535" 
Default: MaxX: "65535"  MaxY: "65535"
 
 
- Option "ButtonNumber" "value" 
- This value is responsible for the  button
number that is returned within the xf86PostButton event message  
Range:
 "0" - "255" 
Default: "1" 
 
- Option "ButtonThreshold" "value" 
- This value is
responsible for the  button threshold. It changes the pressure sensitivity
of the touch. A higher number corresponds to a higher pressure. 
Note: This
feature is only available with pressure sensitive hardware. 
Range:  "0"
- "255" 
Default: "20" 
 
- Sleep-Mode 
- If the IRT is in  Doze-Mode and Touch Zone
is not interrupted for another  certain span of time, the so-called Sleep-Mode
is activated. The  Sleep-Mode decreases the scan rate of the beams even further
than the  Doze-Mode does (see below). This way the life expectancy of the
beams is  prolonged and the power consumption of the IRT is reduced.  As
soon as an interruption of the Touch Zone is detected, the  Sleep-Mode is
deactivated and the Touch Zone will again be scanned with  the maximum
speed. With the Sleep-Mode activated,  depending on the set scan rate the
IRT's response time can be considerably longer as in normal operation. If,
for example,  a scan rate of 500 ms / scan is set, it may last up to a
half  of a second until the IRT detects the interruption and deactivates
 the  Sleep-Mode. 
  
- Option "SleepMode" "mode" 
- This value is responsible for
the  sleep-mode of the touch.  Determines the behaviour of the Sleep-Mode.
 0x00   No message at either activation or deactivation
 
 
 0x01  Message at activation
 
 
 0x02   Message at deactivation
 
 
 0x03   Message at activation and deactivation
 
 
 0x10 GP_OUT output set according to the Sleep-Mode status  
 Values:  "0"
"1" "2" "3" "16"  
 Default: "0"  
  
 
- Option "SleepTime" "time" 
- This value is
responsible for the  sleep-time of the touch. It is the activation time in
seconds  ("0" = immediately activated, "65535" = always deactivated).  
Range:
 "0" - "65535" [s] 
Default: "65535" => deactivated 
 
- Option "SleepScan" "scan"
- This value is responsible for the  scan-time of the touch. This is the time
interval between two scan operations while in Sleep-Mode. The time interval
is set in steps of milliseconds.  
Range:  "0" - "65535" [ms] 
Default: "500"
 
- Option "PWMActive" "value" 
- This value determines the mark-to-space ratio
of the  PWM output while in normal operation (sleep-mode not active). Higher
values result in longer pulse widths. This output  signal can be used in
conjunction with the  Citron AWBI to do backlight-dimming via the touch.
Range:  "0" - "255"  
Default: "255" (max. brightness) 
 
 
- Option "PWMSleep"
"value" 
- This value determines the mark-to-space ratio of the  PWM output
while in sleep-mode (-> SleepMode, SleepScan, SleepTime ) operation (sleep-mode
active). Higher values result in longer pulse widths. 
Range:  "0" - "255"
 
Default: "255" (max. brightness) 
 
- Option "PWMFreq" "value" 
- This value determines
the PWM frequency in Hertz. 
Range: "39" - "9803" 
Default: "9803" (max. frequency)
 
- Option "ClickMode" "mode" 
- With mode one can select between 5  ClickModes
 "1" = ClickMode Enter  
 With this mode every interruption of the infrared
beams will activate a ButtonPress event and after the interruption a ButtonRelease
event will be sent.  
 "2" = ClickMode Dual  
 With this mode every interruption
will sent a Proximity event and every second interruption a ButtonPress
event. With the release of the interruption (while one interruption is still
active) a ButtonRelease event will be sent.  
 "3" = ClickMode Dual Exit  
With this mode every interruption will sent a ProximityIn event and every
second interruption a ButtonPress event. With the release of the interruption
(while one interruption is still active) no ButtonRelease event will be
sent. Only if all interruptions are released a ButtonRelease followed by
a ProximityOut event will be sent.  
 "4" = ClickMode ZPress  
 With this mode
every interruption will sent a ProximityIn event. Only if a certain pressure
is exceeded a ButtonPress event will occur. If the pressure falls below
a certain limit a ButtonRelease event will be sent. After also the interruption
is released a ProximityOut event is generated.  
 "5" = ClickMode ZPress Exit
 
 This mode is similar to "Clickmode Dual Exit".  The first interruption
of the beams will sent a ProximityIn event. Only if a certain pressure is
exceeded a ButtonPress event will occur. If the pressure falls below a certain
limit no ButtonRelease event will be sent. After the interruption is also
released a ButtonRelease followed by a ProximityOut event is generated.
 
Range:  "1" - "5"  
Default: "1" (ClickMode Enter) 
 
- Option "Origin" "value"
- This value sets the coordinates origin to one of the four corners of  the
screen. The following values are accepted: "0" TOPLEFT: Origin set to the
left-hand side top corner. "1" TOPRIGHT: Origin set to the right-hand side
top corner. "2" BOTTOMRIGHT: Origin set to the right-hand side bottom corner.
"3" BOTTOMLEFT: Origin set to the left-hand side bottom corner. 
Range:  "0"
- "3"  
Default: "0" (TOPLEFT) 
 
- Doze-Mode 
- If for a certain span of time the
Touch Zone is not interrupted, the so-called Doze-Mode is automatically activated.
The activated  Doze-Mode slightly decreases the scan rate of the beams. This
way  the power consumption of the IRT is reduced. As soon as an  interruption
of the Touch Zone is detected, the Doze-Mode is deactivated and the Touch
Zone will again be scanned with  the maximum speed. 
  
- Option "DozeMode" "mode"
- This value is responsible for the  doze-mode of the touch.  
Determines the
behaviour of the Doze-Mode. 
0x00 No message at either activation or deactivation
 0x01 Message at activation 
 0x02 Message at deactivation 
 0x03 Message
at activation and deactivation 
 0x10 GP_OUT output set according to the
Doze-Mode status 
 If the GP_OUT output is already controlled by the  Sleep-Mode
it is no longer available as an output port anymore. 
Values:  "0" "1" "2"
"3" "16" 
Default: "0" 
 
 
 
- Option "DozeTime" "time" 
- This value is responsible
for the  doze-time of the touch. It is the activation time in seconds  ("0"
= immediately activated, "65535" = always deactivated).  
Range:  "0" - "65535"
[s] 
Default: "65535" => deactivated 
 
 
- Option "DozeScan" "scan" 
- This value
is responsible for the  scan-time of the touch. This is the time interval
between two scan operations while in Doze-Mode. The time interval is set
in steps of milliseconds.  
Range:  "0" - "65535" [ms] 
Default: "500" 
 
- Option
"DeltaX" "value" 
- This value determines a virtual area at the left and right
side of the current cursor position where the cursor didn't move. Within
this area no "MotionNotify" event will be sent. 
Range:  "0" - "255"  
Default:
"0" (no deltaX) 
 
 
- Option "DeltaY" "value" 
- This value determines a virtual
area at the top and bottom of the current cursor position where the cursor
didn't move. Within this area no "MotionNotify" event will be sent. 
Range:
 "0" - "255"  
Default: "0" (no deltaY) 
 
- Option "Beep" "value" 
- This value
determines if a "ButtonPress" and/or a "ButtonRelease" event should sound
the buzzer. "0" deactivates the buzzer while every other value will activate
it. 
Range:  "0" - "1"  
Default: "0" (deactivated) 
 
- Option "PressVol" "value"
- This value determines the volume of the buzzer (0-100%) when a "ButtonPress"
event is sent. 
Range:  "0" - "100"  
Default: "100"  
 
 
- Option "PressPitch"
"value" 
- This value determines the pitch of the tone when a "ButtonPress"
event is sent. 
Range:  "0" - "3000"  
Default: "880"  
 
 
 
- Option "PressDur"
"value" 
- This value determines the duration of the tone in ms when a "ButtonPress"
event is sent. 
Range:  "0" - "255"  
Default: "15"  
 
- Option "ReleaseVol" "value"
- This value determines the volume of the buzzer (0-100%) when a "ButtonRelease"
event is sent. 
Range:  "0" - "100"  
Default: "100"  
 
 
- Option "ReleasePitch"
"value" 
- This value determines the pitch of the tone when when a "ButtonRelease"
event is sent. 
Range:  "0" - "3000"  
Default: "1200"  
 
 
 
- Option "ReleseDur"
"value" 
- This value determines the duration of the tone in ms when when
a "ButtonRelease" event is sent. 
Range:  "0" - "255"  
Default: "10"  
 
 
 
- Option
"BeamTimeout" "value" 
- Determines the time span in seconds, that has to
elapse before a beam is  considered defective, blanked-out and excluded
from the coordinates  evaluation. 
Range:  "0" - "65535"  
Default: "30" (30
seconds) 
 
 
 
 
- Option "TouchTime" "value" 
- Determines the minimum time span
in steps of 10ms for a valid  interruption. In order for an interruption
to be reported to the host computer as valid, it needs to remain at  the
same spot for at least the time span declared here. 
Range:  "0" - "255" 
Default: "0" (=6,5 ms) 
 
 
- Option "EnterCount" "count" 
- Number of skipped
"enter reports". Reports are sent approx.  every 20ms. 
Range:  "0" - "31" 
Default: "3" (3 skipped messages = 60ms) 
 
 
- Option "ZEnterCount" "count"
- Number of skipped "enter reports" while in pressure sensitive mode. Reports
are sent approx. every 20ms. 
Range: "0" - "31" 
Default: "1" (1 skipped messages
= 20ms) 
 
 
- Option "DualCount" "count" 
- Number of skipped "dual touch error".
Reports are sent approx.  every 20ms. This option is only available for "ZPress"
and  "ZPress Exit" modes. 
Range:  "0" - "31"  
Default: "2" (2 skipped messages
= 40ms) 
 
 
XFree86(1)
, XF86Config(5)
, xf86config(1)
, Xserver(1)
,
X(7)
. 
2000-2001 - written  by  Citron GmbH (support@citron.de) 
Table of Contents