Replace BLE encryption with HMAC-only auth, add buildnr, fix post-flash flow
BLE bonding/encryption removed — HMAC-SHA256 on application level provides authentication + replay protection. Eliminates bonding state bugs, write queue issues, and GATT_INSUFFICIENT_AUTHENTICATION complexity. Firmware: - Remove BLESecurity, setRespEncryptionKey, ESP_GATT_PERM_WRITE_ENCRYPTED - Characteristic permission: ESP_GATT_PERM_WRITE (no encryption required) - Characteristic property: PROPERTY_WRITE_NR (Write Without Response) Enables direct ON/OFF sequences without ACK wait time Android: - Remove bondReceiver, createBond, bonding state handling - Remove write queue / pendingRelayState / writeInProgress - Use WRITE_TYPE_NO_RESPONSE for minimal latency - Post-flash dialog auto-dismisses on USB detach (currentAction = NONE) - Separate progressDialog (flash progress) from dialog (post-flash info) - Detach during active action now calls cleanupAction() Build number: - BuildConfig.BUILD_NUMBER in build.gradle as yyyyMMddHHmmss timestamp - buildFeatures.buildConfig enabled - Displayed in SettingsActivity bottom (12sp, secondary color) Gradle: - Wrapper upgraded 8.5 → 8.14 - minSdk 24 → 26 (Android 8+) README updated to reflect HMAC-only security model.
This commit is contained in:
parent
0ff2c59b6d
commit
81abf2d824
13 changed files with 212 additions and 145 deletions
|
|
@ -1,5 +1,5 @@
|
|||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.5-bin.zip
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14-bin.zip
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
Loading…
Reference in a new issue