diff --git a/inos/Smart-Watch/Smart-Watch.ino b/inos/Smart-Watch/Smart-Watch.ino index 6daa77f..70e5399 100644 --- a/inos/Smart-Watch/Smart-Watch.ino +++ b/inos/Smart-Watch/Smart-Watch.ino @@ -42,6 +42,16 @@ class CharacteristicCallbacks: public BLECharacteristicCallbacks { } } }; +class MyServerCallbacks: public BLEServerCallbacks { + void onConnect(BLEServer* pServer) { + Serial.println("Conecction with client"); + BLEDevice::startAdvertising(); + }; + + void onDisconnect(BLEServer* pServer) { + Serial.println("Disconnection with client"); + } +}; void setup() { Serial.begin(115200); @@ -88,8 +98,14 @@ void loop() { void initDevice(){ BLEDevice::init(deviceName); BLEServer *pServer = BLEDevice::createServer(); + pServer->setCallbacks(new MyServerCallbacks()); BLEService *pService = pServer->createService(SERVICE_UUID); + BLESecurity *pSecurity = new BLESecurity(); + pSecurity->setAuthenticationMode(ESP_LE_AUTH_BOND); // Bonding erlauben + pSecurity->setCapability(ESP_IO_CAP_NONE); + pSecurity->setInitEncryptionKey(ESP_BLE_ENC_KEY_MASK | ESP_BLE_ID_KEY_MASK); + //Test characteristic BLECharacteristic *pCharacteristic = pService->createCharacteristic( CHAR_TEST_UUID, @@ -112,7 +128,6 @@ void initDevice(){ BLEDevice::startAdvertising(); Serial.println("Characteristic defined! Now you can read it in your phone!"); } - void updateClock(){ unsigned long curMil = millis();