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, and may be used
23 as the X server's core pointer. Multiple mice are supported by multi‐
24 ple instances of this driver.
25
27 USB mouse
28 USB (Universal Serial Bus) ports are present on most modern com‐
29 puters. Several devices can be plugged into this bus, including
30 mice and keyboards. Support for USB mice is platform specific.
31
32 PS/2 mouse
33 The PS/2 mouse is an intelligent device and may have more than
34 three buttons and a wheel or a roller. The PS/2 mouse is usu‐
35 ally compatible with the original PS/2 mouse from IBM immedi‐
36 ately after power up. The PS/2 mouse with additional features
37 requires a specialized initialization procedure to enable these
38 features. Without proper initialization, it behaves as though
39 it were an ordinary two or three button mouse.
40
41 Serial mouse
42 There have been numerous serial mouse models from a number of
43 manufacturers. Despite the wide range of variations, there have
44 been relatively few protocols (data format) with which the
45 serial mouse talks to the host computer.
46
47 The modern serial mouse conforms to the PnP COM device specifi‐
48 cation so that the host computer can automatically detect the
49 mouse and load an appropriate driver. This driver supports this
50 specification and can detect popular PnP serial mouse models on
51 most platforms.
52
53 Bus mouse
54 The bus mouse connects to a dedicated interface card in an
55 expansion slot. Some older video cards, notably those from ATI,
56 and integrated I/O cards may also have a bus mouse connector.
57
58 The interface type of the mouse can be determined by looking at the
59 connector of the mouse. USB mice have a thin rectangular connector.
60 PS/2 mice are equipped with a small, round DIN 6-pin connector. Serial
61 mouse have a D-Sub female 9- or 25-pin connector. Bus mice have either
62 a D-Sub male 9-pin connector or a round DIN 9-pin connector. Some mice
63 come with adapters with which the connector can be converted to
64 another. If you are to use such an adapter, remember that the connec‐
65 tor at the very end of the mouse/adapter pair is what matters.
66
68 Depending on the X server version in use, input device options may be
69 set in either a xorg.conf file, or in the configuration files read by
70 the Hardware Abstraction Layer (HAL) daemon, 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.mouse document contains some detailed
81 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 platform specifies that protocol auto-detection should be
97 attempted. There is no default protocol setting, and specifying
98 this option is mandatory.
99
100 Option "Device" "string"
101 Specifies the device through which the mouse can be accessed. A
102 common setting is "/dev/mouse", which is often a symbolic link
103 to the real device. This option is mandatory, and there is no
104 default setting. The server may however attempt to probe some
105 default devices if this option is missing.
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.
117
118 Option "Emulate3Timeout" "integer"
119 Sets the timeout (in milliseconds) that the driver waits before
120 deciding if two buttons where pressed "simultaneously" when 3
121 button emulation is enabled. Default: 50.
122
123 Option "ChordMiddle" "boolean"
124 Enable/disable handling of mice that send left+right events when
125 the middle button is used. Default: off.
126
127 Option "EmulateWheel" "boolean"
128 Enable/disable "wheel" emulation. Wheel emulation means emulat‐
129 ing button press/release events when the mouse is moved while a
130 specific real button is pressed. Wheel button events (typically
131 buttons 4 and 5) are usually used for scrolling. Wheel emula‐
132 tion is useful for getting wheel-like behaviour with trackballs.
133 It can also be useful for mice with 4 or more buttons but no
134 wheel. See the description of the EmulateWheelButton, Emulate‐
135 WheelInertia, XAxisMapping, and YAxisMapping options below.
136 Default: off.
137
138 Option "EmulateWheelButton" "integer"
139 Specifies which button must be held down to enable wheel emula‐
140 tion mode. While this button is down, X and/or Y pointer move‐
141 ment will generate button press/release events as specified for
142 the XAxisMapping and YAxisMapping settings. If set to 0, no
143 button is required and any motion of the device is converted
144 into wheel events. Default: 4.
145
146 Option "EmulateWheelInertia" "integer"
147 Specifies how far (in pixels) the pointer must move to generate
148 button press/release events in wheel emulation mode. Default:
149 10.
150
151 Option "EmulateWheelTimeout" "integer"
152 Specifies the time in milliseconds the EmulateWheelButton must
153 be pressed before wheel emulation is started. If the Emulate‐
154 WheelButton is released before this timeout, the original button
155 press/release event is sent. Default: 200.
156
157 Option "XAxisMapping" "N1 N2"
158 Specifies which buttons are mapped to motion in the X direction
159 in wheel emulation mode. Button number N1 is mapped to the neg‐
160 ative X axis motion and button number N2 is mapped to the posi‐
161 tive X axis motion. Default: no mapping.
162
163 Option "YAxisMapping" "N1 N2"
164 Specifies which buttons are mapped to motion in the Y direction
165 in wheel emulation mode. Button number N1 is mapped to the neg‐
166 ative Y axis motion and button number N2 is mapped to the posi‐
167 tive Y axis motion. Default: no mapping.
168
169 Option "ZAxisMapping" "X"
170
171 Option "ZAxisMapping" "Y"
172
173 Option "ZAxisMapping" "N1 N2"
174
175 Option "ZAxisMapping" "N1 N2 N3 N4"
176 Set the mapping for the Z axis (wheel) motion to buttons or
177 another axis (X or Y). Button number N1 is mapped to the nega‐
178 tive Z axis motion and button number N2 is mapped to the posi‐
179 tive Z axis motion. For mice with two wheels, four button num‐
180 bers can be specified, with the negative and positive motion of
181 the second wheel mapped respectively to buttons number N3 and
182 N4. Note that the protocols for mice with one and two wheels
183 can be different and the driver may not be able to autodetect
184 it. Default: "4 5".
185
186 Option "ButtonMapping" "N1 N2 [...]"
187 Specifies how physical mouse buttons are mapped to logical but‐
188 tons. Physical button 1 is mapped to logical button N1, physi‐
189 cal button 2 to N2, and so forth. This enables the use of phys‐
190 ical buttons that are obscured by ZAxisMapping.
191 Default: "1 2 3 8 9 10 ...".
192
193 Option "FlipXY" "boolean"
194 Enable/disable swapping the X and Y axes. This transformation
195 is applied after the InvX, InvY and AngleOffset transformations.
196 Default: off.
197
198 Option "InvX" "boolean"
199 Invert the X axis. Default: off.
200
201 Option "InvY" "boolean"
202 Invert the Y axis. Default: off.
203
204 Option "AngleOffset" "integer"
205 Specify a clockwise angular offset (in degrees) to apply to the
206 pointer motion. This transformation is applied before the
207 FlipXY, InvX and InvY transformations. Default: 0.
208
209 Option "SampleRate" "integer"
210 Sets the number of motion/button events the mouse sends per sec‐
211 ond. Setting this is only supported for some mice, including
212 some Logitech mice and some PS/2 mice on some platforms.
213 Default: whatever the mouse is already set to.
214
215 Option "Resolution" "integer"
216 Sets the resolution of the device in counts per inch. Setting
217 this is only supported for some mice, including some PS/2 mice
218 on some platforms. Default: whatever the mouse is already set
219 to.
220
221 Option "Sensitivity" "float"
222 Mouse movements are multiplied by this float before being pro‐
223 cessed. Use this mechanism to slow down high resolution mice.
224 Because values bigger than 1.0 will result in not all pixels on
225 the screen being accessible, you should better use mouse accel‐
226 eration (see man xset) for speeding up low resolution mice.
227 Default: 1.0
228
229 Option "DragLockButtons" "L1 B2 L3 B4"
230 Sets "drag lock buttons" that simulate holding a button down, so
231 that low dexterity people do not have to hold a button down at
232 the same time they move a mouse cursor. Button numbers occur in
233 pairs, with the lock button number occurring first, followed by
234 the button number that is the target of the lock button.
235
236 Option "DragLockButtons" "M1"
237 Sets a "master drag lock button" that acts as a "Meta Key" indi‐
238 cating that the next button pressed is to be "drag locked".
239
240 Option "ClearDTR" "boolean"
241 Enable/disable clearing the DTR line on the serial port used by
242 the mouse. Some dual-protocol mice require the DTR line to be
243 cleared to operate in the non-default protocol. This option is
244 for serial mice only. Default: off.
245
246 Option "ClearRTS" "boolean"
247 Enable/disable clearing the RTS line on the serial port used by
248 the mouse. Some dual-protocol mice require the RTS line to be
249 cleared to operate in the non-default protocol. This option is
250 for serial mice only. Default: off.
251
252 Option "BaudRate" "integer"
253 Set the baud rate to use for communicating with a serial mouse.
254 This option should rarely be required because the default is
255 correct for almost all situations. Valid values include: 300,
256 1200, 2400, 4800, 9600, 19200. Default: 1200.
257
258 There are some other options that may be used to control various param‐
259 eters for serial port communication, but they are not documented here
260 because the driver sets them correctly for each mouse protocol type.
261
263 Xorg(1), xorg.conf(5), Xserver(1), X(7), README.mouse.
264
265 hal(7), hald(8), fdi(5).
266
267
268
269X Version 11 xf86-input-mouse 1.5.0 MOUSE(4)