Rewrite USB key reader: raw USB API + retry logic
- Replaced usb-serial-for-android library with raw Android USB API (UsbDeviceConnection.bulkTransfer) — the library's testConnection() sent a get_status CDC request that the ESP32-S3 USB-JTAG/serial controller does not support, causing read failures - Added CDC control interface setup (line coding + DTR/RTS) to enable data flow before sending KEY? command - Added retry logic: 5 attempts, 1s delay between retries, to handle other apps grabbing the USB device first (JTAG/serial debug unit triggers multiple system dialogs before our app gets permission) - Re-lookup ESP device on each retry to handle device path changes - Removed usb-serial-for-android dependency and JitPack repository
This commit is contained in:
parent
4518aec34e
commit
c707c21d7f
3 changed files with 207 additions and 80 deletions
|
|
@ -34,5 +34,4 @@ android {
|
|||
dependencies {
|
||||
implementation 'androidx.core:core-ktx:1.12.0'
|
||||
implementation 'androidx.appcompat:appcompat:1.6.1'
|
||||
implementation 'com.github.mik3y:usb-serial-for-android:3.7.3'
|
||||
}
|
||||
Loading…
Reference in a new issue