1.. _ignoring_devices: 2 3============================================================================== 4Ignoring specific devices 5============================================================================== 6 7If a device has the **LIBINPUT_IGNORE_DEVICE** udev property set to any 8value but "0", that device is not initialized by libinput. 9For a context created with **libinput_udev_create_context()**, the device is 10silently ignored and never shows up. If the device is added with 11**libinput_path_add_device()** to a context created with 12**libinput_path_create_context()**, adding the device will fail and return NULL 13(see that function's documentation for more 14information). 15 16If the property value is exactly "0", then the property is considered unset 17and libinput initializes the device normally. 18 19This property should be used for devices that are correctly detected as 20input devices (see :ref:`udev_device_type`) but that should not be used by 21libinput. It is recommended that devices that should not be handled as input 22devices at all unset the **ID_INPUT** and related properties instead. The 23**LIBINPUT_IGNORE_DEVICE** property signals that only libinput should 24ignore this property but other parts of the stack (if any) should continue 25treating this device normally. 26 27Below is an example udev rule to assign **LIBINPUT_IGNORE_DEVICE** to the 28device with the vendor/model ID of ``012a``/``034b``. :: 29 30 $ cat /etc/udev/rules.d/99-ignore-my-device.rules 31 ACTION!="remove", KERNEL=="event[0-9]*", \ 32 ENV{ID_VENDOR_ID}=="012a", \ 33 ENV{ID_MODEL_ID}=="034b", \ 34 ENV{LIBINPUT_IGNORE_DEVICE}="1" 35 36See :ref:`udev_config` for more details on libinput's udev properties. 37