From 9b7adabc590eaf165442e21ec15f59e451877302 Mon Sep 17 00:00:00 2001 From: eddy Date: Sun, 26 Jul 2026 16:31:07 +0200 Subject: [PATCH] Add onCharacteristicWrite callback for BLE write feedback Implement onCharacteristicWrite in gattCallback to get confirmation that packets are submitted to the local BLE stack. Logs success/failure and shows 'Communicatiefout' on write failure. seq++ stays in sendRelayCommand to ensure unique sequence numbers for rapid ON/OFF. Reviewed in codereview.md (recommendation #5). --- .../src/main/java/com/eddy/atomrelay/MainActivity.kt | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/android/app/src/main/java/com/eddy/atomrelay/MainActivity.kt b/android/app/src/main/java/com/eddy/atomrelay/MainActivity.kt index f3576b7..b5342d5 100644 --- a/android/app/src/main/java/com/eddy/atomrelay/MainActivity.kt +++ b/android/app/src/main/java/com/eddy/atomrelay/MainActivity.kt @@ -118,6 +118,16 @@ class MainActivity : AppCompatActivity() { runOnUiThread { statusText.text = "Service not found" } } } + + @SuppressLint("MissingPermission") + override fun onCharacteristicWrite(gatt: BluetoothGatt, characteristic: BluetoothGattCharacteristic, status: Int) { + if (status == BluetoothGatt.GATT_SUCCESS) { + Log.d(TAG, "Write confirmed by local BLE stack (status=$status)") + } else { + Log.w(TAG, "Write failed (status=$status)") + runOnUiThread { statusText.text = "Communicatiefout" } + } + } } override fun onCreate(savedInstanceState: Bundle?) {