We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent c91c02c commit 80036baCopy full SHA for 80036ba
src/utility/ATT.cpp
@@ -553,6 +553,22 @@ bool ATTClass::disconnect()
553
554
numDisconnects++;
555
556
+ BLEDevice bleDevice(_peers[i].addressType, _peers[i].address);
557
+
558
+ // clear CCCD values on disconnect
559
+ for (uint16_t att = 0; att < GATT.attributeCount(); att++) {
560
+ BLELocalAttribute* attribute = GATT.attribute(att);
561
562
+ if (attribute->type() == BLETypeCharacteristic) {
563
+ BLELocalCharacteristic* characteristic = (BLELocalCharacteristic*)attribute;
564
565
+ characteristic->writeCccdValue(bleDevice, 0x0000);
566
+ }
567
568
569
+ _longWriteHandle = 0x0000;
570
+ _longWriteValueLength = 0;
571
572
_peers[i].connectionHandle = 0xffff;
573
_peers[i].role = 0x00;
574
_peers[i].addressType = 0x00;
0 commit comments