From 38df5d00c4624bde4c483c0f834e262c1dd61cfa Mon Sep 17 00:00:00 2001 From: "Dustin C. Hatch" Date: Mon, 16 May 2022 20:45:44 -0500 Subject: [PATCH] values: Include boot count in state messages This should be useful for diagnostic purposes. It's not brought out into a proper sensor in HA, but it can be seen using the MQTT message viewer in the HA device configuration tool. --- gardensensor.ino | 2 ++ values.cpp | 3 ++- values.hpp | 1 + 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/gardensensor.ino b/gardensensor.ino index df18ccc..333d398 100644 --- a/gardensensor.ino +++ b/gardensensor.ino @@ -52,6 +52,7 @@ void setup() { reboot(); } + values.boot_count = boot_count; if (!values.read(&ss)) { auto msg = "Failed to get sensor values"; Serial.println(msg); @@ -63,6 +64,7 @@ void setup() { Serial.printf(" Temperature: %.02f\n", values.temperature); Serial.printf(" Battery: %.02f\n", values.battery); Serial.printf(" RSSI: %d\n", values.rssi); + Serial.printf(" Boot Count: %d\n", values.boot_count); if (!values.send(&mqtt, TOPIC_STATE)) { Serial.println("Failed to send sensor values"); } diff --git a/values.cpp b/values.cpp index 6fa08d7..97ed9ff 100644 --- a/values.cpp +++ b/values.cpp @@ -16,11 +16,12 @@ bool Values::read(Adafruit_seesaw* ss) { } bool Values::send(PubSubClient* mqtt, const char* topic) { - StaticJsonDocument<64> doc; + StaticJsonDocument<96> doc; doc["moisture"] = moisture; doc["temperature"] = round2(temperature); doc["battery_level"] = round2(battery); doc["rssi"] = rssi; + doc["boot_count"] = boot_count; String msg; serializeJson(doc, msg); diff --git a/values.hpp b/values.hpp index f20173d..de871a6 100644 --- a/values.hpp +++ b/values.hpp @@ -7,6 +7,7 @@ class Values { float temperature; float battery; int8_t rssi; + uint32_t boot_count; Values() {}; ~Values() {};