From 7c5b01e96798973565bf902d34783848e745880f Mon Sep 17 00:00:00 2001 From: HomeSpan Date: Sun, 24 Mar 2024 09:37:27 -0500 Subject: [PATCH] Additional logic for TLV Characteristics --- src/HomeSpan.cpp | 2 +- src/HomeSpan.h | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/HomeSpan.cpp b/src/HomeSpan.cpp index 5a9f1a9..1364b59 100644 --- a/src/HomeSpan.cpp +++ b/src/HomeSpan.cpp @@ -1846,7 +1846,7 @@ SpanCharacteristic::~SpanCharacteristic(){ void SpanCharacteristic::printfAttributes(int flags){ const char permCodes[][7]={"pr","pw","ev","aa","tw","hd","wr"}; - const char formatCodes[][9]={"bool","uint8","uint16","uint32","uint64","int","float","string","data"}; + const char formatCodes[][9]={"bool","uint8","uint16","uint32","uint64","int","float","string","data","tlv8"}; hapOut << "{\"iid\":" << iid; diff --git a/src/HomeSpan.h b/src/HomeSpan.h index 9eaf7e4..983289c 100644 --- a/src/HomeSpan.h +++ b/src/HomeSpan.h @@ -618,7 +618,7 @@ class SpanCharacteristic{ sprintf(nvsKey,"%04X%08X%03X",t,aid,iid&0xFFF); size_t len; - if(format!=FORMAT::STRING && format!=FORMAT::DATA && format!=FORMAT::TLV_ENC){ + if(format=FORMAT::STRING) return value.STRING; return NULL; } char *getNewString(){ - if(format == FORMAT::STRING) + if(format>=FORMAT::STRING) return newValue.STRING; return NULL; @@ -706,7 +706,7 @@ class SpanCharacteristic{ } // setString() size_t getData(uint8_t *data, size_t len){ - if(format!=FORMAT::DATA) + if(format