Replace the hardcoded descriptor entry with dynamic discovery of all device properties via the Centurion protocol. The headset name, kind, serial, firmware, and battery are now probed at runtime — matching how the device actually presents itself rather than relying on static data. Key changes: - Discover sub-device features via CentPPBridge and route requests through the bridge automatically - Infer device kind from feature IDs (0x06xx = headset) for both wireless and direct USB connections - Read device name from USB product string with protocol probe fallback - Parse bridge error responses (sub_feat_idx=0xFF) instead of timing out - Handle unknown HID++ error codes gracefully in base.py - Fix firmware deduplication for Centurion parent devices - Prefer sub-device serial/firmware over parent (non-printable) values - Add Centurion-aware display in solaar show with parent/sub-device sections - Support both wireless (0AF7 dongle) and direct USB (0AF8) connections |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| fake_hidpp.py | ||
| test_base.py | ||
| test_base_usb.py | ||
| test_common.py | ||
| test_desktop_notifications.py | ||
| test_device.py | ||
| test_diversion.py | ||
| test_hidpp10.py | ||
| test_hidpp20_complex.py | ||
| test_hidpp20_simple.py | ||
| test_notifications.py | ||
| test_receiver.py | ||
| test_setting_templates.py | ||
| test_settings_validator.py | ||