diff --git a/lib/hidapi/hidapi_impl.py b/lib/hidapi/hidapi_impl.py index 978d34fc..74c44b63 100644 --- a/lib/hidapi/hidapi_impl.py +++ b/lib/hidapi/hidapi_impl.py @@ -38,6 +38,8 @@ from typing import Callable from hidapi.common import DeviceInfo +from logitech_receiver.common import LOGITECH_VENDOR_ID + if typing.TYPE_CHECKING: import gi @@ -251,6 +253,11 @@ def _match( logger.info(f"Skipping unlikely device {device['path']} ({bus_id}/{vid:04X}/{pid:04X})") return None + # Skip Logitech webcams to prevent them from locking up during hidpp checks (product IDs range for webcams from docs/usb.ids.txt) + if vid == LOGITECH_VENDOR_ID and 0x0800 <= pid <= 0x09ff: + logger.info(f"Skipping Logitech webcam {device['path']} ({bus_id}/{vid:04X}/{pid:04X})") + return None + # Check for hidpp support device["hidpp_short"] = False device["hidpp_long"] = False