1MOUSE(4)                   Kernel Interfaces Manual                   MOUSE(4)
2
3
4

NAME

6       mouse - Xorg mouse input driver
7

SYNOPSIS

9       Section "InputDevice"
10         Identifier "idevname"
11         Driver "mouse"
12         Option "Protocol" "protoname"
13         Option "Device"   "devpath"
14         ...
15       EndSection
16

DESCRIPTION

18       mouse  is  an  Xorg  input  driver  for mice.  The driver supports most
19       available mouse types and interfaces, though the level of  support  for
20       types of mice depends on the OS.
21
22       The mouse driver functions as a pointer input device. Multiple mice are
23       supported by multiple instances of this driver.
24

SUPPORTED HARDWARE

26       USB mouse
27              USB (Universal Serial Bus) ports are present on most modern com‐
28              puters.  Several devices can be plugged into this bus, including
29              mice and keyboards.  Support for USB mice is platform specific.
30
31       PS/2 mouse
32              The PS/2 mouse is an intelligent device and may have  more  than
33              three  buttons  and a wheel or a roller.  The PS/2 mouse is usu‐
34              ally compatible with the original PS/2 mouse  from  IBM  immedi‐
35              ately  after  power up.  The PS/2 mouse with additional features
36              requires a specialized initialization procedure to enable  these
37              features.   Without  proper initialization, it behaves as though
38              it were an ordinary two or three button mouse.
39
40       Serial mouse
41              There have been numerous serial mouse models from  a  number  of
42              manufacturers.  Despite the wide range of variations, there have
43              been relatively few  protocols  (data  format)  with  which  the
44              serial mouse talks to the host computer.
45
46              The  modern serial mouse conforms to the PnP COM device specifi‐
47              cation so that the host computer can  automatically  detect  the
48              mouse and load an appropriate driver.  This driver supports this
49              specification and can detect popular PnP serial mouse models  on
50              most platforms.
51
52       Bus mouse
53              The  bus  mouse  connects  to  a  dedicated interface card in an
54              expansion slot.  Some older video cards, notably those from ATI,
55              and integrated I/O cards may also have a bus mouse connector.
56
57       The  interface  type  of  the mouse can be determined by looking at the
58       connector of the mouse.  USB mice have a  thin  rectangular  connector.
59       PS/2 mice are equipped with a small, round DIN 6-pin connector.  Serial
60       mouse have a D-Sub female 9- or 25-pin connector.  Bus mice have either
61       a D-Sub male 9-pin connector or a round DIN 9-pin connector.  Some mice
62       come with adapters  with  which  the  connector  can  be  converted  to
63       another.   If you are to use such an adapter, remember that the connec‐
64       tor at the very end of the mouse/adapter pair is what matters.
65

CONFIGURATION DETAILS

