diff --git a/ZgatewayBT.ino b/ZgatewayBT.ino index c2203f3..4426b51 100644 --- a/ZgatewayBT.ino +++ b/ZgatewayBT.ino @@ -101,12 +101,18 @@ Thanks to wolass https://github.com/wolass for suggesting me HM 10 and dinosd ht pos = strpos(service_data,"209800"); if (pos != -1){ trc("mi flora data reading"); + #ifdef ZmqttDiscovery + MiFloraDiscovery(mac); + #endif boolean result = process_data(pos - 24,service_data,mac); } pos = -1; pos = strpos(service_data,"20aa01"); if (pos != -1){ trc("mi jia data reading"); + #ifdef ZmqttDiscovery + MiJiaDiscovery(mac); + #endif boolean result = process_data(pos - 26,service_data,mac); } @@ -271,12 +277,18 @@ Thanks to wolass https://github.com/wolass for suggesting me HM 10 and dinosd ht pos = strpos(d[5].extract,"209800"); if (pos != -1) { trc("mi flora data reading"); + #ifdef ZmqttDiscovery + MiFloraDiscovery(d[0].extract); + #endif boolean result = process_data(pos - 38,(char *)Service_data.c_str(),d[0].extract); } pos = -1; pos = strpos(d[5].extract,"20aa01"); if (pos != -1){ trc("mi jia data reading"); + #ifdef ZmqttDiscovery + MiJiaDiscovery(d[0].extract); + #endif boolean result = process_data(pos - 40,(char *)Service_data.c_str(),d[0].extract); } return true; @@ -302,7 +314,57 @@ Thanks to wolass https://github.com/wolass for suggesting me HM 10 and dinosd ht #endif +#ifdef ZmqttDiscovery +void MiFloraDiscovery(char * mac){ + #define MiFloraparametersCount 4 + trc(F("MiFloraDiscovery")); + char * MiFlorasensor[MiFloraparametersCount][8] = { + {"sensor", "MiFlora-lux", mac, "illuminance","{{ value_json.lux }}","", "", "lu"} , + {"sensor", "MiFlora-tem", mac,"","{{ value_json.tem }}","", "", "°C"} , + {"sensor", "MiFlora-fer", mac,"","{{ value_json.fer }}","", "", ""} , + {"sensor", "MiFlora-moi", mac,"","{{ value_json.moi }}","", "", "%"} + //component type,name,availability topic,device class,value template,payload on, payload off, unit of measurement + }; + + for (int i=0;i jsonBuffer; JsonObject& BLEdata = jsonBuffer.createObject(); diff --git a/ZmqttDiscovery.ino b/ZmqttDiscovery.ino index 0755e5d..4d2e6db 100644 --- a/ZmqttDiscovery.ino +++ b/ZmqttDiscovery.ino @@ -291,7 +291,7 @@ void pubMqttDiscovery() #endif #ifdef ZgatewayIR - // Sensor to display RF received value + // Sensor to display IR received value trc(F("gatewayIRDiscovery")); char * gatewayIR[8] = {"sensor", "gatewayIR", "", "","{{ value_json.value }}","", "", ""}; //component type,name,availability topic,device class,value template,payload on, payload off, unit of measurement @@ -306,7 +306,7 @@ void pubMqttDiscovery() #endif #ifdef Zgateway2G - // Sensor to display RF received value + // Sensor to display 2G received value trc(F("gateway2GDiscovery")); char * gateway2G[8] = {"sensor", "gateway2G", "", "","{{ value_json.message }}","", "", ""}; //component type,name,availability topic,device class,value template,payload on, payload off, unit of measurement @@ -321,7 +321,7 @@ void pubMqttDiscovery() #endif #ifdef ZgatewayBT - // Sensor to display RF received value + // Sensor to display BT received value trc(F("gatewayBTDiscovery")); char * gatewayBT[8] = {"sensor", "gatewayBT", "", "","{{ value_json.message }}","", "", ""}; //component type,name,availability topic,device class,value template,payload on, payload off, unit of measurement