diff --git a/src/BLECharacteristic.cpp b/src/BLECharacteristic.cpp index c97927c..60b71ed 100644 --- a/src/BLECharacteristic.cpp +++ b/src/BLECharacteristic.cpp @@ -107,7 +107,13 @@ bool BLECharacteristic::written() { } void BLECharacteristic::setValue(BLECentral& central, const unsigned char value[], unsigned char length) { - this->setValue(value, length); + if ( _properties & BLEWriteWithoutResponse ) { + this->_valueLength = min(length, this->_valueSize); + memcpy(this->_value, value, this->_valueLength); + } + else { + this->setValue(value, length); + } this->_written = true;