From e275ab7f8159a33300a20df63da2201a4cb01c11 Mon Sep 17 00:00:00 2001
From: Stefan Zabka <stefan.zabka@hu-berlin.de>
Date: Fri, 23 Aug 2019 17:16:40 +0200
Subject: [PATCH] ble:card10 personal state sending the correct byte array now

---
 .../main/java/de/ccc/events/badge/card10/Constants.kt  | 10 +++++-----
 .../de/ccc/events/badge/card10/time/Card10Service.kt   |  8 +++++---
 2 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/app/src/main/java/de/ccc/events/badge/card10/Constants.kt b/app/src/main/java/de/ccc/events/badge/card10/Constants.kt
index 4ae7d4d..0ce6fa2 100644
--- a/app/src/main/java/de/ccc/events/badge/card10/Constants.kt
+++ b/app/src/main/java/de/ccc/events/badge/card10/Constants.kt
@@ -50,12 +50,12 @@ val LEDS_POWERSAFE_CHARACTERISTIC_UUID = UUID.fromString("42230217-2342-2342-234
 val FLASHLIGHT_CHARACTERISTIC_UUID = UUID.fromString("42230218-2342-2342-2342-234223422342")
 val PERSONAL_STATE_CHARACTERISTIC_UUID = UUID.fromString("42230219-2342-2342-2342-234223422342")
 
-enum class PersonalState(val v: Byte) {
+enum class PersonalState(val v: Int) {
     NONE(0x0000),
-    NO_CONTACT(0x0100.toByte()),
-    CHAOS(0x0200.toByte()),
-    COMMUNICATION(0x0300.toByte()),
-    CAMP(0x0400.toByte())
+    NO_CONTACT(0x0100),
+    CHAOS(0x0200),
+    COMMUNICATION(0x0300),
+    CAMP(0x0400)
 }
 
 val LEDS_ABOVE_CHARACTERISTIC_UUID = UUID.fromString("42230220-2342-2342-2342-234223422342")
diff --git a/app/src/main/java/de/ccc/events/badge/card10/time/Card10Service.kt b/app/src/main/java/de/ccc/events/badge/card10/time/Card10Service.kt
index 4cef343..1822c05 100644
--- a/app/src/main/java/de/ccc/events/badge/card10/time/Card10Service.kt
+++ b/app/src/main/java/de/ccc/events/badge/card10/time/Card10Service.kt
@@ -41,7 +41,7 @@ class Card10Service(
         timeCharacteristic.writeType = BluetoothGattCharacteristic.WRITE_TYPE_NO_RESPONSE
         rocketsCharacteristic.writeType = BluetoothGattCharacteristic.WRITE_TYPE_NO_RESPONSE
         ledsAboveCharacteristic.writeType = BluetoothGattCharacteristic.WRITE_TYPE_NO_RESPONSE
-        personalStateCharacteristic.writeType = BluetoothGattCharacteristic.WRITE_TYPE_DEFAULT
+        personalStateCharacteristic.writeType = BluetoothGattCharacteristic.WRITE_TYPE_NO_RESPONSE
     }
 
     fun setTime() {
@@ -62,8 +62,10 @@ class Card10Service(
     }
 
     fun setPersonalState(value: PersonalState) {
-        personalStateCharacteristic.value = ByteArray(1)
-        personalStateCharacteristic.value[0] = value.v
+        personalStateCharacteristic.value = ByteArray(2)
+        personalStateCharacteristic.value[0] = value.v.toByte()
+        personalStateCharacteristic.value[1] = (value.v shr 8).toByte()
+        println("=== Writing personal State array : ${personalStateCharacteristic.value[0]},${personalStateCharacteristic.value[1]} ")
         ConnectionService.writeCharacteristic(personalStateCharacteristic)
     }
 }
\ No newline at end of file
-- 
GitLab