[BT] InUse updates for DT24 (#1553)

This commit is contained in:
Northern Man authored and GitHub committed 2023-03-20 07:38:55 -05:00
1 parent 7c4c90d777
commit d2470288e5
3 files changed
+78 -75

No files matched your search

+3 -2
View File
@@ -501,7 +501,7 @@ void strupp(char* beg) {
# ifdef ZmqttDiscovery # ifdef ZmqttDiscovery
void DT24Discovery(const char* mac, const char* sensorModel_id) { void DT24Discovery(const char* mac, const char* sensorModel_id) {
# define DT24parametersCount 6 # define DT24parametersCount 7
Log.trace(F("DT24Discovery" CR)); Log.trace(F("DT24Discovery" CR));
const char* DT24sensor[DT24parametersCount][9] = { const char* DT24sensor[DT24parametersCount][9] = {
{"sensor", "volt", mac, "voltage", jsonVolt, "", "", "V", stateClassMeasurement}, {"sensor", "volt", mac, "voltage", jsonVolt, "", "", "V", stateClassMeasurement},
@@ -509,7 +509,8 @@ void DT24Discovery(const char* mac, const char* sensorModel_id) {
{"sensor", "watt", mac, "power", jsonPower, "", "", "W", stateClassMeasurement}, {"sensor", "watt", mac, "power", jsonPower, "", "", "W", stateClassMeasurement},
{"sensor", "watt-hour", mac, "power", jsonEnergy, "", "", "kWh", stateClassMeasurement}, {"sensor", "watt-hour", mac, "power", jsonEnergy, "", "", "kWh", stateClassMeasurement},
{"sensor", "price", mac, "", jsonMsg, "", "", "", stateClassNone}, {"sensor", "price", mac, "", jsonMsg, "", "", "", stateClassNone},
{"sensor", "temp", mac, "temperature", jsonTempc, "", "", "°C", stateClassMeasurement} {"sensor", "temp", mac, "temperature", jsonTempc, "", "", "°C", stateClassMeasurement},
{"binary_sensor", "inUse", mac, "power", jsonInuse, "", "", ""}
//component type,name,availability topic,device class,value template,payload on, payload off, unit of measurement //component type,name,availability topic,device class,value template,payload on, payload off, unit of measurement
}; };
+1 -1
View File
@@ -897,7 +897,7 @@ void pubMqttDiscovery() {
{"sensor", "volt", "RN8209", "voltage", jsonVolt, "", "", "V"}, {"sensor", "volt", "RN8209", "voltage", jsonVolt, "", "", "V"},
{"sensor", "current", "RN8209", "current", jsonCurrent, "", "", "A"}, {"sensor", "current", "RN8209", "current", jsonCurrent, "", "", "A"},
{"sensor", "power", "RN8209", "power", jsonPower, "", "", "W"}, {"sensor", "power", "RN8209", "power", jsonPower, "", "", "W"},
{"binary_sensor", "inUse", "RN8209", "power", jsonInuse, "", "", ""} {"binary_sensor", "inUse", "RN8209", "power", jsonInuseRN8209, "", "", ""}
//component type,name,availability topic,device class,value template,payload on, payload off, unit of measurement //component type,name,availability topic,device class,value template,payload on, payload off, unit of measurement
}; };
+74 -72
View File
@@ -136,79 +136,81 @@ void announceDeviceTrigger(bool use_gateway_info,
#endif #endif
#if OpenHABDiscovery // OpenHAB autodiscovery value key definition (is defined command is not supported by OpenHAB) #if OpenHABDiscovery // OpenHAB autodiscovery value key definition (is defined command is not supported by OpenHAB)
# define jsonBatt "{{ value_json.batt }}" # define jsonBatt "{{ value_json.batt }}"
# define jsonLux "{{ value_json.lux }}" # define jsonLux "{{ value_json.lux }}"
# define jsonPres "{{ value_json.pres }}" # define jsonPres "{{ value_json.pres }}"
# define jsonFer "{{ value_json.fer }}" # define jsonFer "{{ value_json.fer }}"
# define jsonFor "{{ value_json.for }}" # define jsonFor "{{ value_json.for }}"
# define jsonMoi "{{ value_json.moi }}" # define jsonMoi "{{ value_json.moi }}"
# define jsonHum "{{ value_json.hum }}" # define jsonHum "{{ value_json.hum }}"
# define jsonStep "{{ value_json.steps }}" # define jsonStep "{{ value_json.steps }}"
# define jsonWeight "{{ value_json.weight }}" # define jsonWeight "{{ value_json.weight }}"
# define jsonPresence "{{ value_json.presence }}" # define jsonPresence "{{ value_json.presence }}"
# define jsonAltim "{{ value_json.altim }}" # define jsonAltim "{{ value_json.altim }}"
# define jsonAltif "{{ value_json.altift }}" # define jsonAltif "{{ value_json.altift }}"
# define jsonTempc "{{ value_json.tempc }}" # define jsonTempc "{{ value_json.tempc }}"
# define jsonTempc2 "{{ value_json.tempc2 }}" # define jsonTempc2 "{{ value_json.tempc2 }}"
# define jsonTempc3 "{{ value_json.tempc3 }}" # define jsonTempc3 "{{ value_json.tempc3 }}"
# define jsonTempc4 "{{ value_json.tempc4 }}" # define jsonTempc4 "{{ value_json.tempc4 }}"
# define jsonTempf "{{ value_json.tempf }}" # define jsonTempf "{{ value_json.tempf }}"
# define jsonMsg "{{ value_json.message }}" # define jsonMsg "{{ value_json.message }}"
# define jsonVal "{{ value_json.value }}" # define jsonVal "{{ value_json.value }}"
# define jsonVolt "{{ value_json.volt }}" # define jsonVolt "{{ value_json.volt }}"
# define jsonCurrent "{{ value_json.current }}" # define jsonCurrent "{{ value_json.current }}"
# define jsonPower "{{ value_json.power }}" # define jsonPower "{{ value_json.power }}"
# define jsonEnergy "{{ value_json.energy }}" # define jsonEnergy "{{ value_json.energy }}"
# define jsonGpio "{{ value_json.gpio }}" # define jsonGpio "{{ value_json.gpio }}"
# define jsonFtcd "{{ value_json.ftcd }}" # define jsonFtcd "{{ value_json.ftcd }}"
# define jsonWm2 "{{ value_json.wattsm2 }}" # define jsonWm2 "{{ value_json.wattsm2 }}"
# define jsonAdc "{{ value_json.adc }}" # define jsonAdc "{{ value_json.adc }}"
# define jsonPa "{{ float(value_json.pa) * 0.01 }}" # define jsonPa "{{ float(value_json.pa) * 0.01 }}"
# define jsonId "{{ value_json.id }}" # define jsonId "{{ value_json.id }}"
# define jsonAddress "{{ value_json.address }}" # define jsonAddress "{{ value_json.address }}"
# define jsonOpen "{{ value_json.open }}" # define jsonOpen "{{ value_json.open }}"
# define jsonTime "{{ value_json.time }}" # define jsonTime "{{ value_json.time }}"
# define jsonCount "{{ value_json.count }}" # define jsonCount "{{ value_json.count }}"
# define jsonAlarm "{{ value_json.alarm }}" # define jsonAlarm "{{ value_json.alarm }}"
# define jsonInuse "{{ value_json.power | float > 0 }}" # define jsonInuse "{{ value_json.power | float > 0 }}"
# define jsonVoltBM2 "{{% if value_json.model_id == \"BM2\" -%} {{value_json.volt}} {%- endif %}}" # define jsonInuseRN8209 "{{ value_json.power | float > 0.02 }}"
# define jsonVoltBM2 "{{% if value_json.model_id == \"BM2\" -%} {{value_json.volt}} {%- endif %}}"
#else // Home assistant autodiscovery value key definition #else // Home assistant autodiscovery value key definition
# define jsonBatt "{{ value_json.batt | is_defined }}" # define jsonBatt "{{ value_json.batt | is_defined }}"
# define jsonLux "{{ value_json.lux | is_defined }}" # define jsonLux "{{ value_json.lux | is_defined }}"
# define jsonPres "{{ value_json.pres | is_defined }}" # define jsonPres "{{ value_json.pres | is_defined }}"
# define jsonFer "{{ value_json.fer | is_defined }}" # define jsonFer "{{ value_json.fer | is_defined }}"
# define jsonFor "{{ value_json.for | is_defined }}" # define jsonFor "{{ value_json.for | is_defined }}"
# define jsonMoi "{{ value_json.moi | is_defined }}" # define jsonMoi "{{ value_json.moi | is_defined }}"
# define jsonHum "{{ value_json.hum | is_defined }}" # define jsonHum "{{ value_json.hum | is_defined }}"
# define jsonStep "{{ value_json.steps | is_defined }}" # define jsonStep "{{ value_json.steps | is_defined }}"
# define jsonWeight "{{ value_json.weight | is_defined }}" # define jsonWeight "{{ value_json.weight | is_defined }}"
# define jsonPresence "{{ value_json.presence | is_defined }}" # define jsonPresence "{{ value_json.presence | is_defined }}"
# define jsonAltim "{{ value_json.altim | is_defined }}" # define jsonAltim "{{ value_json.altim | is_defined }}"
# define jsonAltif "{{ value_json.altift | is_defined }}" # define jsonAltif "{{ value_json.altift | is_defined }}"
# define jsonTempc "{{ value_json.tempc | is_defined }}" # define jsonTempc "{{ value_json.tempc | is_defined }}"
# define jsonTempc2 "{{ value_json.tempc2 | is_defined }}" # define jsonTempc2 "{{ value_json.tempc2 | is_defined }}"
# define jsonTempc3 "{{ value_json.tempc3 | is_defined }}" # define jsonTempc3 "{{ value_json.tempc3 | is_defined }}"
# define jsonTempc4 "{{ value_json.tempc4 | is_defined }}" # define jsonTempc4 "{{ value_json.tempc4 | is_defined }}"
# define jsonTempf "{{ value_json.tempf | is_defined }}" # define jsonTempf "{{ value_json.tempf | is_defined }}"
# define jsonMsg "{{ value_json.message | is_defined }}" # define jsonMsg "{{ value_json.message | is_defined }}"
# define jsonVal "{{ value_json.value | is_defined }}" # define jsonVal "{{ value_json.value | is_defined }}"
# define jsonVolt "{{ value_json.volt | is_defined }}" # define jsonVolt "{{ value_json.volt | is_defined }}"
# define jsonCurrent "{{ value_json.current | is_defined }}" # define jsonCurrent "{{ value_json.current | is_defined }}"
# define jsonPower "{{ value_json.power | is_defined }}" # define jsonPower "{{ value_json.power | is_defined }}"
# define jsonEnergy "{{ value_json.energy | is_defined }}" # define jsonEnergy "{{ value_json.energy | is_defined }}"
# define jsonGpio "{{ value_json.gpio | is_defined }}" # define jsonGpio "{{ value_json.gpio | is_defined }}"
# define jsonFtcd "{{ value_json.ftcd | is_defined }}" # define jsonFtcd "{{ value_json.ftcd | is_defined }}"
# define jsonWm2 "{{ value_json.wattsm2 | is_defined }}" # define jsonWm2 "{{ value_json.wattsm2 | is_defined }}"
# define jsonAdc "{{ value_json.adc | is_defined }}" # define jsonAdc "{{ value_json.adc | is_defined }}"
# define jsonPa "{{ float(value_json.pa) * 0.01 | is_defined }}" # define jsonPa "{{ float(value_json.pa) * 0.01 | is_defined }}"
# define jsonId "{{ value_json.id | is_defined }}" # define jsonId "{{ value_json.id | is_defined }}"
# define jsonAddress "{{ value_json.address | is_defined }}" # define jsonAddress "{{ value_json.address | is_defined }}"
# define jsonOpen "{{ value_json.open | is_defined }}" # define jsonOpen "{{ value_json.open | is_defined }}"
# define jsonTime "{{ value_json.time | is_defined }}" # define jsonTime "{{ value_json.time | is_defined }}"
# define jsonCount "{{ value_json.count | is_defined }}" # define jsonCount "{{ value_json.count | is_defined }}"
# define jsonAlarm "{{ value_json.alarm | is_defined }}" # define jsonAlarm "{{ value_json.alarm | is_defined }}"
# define jsonInuse "{{ value_json.power | is_defined | float > 0 }}" # define jsonInuse "{{ value_json.power | is_defined | float > 0 }}"
# define jsonVoltBM2 "{{% if value_json.model_id == \"BM2\" and value_json.volt is defined -%} {{value_json.volt}} {%- endif %}}" # define jsonInuseRN8209 "{{ value_json.power | is_defined | float > 0.02 }}"
# define jsonVoltBM2 "{{% if value_json.model_id == \"BM2\" and value_json.volt is defined -%} {{value_json.volt}} {%- endif %}}"
#endif #endif
#define stateClassNone "" #define stateClassNone ""