67       Depending on the X server version in use, input device options  may  be
68       set  in  either a xorg.conf file, an xorg.conf.d snippet or in the con‐
69       figuration files read by the Hardware Abstraction Layer  (HAL)  daemon,
70       hald(1).
71
72       Please  refer to xorg.conf(5) for general configuration details and for
73       options that can be used with all input  drivers.   This  section  only
74       covers configuration details specific to this driver.
75
76       The  driver  can auto-detect the mouse type on some platforms.  On some
77       platforms this is limited to plug and play serial mice, and on some the
78       auto-detection  works  for  any  mouse that the OS's kernel driver sup‐
79       ports.  On others, it is always necessary to specify the mouse protocol
80       in the config file.  The README document provided with this driver con‐
81       tains some detailed information about this.
82
83       The following driver Options are supported:
84
85       Option "Protocol" "string"
86              Specify the mouse protocol.  Valid protocol types include:
87
88                   Auto, Microsoft, MouseSystems, MMSeries,  Logitech,  Mouse‐
89                   Man,  MMHitTab,  GlidePoint,  IntelliMouse,  ThinkingMouse,
90                   ValuMouseScroll, AceCad, PS/2, ImPS/2, ExplorerPS/2, Think‐
91                   ingMousePS/2,    MouseManPlusPS/2,   GlidePointPS/2,   Net‐
92                   MousePS/2, NetScrollPS/2, BusMouse, SysMouse, WSMouse, USB,
93                   VUID, Xqueue.
94
95              Not  all  protocols  are supported on all platforms.  The "Auto"
96              protocol  specifies  that  protocol  auto-detection  should   be
97              attempted.  The default protocol setting is platform-specific.
98
99       Option "Device" "string"
100              Specifies the device through which the mouse can be accessed.  A
101              common setting is "/dev/mouse", which is often a  symbolic  link
102              to  the  real device.  This option is mandatory, and there is no
103              default setting. The driver may however attempt  to  probe  some
104              default  devices  if  this option is missing.  Property: "Device
105              Node" (read-only).
106
107       Option "Buttons" "integer"
108              Specifies the number of mouse buttons.  In cases where the  num‐
109              ber  of buttons cannot be auto-detected, the default value is 3.
110              The maximum number is 24.
111
112       Option "Emulate3Buttons" "boolean"
113              Enable/disable the emulation of the third (middle) mouse  button
114              for mice which only have two physical buttons.  The third button
115              is emulated by pressing both buttons  simultaneously.   Default:
116              on, until a press of a physical button 3 is detected.  Property:
117              "Mouse Middle Button Emulation"
118
119       Option "Emulate3Timeout" "integer"
120              Sets the timeout (in milliseconds) that the driver waits  before
121              deciding  if  two  buttons where pressed "simultaneously" when 3
122              button emulation is enabled.  Default:  50.    Property:  "Mouse
123              Middle Button Timeout"
124
125       Option "ChordMiddle" "boolean"
126              Enable/disable handling of mice that send left+right events when
127              the middle button is used.  Default: off.
128
129       Option "EmulateWheel" "boolean"
130              Enable/disable "wheel" emulation.  Wheel emulation means emulat‐
131              ing  button press/release events when the mouse is moved while a
132              specific real button is pressed.  Wheel button events (typically
133              buttons  4  and 5) are usually used for scrolling.  Wheel emula‐
134              tion is useful for getting wheel-like behaviour with trackballs.
135              It  can  also  be  useful for mice with 4 or more buttons but no
136              wheel.  See the description of the EmulateWheelButton,  Emulate‐
137              WheelInertia,  XAxisMapping,  and  YAxisMapping  options  below.
138              Default: off.
139
140       Option "EmulateWheelButton" "integer"
141              Specifies which button must be held down to enable wheel  emula‐
142              tion  mode.  While this button is down, X and/or Y pointer move‐
143              ment will generate button press/release events as specified  for
144              the  XAxisMapping  and  YAxisMapping  settings.  If set to 0, no
145              button is required and any motion of  the  device  is  converted
146              into wheel events.  Default: 4.
147
148       Option "EmulateWheelInertia" "integer"
149              Specifies  how far (in pixels) the pointer must move to generate
150              button press/release events in wheel emulation  mode.   Default:
151              10.
152
153       Option "EmulateWheelTimeout" "integer"
154              Specifies  the  time in milliseconds the EmulateWheelButton must
155              be pressed before wheel emulation is started.  If  the  Emulate‐
156              WheelButton is released before this timeout, the original button
157              press/release event is sent.  Default: 200.
158
159       Option "XAxisMapping" "N1 N2"
160              Specifies which buttons are mapped to motion in the X  direction
161              in wheel emulation mode.  Button number N1 is mapped to the neg‐
162              ative X axis motion and button number N2 is mapped to the  posi‐
163              tive X axis motion.  Default: no mapping.
164
165       Option "YAxisMapping" "N1 N2"
166              Specifies  which buttons are mapped to motion in the Y direction
167              in wheel emulation mode.  Button number N1 is mapped to the neg‐
168              ative  Y axis motion and button number N2 is mapped to the posi‐
169              tive Y axis motion.  Default: no mapping.
170
171       Option "ZAxisMapping" "X"
172
173       Option "ZAxisMapping" "Y"
174
175       Option "ZAxisMapping" "N1 N2"
176
177       Option "ZAxisMapping" "N1 N2 N3 N4"
178              Set the mapping for the Z axis  (wheel)  motion  to  buttons  or
179              another  axis (X or Y).  Button number N1 is mapped to the nega‐
180              tive Z axis motion and button number N2 is mapped to  the  posi‐
181              tive  Z axis motion.  For mice with two wheels, four button num‐
182              bers can be specified, with the negative and positive motion  of
183              the  second  wheel  mapped respectively to buttons number N3 and
184              N4.  Note that the protocols for mice with one  and  two  wheels
185              can  be  different  and the driver may not be able to autodetect
186              it.  Default: "4 5".
187
188       Option "ButtonMapping" "N1 N2 [...]"
189              Specifies how physical mouse buttons are mapped to logical  but‐
190              tons.   Physical button 1 is mapped to logical button N1, physi‐
191              cal button 2 to N2, and so forth.  This enables the use of phys‐
192              ical    buttons    that    are    obscured    by   ZAxisMapping.
193              Default: "1 2 3 8 9 10 ...".
194
195       Option "FlipXY" "boolean"
196              Enable/disable swapping the X and Y axes.   This  transformation
197              is applied after the InvX, InvY and AngleOffset transformations.
198              Default: off.
199
200       Option "InvX" "boolean"
201              Invert the X axis.  Default: off.
202
203       Option "InvY" "boolean"
204              Invert the Y axis.  Default: off.
205
206       Option "AngleOffset" "integer"
207              Specify a clockwise angular offset (in degrees) to apply to  the
208              pointer  motion.   This  transformation  is  applied  before the
209              FlipXY, InvX and InvY transformations.  Default: 0.
210
211       Option "SampleRate" "integer"
212              Sets the number of motion/button events the mouse sends per sec‐
213              ond.   Setting  this  is only supported for some mice, including
214              some Logitech  mice  and  some  PS/2  mice  on  some  platforms.
215              Default: whatever the mouse is already set to.
216
217       Option "Resolution" "integer"
218              Sets  the  resolution of the device in counts per inch.  Setting
219              this is only supported for some mice, including some  PS/2  mice
220              on  some  platforms.  Default: whatever the mouse is already set
221              to.
222
223       Option "Sensitivity" "float"
224              Mouse movements are multiplied by this float before  being  pro‐
225              cessed.  Use  this  mechanism to slow down high resolution mice.
226              Because values bigger than 1.0 will result in not all pixels  on
227              the  screen being accessible, you should better use mouse accel‐
228              eration (see man xset) for  speeding  up  low  resolution  mice.
229              Default: 1.0
230
231       Option "DragLockButtons" "L1 B2 L3 B4"
232              Sets "drag lock buttons" that simulate holding a button down, so
233              that low dexterity people do not have to hold a button  down  at
234              the  same time they move a mouse cursor. Button numbers occur in
235              pairs, with the lock button number occurring first, followed  by
236              the button number that is the target of the lock button.
237
238       Option "DragLockButtons" "M1"
239              Sets a "master drag lock button" that acts as a "Meta Key" indi‐
240              cating that the next button pressed is to be "drag locked".
241
242       Option "ClearDTR" "boolean"
243              Enable/disable clearing the DTR line on the serial port used  by
244              the  mouse.   Some dual-protocol mice require the DTR line to be
245              cleared to operate in the non-default protocol.  This option  is
246              for  serial  mice only and is handled by the X server.  Default:
247              off.
248
249       Option "ClearRTS" "boolean"
250              Enable/disable clearing the RTS line on the serial port used  by
251              the  mouse.   Some dual-protocol mice require the RTS line to be
252              cleared to operate in the non-default protocol.  This option  is
253              for  serial  mice only and is handled by the X server.  Default:
254              off.
255
256       Option "BaudRate" "integer"
257              Set the baud rate to use for communicating with a serial  mouse.
258              This  option  should  rarely  be required because the default is
259              correct for almost all situations.  Valid values  include:  300,
260              1200, 2400, 4800, 9600, 19200.  Default: 1200.
261
262       There are some other options that may be used to control various param‐
263       eters for serial port communication, but they are not  documented  here
264       because the driver sets them correctly for each mouse protocol type.
265

SEE ALSO

267       Xorg(1), xorg.conf(5), Xserver(1), X(7), README.mouse.
268
269       hal(7), hald(8), fdi(5).
270
271
272
273X Version 11                xf86-input-mouse 1.9.1                    MOUSE(4)
Impressum