don't publish dallas if there are none

This commit is contained in:
proddy
2021-04-21 20:37:45 +02:00
parent a633225ad2
commit 8ea48f7c81
4 changed files with 33 additions and 12 deletions

View File

@@ -68,6 +68,10 @@ class DallasSensor {
return sensorfails_;
}
bool dallas_enabled() {
return (dallas_gpio_ != 0);
}
private:
static constexpr uint8_t MAX_SENSORS = 20;

View File

@@ -511,6 +511,10 @@ void EMSESP::publish_other_values() {
}
void EMSESP::publish_sensor_values(const bool time, const bool force) {
if (!dallas_enabled()) {
return;
}
if (dallassensor_.updated_values() || time || force) {
dallassensor_.publish_values(force);
}

View File

@@ -128,6 +128,10 @@ class EMSESP {
return dallassensor_.fails();
}
static bool dallas_enabled() {
return (dallassensor_.dallas_enabled());
}
enum Watch : uint8_t { WATCH_OFF, WATCH_ON, WATCH_RAW, WATCH_UNKNOWN };
static void watch_id(uint16_t id);
static uint16_t watch_id() {

View File

@@ -448,13 +448,18 @@ void System::send_heartbeat() {
}
doc["uptime"] = uuid::log::format_timestamp_ms(uuid::get_uptime_ms(), 3);
doc["uptime_sec"] = uuid::get_uptime_sec();
doc["mqttfails"] = Mqtt::publish_fails();
doc["rxreceived"] = EMSESP::rxservice_.telegram_count();
doc["rxfails"] = EMSESP::rxservice_.telegram_error_count();
doc["txread"] = EMSESP::txservice_.telegram_read_count();
doc["txwrite"] = EMSESP::txservice_.telegram_write_count();
doc["txfails"] = EMSESP::txservice_.telegram_fail_count();
if (Mqtt::enabled()) {
doc["mqttfails"] = Mqtt::publish_fails();
}
if (EMSESP::dallas_enabled()) {
doc["dallasfails"] = EMSESP::sensor_fails();
}
#ifndef EMSESP_STANDALONE
doc["freemem"] = ESP.getFreeHeap();
#endif
@@ -878,10 +883,14 @@ bool System::command_info(const char * value, const int8_t id, JsonObject & json
node["#tx fails"] = EMSESP::txservice_.telegram_fail_count();
node["rx line quality"] = EMSESP::rxservice_.quality();
node["tx line quality"] = EMSESP::txservice_.quality();
if (Mqtt::enabled()) {
node["#MQTT publish fails"] = Mqtt::publish_fails();
}
if (EMSESP::dallas_enabled()) {
node["#dallas sensors"] = EMSESP::sensor_devices().size();
node["#dallas fails"] = EMSESP::sensor_fails();
}
}
JsonArray devices2 = json.createNestedArray("Devices");