Solaar/tests/logitech_receiver
Ken Sanislo 8bdb49feec Remove static PRO X 2 descriptor; fully probe Centurion devices at runtime
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
2026-04-12 14:51:54 -07:00
..
__init__.py tests: Add tests of common module 2024-02-18 06:10:53 -05:00
fake_hidpp.py Remove static PRO X 2 descriptor; fully probe Centurion devices at runtime 2026-04-12 14:51:54 -07:00
test_base.py base: Refactor device filtering 2025-01-01 11:20:28 -05:00
test_base_usb.py Speedup lookup of known receivers 2025-01-01 11:33:07 -05:00
test_common.py refactor: use IntEnum for firmware and cidgroup constances 2024-10-23 16:25:35 -04:00
test_desktop_notifications.py testing: upgrade desktop notifications tests to take notifications availability into account 2025-01-02 10:47:53 -05:00
test_device.py Add Centurion transport and PRO X 2 LIGHTSPEED headset support 2026-04-12 14:51:54 -07:00
test_diversion.py Refactor: Introduce Feature enum 2024-10-14 07:28:09 -04:00
test_hidpp10.py tests: remove test that doesn't work in older Pythons 2025-12-24 08:11:04 -05:00
test_hidpp20_complex.py Remove static PRO X 2 descriptor; fully probe Centurion devices at runtime 2026-04-12 14:51:54 -07:00
test_hidpp20_simple.py Estimate accurate battery level for some rechargable devices (#2745) 2025-01-02 10:58:07 -05:00
test_notifications.py show better pairing errors (#3063) 2025-12-10 11:18:50 -05:00
test_receiver.py receiver: Handle unknown power switch locations again 2025-02-22 15:29:35 -05:00
test_setting_templates.py device: pause setting up features when error occurs; use ADC message to signal connection and disconnection 2025-04-22 08:45:55 -04:00
test_settings_validator.py Split up huge settings module 2025-01-01 10:46:04 -05:00