The USB keyboard is shown twice
because it presents two keyboard interfaces to the system: the first one for standard
keys, and the second one for additional multimedia keys, such as volume control,
mute, scroll, and dedicated application buttons.
In each case, the device name is specified on the N: line, after Name=, and the physical
connection is specified on the P: line, after Phys=.
The physical connection of a USB device will change every time the USB arrangement
is disturbed??”for example, when the keyboard is unplugged and moved to a
different USB port, or a hub is added between the keyboard and the system. If you
have just one keyboard of a particular type, it??™s best to identify it by device name, so
that it can be found regardless of which port you plug it into. However, if you need
to specify one keyboard out of several identical ones, you have no choice but to use
the physical connection name.
Here is an InputDevice section configured to accept input only from a USB keyboard
(taken from the /proc/bus/input/devices output above), specifying the evdev protocol
and using the DevPhys option to specify the physical connection:
Section "InputDevice"
Identifier "USB Keyboard"
Driver "kbd"
Option "Protocol" "evdev"
Option "DevPhys" "usb-0000:00:1d.
Pages:
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153