1MOUSE(4) Kernel Interfaces Manual MOUSE(4)
2
3
4
6 mouse - Xorg mouse input driver
7
9 Section "InputDevice"
10 Identifier "idevname"
11 Driver "mouse"
12 Option "Protocol" "protoname"
13 Option "Device" "devpath"
14 ...
15 EndSection
16
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
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
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
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)