fix: resolve device identity by raw PM+SUB, not FBL (#69); platform-aware detection (#68)
#69: GUI showed "Frozen Warframe Pro" instead of "Stream Vision" for 87AD:70DB bulk devices. Root cause: _resolve_device_identity used FBL (64) for button image lookup instead of raw PM (7) + SUB (1). Added pm_byte/sub_byte to HandshakeResult, set them in all handshake implementations (Bulk, LY, HID Type 2/3), and used them for button image resolution. Also fixed debug report to show actual PM/SUB/FBL separately instead of mislabeling FBL as PM. #68: Windows bulk devices not detected. CLI detect command and other code paths imported Linux-only DeviceDetector.detect() directly, bypassing the platform-aware builder routing. Made detect_devices alias platform-aware (Windows→WMI, macOS→pyusb, BSD→pyusb, Linux→sysfs). Added wmi to Windows optional deps and PyInstaller hidden imports. Guarded udev rules check for Linux only. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
L
Lexonight1 committed
868f6161663a1f07163dca48f9f460e3edef5177
Parent: de3d8c4