From d88eee8fcf23e20ae76b3dd346b36af693849ccd Mon Sep 17 00:00:00 2001 From: Trygve Laugstøl Date: Thu, 22 Nov 2018 19:30:14 +0100 Subject: o Working enabling of notifications. --- apps/ble-read-characteristic.cpp | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'apps/ble-read-characteristic.cpp') diff --git a/apps/ble-read-characteristic.cpp b/apps/ble-read-characteristic.cpp index 8a0a7b6..a11b0cf 100644 --- a/apps/ble-read-characteristic.cpp +++ b/apps/ble-read-characteristic.cpp @@ -1,5 +1,6 @@ #include #include +#include #include #include #include "ble/Bluetooth.h" @@ -100,8 +101,18 @@ public: cout << "Got data, size=" << response.getSize() << endl; } else if (op_mode == op::NOTIFY) { auto cccd = characteristic.get()->getDescriptor(trygvis::bluetooth::uuids::CLIENT_CHARACTERISTIC_CONFIG); -// cccd->setValue(BluetoothGattDescriptor::ENABLE_NOTIFICATION_VALUE); - gatt->setCharacteristicNotification(cccd, true); + + if (!cccd) { + cout << "The characteristic does not have a CCCD" << endl; + } else { + cerr << "Enabling notifications" << endl; + cccd->setValue(ByteBuffer::wrapInitialized(BluetoothGattDescriptor::ENABLE_NOTIFICATION_VALUE)); + gatt->setCharacteristicNotification(cccd, true); + gatt->write(cccd); + + cout << "sleeping" << endl; + std::this_thread::sleep_for(10s); + } } else { cout << "Unsupported op mode." << endl; } -- cgit v1.2.3