Device.write/read always call get_configuration which WinUSB does not
implement. Route all framed I/O through the backend with IF5 claimed.
Co-authored-by: Cursor <cursoragent@cursor.com>
Restores the helper accidentally removed when adding access-denied
handling, retries I/O after seeding pyusb config index on Windows, and
handles USB overflow reads without crashing the HELLO loop.
Co-authored-by: Cursor <cursoragent@cursor.com>
Point users to Zadig WinUSB binding for MI_05 and stopping official
Wormhole drivers that hold exclusive claim on interface 5.
Co-authored-by: Cursor <cursoragent@cursor.com>
Widen libusb DLL search, copy DLL into venv on setup, match sibling
PIDs, and add doctor command with PnP VID_0711 hints for WinUSB.
Co-authored-by: Cursor <cursoragent@cursor.com>
Skip get_configuration/kernel-driver APIs on Windows, seed pyusb
config cache, and require only Vendor interface 5 for transfers.
Co-authored-by: Cursor <cursoragent@cursor.com>
PyInstaller onedir/onefile specs, Inno Setup script, and GitHub Actions
workflow to produce JUC500-Setup-win64.exe and portable builds.
Co-authored-by: Cursor <cursoragent@cursor.com>