summaryrefslogtreecommitdiff
path: root/platformio
diff options
context:
space:
mode:
authorEvgeny Zinoviev <me@ch1p.io>2023-05-31 09:22:00 +0300
committerEvgeny Zinoviev <me@ch1p.io>2023-06-10 02:07:23 +0300
commitf29e139cbb7e4a4d539cba6e894ef4a6acd312d6 (patch)
tree6246f126325c5c36fb573134a05f2771cd747966 /platformio
parent3e3753d726f8a02d98368f20f77dd9fa739e3d80 (diff)
WIP: big refactoring
Diffstat (limited to 'platformio')
-rw-r--r--platformio/common/libs/main/homekit/main.cpp21
-rw-r--r--platformio/common/libs/main/homekit/main.h4
-rw-r--r--platformio/common/libs/main/library.json2
-rw-r--r--platformio/common/libs/mqtt/homekit/mqtt/module.cpp2
-rw-r--r--platformio/common/libs/mqtt/homekit/mqtt/module.h15
-rw-r--r--platformio/common/libs/mqtt/homekit/mqtt/mqtt.cpp29
-rw-r--r--platformio/common/libs/mqtt/library.json2
-rw-r--r--platformio/common/libs/mqtt_module_diagnostics/homekit/mqtt/module/diagnostics.cpp11
-rw-r--r--platformio/common/libs/mqtt_module_diagnostics/homekit/mqtt/module/diagnostics.h5
-rw-r--r--platformio/common/libs/mqtt_module_diagnostics/library.json4
-rw-r--r--platformio/common/libs/mqtt_module_ota/homekit/mqtt/module/ota.cpp12
-rw-r--r--platformio/common/libs/mqtt_module_ota/homekit/mqtt/module/ota.h7
-rw-r--r--platformio/common/libs/mqtt_module_ota/library.json4
-rw-r--r--platformio/common/libs/mqtt_module_relay/homekit/mqtt/module/relay.cpp27
-rw-r--r--platformio/common/libs/mqtt_module_relay/homekit/mqtt/module/relay.h10
-rw-r--r--platformio/common/libs/mqtt_module_relay/library.json2
-rw-r--r--platformio/common/libs/mqtt_module_temphum/homekit/mqtt/module/temphum.cpp2
-rw-r--r--platformio/common/libs/mqtt_module_temphum/homekit/mqtt/module/temphum.h2
-rw-r--r--platformio/common/libs/mqtt_module_temphum/library.json4
-rw-r--r--platformio/temphum_relayctl/src/main.cpp1
20 files changed, 112 insertions, 54 deletions
diff --git a/platformio/common/libs/main/homekit/main.cpp b/platformio/common/libs/main/homekit/main.cpp
index fd08925..816c764 100644
--- a/platformio/common/libs/main/homekit/main.cpp
+++ b/platformio/common/libs/main/homekit/main.cpp
@@ -6,7 +6,12 @@
namespace homekit::main {
+#ifndef CONFIG_TARGET_ESP01
+#ifndef CONFIG_NO_RECOVERY
enum WorkingMode working_mode = WorkingMode::NORMAL;
+#endif
+#endif
+
static const uint16_t recovery_boot_detection_ms = 2000;
static const uint8_t recovery_boot_delay_ms = 100;
@@ -22,8 +27,10 @@ static StopWatch blinkStopWatch;
#endif
#ifndef CONFIG_TARGET_ESP01
+#ifndef CONFIG_NO_RECOVERY
static DNSServer* dnsServer = nullptr;
#endif
+#endif
static void onWifiConnected(const WiFiEventStationModeGotIP& event);
static void onWifiDisconnected(const WiFiEventStationModeDisconnected& event);
@@ -45,6 +52,7 @@ static void wifiConnect() {
}
#ifndef CONFIG_TARGET_ESP01
+#ifndef CONFIG_NO_RECOVERY
static void wifiHotspot() {
led::mcu_led->on();
@@ -71,13 +79,16 @@ static void waitForRecoveryPress() {
}
}
#endif
+#endif
void setup() {
WiFi.disconnect();
+#ifndef CONFIG_NO_RECOVERY
#ifndef CONFIG_TARGET_ESP01
homekit::main::waitForRecoveryPress();
#endif
+#endif
#ifdef DEBUG
Serial.begin(115200);
@@ -95,6 +106,7 @@ void setup() {
}
#ifndef CONFIG_TARGET_ESP01
+#ifndef CONFIG_NO_RECOVERY
switch (working_mode) {
case WorkingMode::RECOVERY:
wifiHotspot();
@@ -102,19 +114,24 @@ void setup() {
case WorkingMode::NORMAL:
#endif
+#endif
wifiConnectHandler = WiFi.onStationModeGotIP(onWifiConnected);
wifiDisconnectHandler = WiFi.onStationModeDisconnected(onWifiDisconnected);
wifiConnect();
+#ifndef CONFIG_NO_RECOVERY
#ifndef CONFIG_TARGET_ESP01
break;
}
#endif
+#endif
}
void loop(LoopConfig* config) {
+#ifndef CONFIG_NO_RECOVERY
#ifndef CONFIG_TARGET_ESP01
if (working_mode == WorkingMode::NORMAL) {
#endif
+#endif
if (wifi_state == WiFiConnectionState::WAITING) {
PRINT(".");
led::mcu_led->blink(2, 50);
@@ -166,6 +183,7 @@ void loop(LoopConfig* config) {
}
#endif
}
+#ifndef CONFIG_NO_RECOVERY
#ifndef CONFIG_TARGET_ESP01
} else {
if (dnsServer != nullptr)
@@ -176,6 +194,7 @@ void loop(LoopConfig* config) {
httpServer->loop();
}
#endif
+#endif
}
static void onWifiConnected(const WiFiEventStationModeGotIP& event) {
@@ -191,4 +210,4 @@ static void onWifiDisconnected(const WiFiEventStationModeDisconnected& event) {
wifiTimer.once(2, wifiConnect);
}
-} \ No newline at end of file
+}
diff --git a/platformio/common/libs/main/homekit/main.h b/platformio/common/libs/main/homekit/main.h
index a503dd0..78a0695 100644
--- a/platformio/common/libs/main/homekit/main.h
+++ b/platformio/common/libs/main/homekit/main.h
@@ -10,8 +10,10 @@
#include <homekit/config.h>
#include <homekit/logging.h>
#ifndef CONFIG_TARGET_ESP01
+#ifndef CONFIG_NO_RECOVERY
#include <homekit/http_server.h>
#endif
+#endif
#include <homekit/wifi.h>
#include <homekit/mqtt/mqtt.h>
@@ -20,6 +22,7 @@
namespace homekit::main {
#ifndef CONFIG_TARGET_ESP01
+#ifndef CONFIG_NO_RECOVERY
enum class WorkingMode {
RECOVERY, // AP mode, http server with configuration
NORMAL, // MQTT client
@@ -27,6 +30,7 @@ enum class WorkingMode {
extern enum WorkingMode working_mode;
#endif
+#endif
enum class WiFiConnectionState {
WAITING = 0,
diff --git a/platformio/common/libs/main/library.json b/platformio/common/libs/main/library.json
index 04eedab..728d4f8 100644
--- a/platformio/common/libs/main/library.json
+++ b/platformio/common/libs/main/library.json
@@ -1,6 +1,6 @@
{
"name": "homekit_main",
- "version": "1.0.8",
+ "version": "1.0.10",
"build": {
"flags": "-I../../include"
},
diff --git a/platformio/common/libs/mqtt/homekit/mqtt/module.cpp b/platformio/common/libs/mqtt/homekit/mqtt/module.cpp
index e78ff12..0ac7637 100644
--- a/platformio/common/libs/mqtt/homekit/mqtt/module.cpp
+++ b/platformio/common/libs/mqtt/homekit/mqtt/module.cpp
@@ -21,6 +21,6 @@ void MqttModule::handlePayload(Mqtt& mqtt, String& topic, uint16_t packetId, con
void MqttModule::handleOnPublish(uint16_t packetId) {}
-void MqttModule::handleOnDisconnect(espMqttClientTypes::DisconnectReason reason) {}
+void MqttModule::onDisconnect(Mqtt& mqtt, espMqttClientTypes::DisconnectReason reason) {}
}
diff --git a/platformio/common/libs/mqtt/homekit/mqtt/module.h b/platformio/common/libs/mqtt/homekit/mqtt/module.h
index e4a01f8..0a328f3 100644
--- a/platformio/common/libs/mqtt/homekit/mqtt/module.h
+++ b/platformio/common/libs/mqtt/homekit/mqtt/module.h
@@ -28,20 +28,25 @@ public:
, receiveOnPublish(_receiveOnPublish)
, receiveOnDisconnect(_receiveOnDisconnect) {}
- virtual void init(Mqtt& mqtt) = 0;
virtual void tick(Mqtt& mqtt) = 0;
+ virtual void onConnect(Mqtt& mqtt) = 0;
+ virtual void onDisconnect(Mqtt& mqtt, espMqttClientTypes::DisconnectReason reason);
+
virtual void handlePayload(Mqtt& mqtt, String& topic, uint16_t packetId, const uint8_t *payload, size_t length, size_t index, size_t total);
virtual void handleOnPublish(uint16_t packetId);
- virtual void handleOnDisconnect(espMqttClientTypes::DisconnectReason reason);
inline void setInitialized() {
initialized = true;
}
- inline short getTickInterval() {
- return tickInterval;
- }
+ inline void unsetInitialized() {
+ initialized = false;
+ }
+
+ inline short getTickInterval() const {
+ return tickInterval;
+ }
friend class Mqtt;
};
diff --git a/platformio/common/libs/mqtt/homekit/mqtt/mqtt.cpp b/platformio/common/libs/mqtt/homekit/mqtt/mqtt.cpp
index cb2cea7..aa769a5 100644
--- a/platformio/common/libs/mqtt/homekit/mqtt/mqtt.cpp
+++ b/platformio/common/libs/mqtt/homekit/mqtt/mqtt.cpp
@@ -34,7 +34,7 @@ Mqtt::Mqtt() {
for (auto* module: modules) {
if (!module->initialized) {
- module->init(*this);
+ module->onConnect(*this);
module->setInitialized();
}
}
@@ -50,18 +50,13 @@ Mqtt::Mqtt() {
#endif
for (auto* module: modules) {
- if (module->receiveOnDisconnect) {
- module->handleOnDisconnect(reason);
- }
+ module->onDisconnect(*this, reason);
+ module->unsetInitialized();
}
-// if (ota.readyToRestart) {
-// restartTimer.once(1, restart);
-// } else {
- reconnectTimer.once(2, [&]() {
- reconnect();
- });
-// }
+ reconnectTimer.once(2, [&]() {
+ reconnect();
+ });
});
client.onSubscribe([&](uint16_t packetId, const SubscribeReturncode* returncodes, size_t len) {
@@ -79,7 +74,7 @@ Mqtt::Mqtt() {
PRINTF("mqtt: message received, topic=%s, qos=%d, dup=%d, retain=%d, len=%ul, index=%ul, total=%ul\n",
topic, properties.qos, (int)properties.dup, (int)properties.retain, len, index, total);
- const char *ptr = topic + nodeId.length() + 10;
+ const char *ptr = topic + nodeId.length() + 4;
String relevantTopic(ptr);
auto it = moduleSubscriptions.find(relevantTopic);
@@ -87,7 +82,7 @@ Mqtt::Mqtt() {
auto module = it->second;
module->handlePayload(*this, relevantTopic, properties.packetId, payload, len, index, total);
} else {
- PRINTF("error: module subscription for topic %s not found\n", topic);
+ PRINTF("error: module subscription for topic %s not found\n", relevantTopic.c_str());
}
});
@@ -130,8 +125,8 @@ void Mqtt::disconnect() {
void Mqtt::loop() {
client.loop();
for (auto& module: modules) {
- if (module->getTickInterval() != 0)
- module->tick(*this);
+ if (module->getTickInterval() != 0)
+ module->tick(*this);
}
}
@@ -154,14 +149,14 @@ uint16_t Mqtt::subscribe(const String& topic, uint8_t qos) {
void Mqtt::addModule(MqttModule* module) {
modules.emplace_back(module);
if (connected) {
- module->init(*this);
+ module->onConnect(*this);
module->setInitialized();
}
}
void Mqtt::subscribeModule(String& topic, MqttModule* module, uint8_t qos) {
moduleSubscriptions[topic] = module;
- subscribe(topic, qos);
+ subscribe(topic, qos);
}
}
diff --git a/platformio/common/libs/mqtt/library.json b/platformio/common/libs/mqtt/library.json
index d1ad420..f3f2504 100644
--- a/platformio/common/libs/mqtt/library.json
+++ b/platformio/common/libs/mqtt/library.json
@@ -1,6 +1,6 @@
{
"name": "homekit_mqtt",
- "version": "1.0.9",
+ "version": "1.0.11",
"build": {
"flags": "-I../../include"
}
diff --git a/platformio/common/libs/mqtt_module_diagnostics/homekit/mqtt/module/diagnostics.cpp b/platformio/common/libs/mqtt_module_diagnostics/homekit/mqtt/module/diagnostics.cpp
index d36a7e9..e0f797e 100644
--- a/platformio/common/libs/mqtt_module_diagnostics/homekit/mqtt/module/diagnostics.cpp
+++ b/platformio/common/libs/mqtt_module_diagnostics/homekit/mqtt/module/diagnostics.cpp
@@ -7,12 +7,21 @@ namespace homekit::mqtt {
static const char TOPIC_DIAGNOSTICS[] = "diag";
static const char TOPIC_INITIAL_DIAGNOSTICS[] = "d1ag";
-void MqttDiagnosticsModule::init(Mqtt& mqtt) {}
+void MqttDiagnosticsModule::onConnect(Mqtt &mqtt) {
+ sendDiagnostics(mqtt);
+}
+
+void MqttDiagnosticsModule::onDisconnect(Mqtt &mqtt, espMqttClientTypes::DisconnectReason reason) {
+ initialSent = false;
+}
void MqttDiagnosticsModule::tick(Mqtt& mqtt) {
if (!tickElapsed())
return;
+ sendDiagnostics(mqtt);
+}
+void MqttDiagnosticsModule::sendDiagnostics(Mqtt& mqtt) {
auto cfg = config::read();
if (!initialSent) {
diff --git a/platformio/common/libs/mqtt_module_diagnostics/homekit/mqtt/module/diagnostics.h b/platformio/common/libs/mqtt_module_diagnostics/homekit/mqtt/module/diagnostics.h
index 055c179..bb7a81a 100644
--- a/platformio/common/libs/mqtt_module_diagnostics/homekit/mqtt/module/diagnostics.h
+++ b/platformio/common/libs/mqtt_module_diagnostics/homekit/mqtt/module/diagnostics.h
@@ -32,12 +32,15 @@ class MqttDiagnosticsModule: public MqttModule {
private:
bool initialSent;
+ void sendDiagnostics(Mqtt& mqtt);
+
public:
MqttDiagnosticsModule()
: MqttModule(30)
, initialSent(false) {}
- void init(Mqtt& mqtt) override;
+ void onConnect(Mqtt& mqtt) override;
+ void onDisconnect(Mqtt& mqtt, espMqttClientTypes::DisconnectReason reason) override;
void tick(Mqtt& mqtt) override;
};
diff --git a/platformio/common/libs/mqtt_module_diagnostics/library.json b/platformio/common/libs/mqtt_module_diagnostics/library.json
index 8df306d..a3d3244 100644
--- a/platformio/common/libs/mqtt_module_diagnostics/library.json
+++ b/platformio/common/libs/mqtt_module_diagnostics/library.json
@@ -1,10 +1,10 @@
{
"name": "homekit_mqtt_module_diagnostics",
- "version": "1.0.1",
+ "version": "1.0.2",
"build": {
"flags": "-I../../include"
},
"dependencies": {
- "homekit_mqtt": "file://../common/libs/mqtt"
+ "homekit_mqtt": "file://../common/libs/mqtt"
}
}
diff --git a/platformio/common/libs/mqtt_module_ota/homekit/mqtt/module/ota.cpp b/platformio/common/libs/mqtt_module_ota/homekit/mqtt/module/ota.cpp
index 2f5f814..4e976cd 100644
--- a/platformio/common/libs/mqtt_module_ota/homekit/mqtt/module/ota.cpp
+++ b/platformio/common/libs/mqtt_module_ota/homekit/mqtt/module/ota.cpp
@@ -12,7 +12,7 @@ using homekit::led::mcu_led;
static const char TOPIC_OTA[] = "ota";
static const char TOPIC_OTA_RESPONSE[] = "otares";
-void MqttOtaModule::init(Mqtt& mqtt) {
+void MqttOtaModule::onConnect(Mqtt& mqtt) {
String topic(TOPIC_OTA);
mqtt.subscribeModule(topic, this);
}
@@ -140,17 +140,15 @@ uint16_t MqttOtaModule::sendResponse(Mqtt& mqtt, OtaResult status, uint8_t error
return mqtt.publish(TOPIC_OTA_RESPONSE, reinterpret_cast<uint8_t*>(&resp), sizeof(resp));
}
-void MqttOtaModule::handleOnDisconnect(espMqttClientTypes::DisconnectReason reason) {
- if (ota.started()) {
+void MqttOtaModule::onDisconnect(Mqtt& mqtt, espMqttClientTypes::DisconnectReason reason) {
+ if (ota.readyToRestart) {
+ restartTimer.once(1, restart);
+ } else if (ota.started()) {
PRINTLN("mqtt: update was in progress, canceling..");
ota.clean();
Update.end();
Update.clearError();
}
-
- if (ota.readyToRestart) {
- restartTimer.once(1, restart);
- }
}
void MqttOtaModule::handleOnPublish(uint16_t packetId) {
diff --git a/platformio/common/libs/mqtt_module_ota/homekit/mqtt/module/ota.h b/platformio/common/libs/mqtt_module_ota/homekit/mqtt/module/ota.h
index 53613c3..df4f7ce 100644
--- a/platformio/common/libs/mqtt_module_ota/homekit/mqtt/module/ota.h
+++ b/platformio/common/libs/mqtt_module_ota/homekit/mqtt/module/ota.h
@@ -57,11 +57,14 @@ private:
public:
MqttOtaModule() : MqttModule(0, true, true) {}
- void init(Mqtt& mqtt) override;
+ void onConnect(Mqtt& mqtt) override;
+ void onDisconnect(Mqtt& mqtt, espMqttClientTypes::DisconnectReason reason) override;
+
void tick(Mqtt& mqtt) override;
+
void handlePayload(Mqtt& mqtt, String& topic, uint16_t packetId, const uint8_t *payload, size_t length, size_t index, size_t total) override;
void handleOnPublish(uint16_t packetId) override;
- void handleOnDisconnect(espMqttClientTypes::DisconnectReason reason) override;
+
inline bool isReadyToRestart() const {
return ota.readyToRestart;
}
diff --git a/platformio/common/libs/mqtt_module_ota/library.json b/platformio/common/libs/mqtt_module_ota/library.json
index 30db7d2..4f40a47 100644
--- a/platformio/common/libs/mqtt_module_ota/library.json
+++ b/platformio/common/libs/mqtt_module_ota/library.json
@@ -1,11 +1,11 @@
{
"name": "homekit_mqtt_module_ota",
- "version": "1.0.2",
+ "version": "1.0.5",
"build": {
"flags": "-I../../include"
},
"dependencies": {
"homekit_led": "file://../common/libs/led",
- "homekit_mqtt": "file://../common/libs/mqtt"
+ "homekit_mqtt": "file://../common/libs/mqtt"
}
}
diff --git a/platformio/common/libs/mqtt_module_relay/homekit/mqtt/module/relay.cpp b/platformio/common/libs/mqtt_module_relay/homekit/mqtt/module/relay.cpp
index ab40727..90c57f9 100644
--- a/platformio/common/libs/mqtt_module_relay/homekit/mqtt/module/relay.cpp
+++ b/platformio/common/libs/mqtt_module_relay/homekit/mqtt/module/relay.cpp
@@ -5,19 +5,28 @@
namespace homekit::mqtt {
static const char TOPIC_RELAY_SWITCH[] = "relay/switch";
+static const char TOPIC_RELAY_STATUS[] = "relay/status";
-void MqttRelayModule::init(Mqtt &mqtt) {
- String topic(TOPIC_RELAY_SWITCH);
- mqtt.subscribeModule(topic, this, 1);
+void MqttRelayModule::onConnect(Mqtt &mqtt) {
+ String topic(TOPIC_RELAY_SWITCH);
+ mqtt.subscribeModule(topic, this, 1);
+}
+
+void MqttRelayModule::onDisconnect(Mqtt &mqtt, espMqttClientTypes::DisconnectReason reason) {
+#ifdef CONFIG_RELAY_OFF_ON_DISCONNECT
+ if (relay::state()) {
+ relay::off();
+ }
+#endif
}
void MqttRelayModule::tick(homekit::mqtt::Mqtt& mqtt) {}
void MqttRelayModule::handlePayload(Mqtt& mqtt, String& topic, uint16_t packetId, const uint8_t *payload, size_t length, size_t index, size_t total) {
- if (topic != TOPIC_RELAY_SWITCH)
- return;
+ if (topic != TOPIC_RELAY_SWITCH)
+ return;
- if (length != sizeof(MqttRelaySwitchPayload)) {
+ if (length != sizeof(MqttRelaySwitchPayload)) {
PRINTF("error: size of payload (%ul) does not match expected (%ul)\n",
length, sizeof(MqttRelaySwitchPayload));
return;
@@ -29,6 +38,8 @@ void MqttRelayModule::handlePayload(Mqtt& mqtt, String& topic, uint16_t packetId
return;
}
+ MqttRelayStatusPayload resp{};
+
if (pd->state == 1) {
PRINTLN("mqtt: turning relay on");
relay::on();
@@ -38,6 +49,10 @@ void MqttRelayModule::handlePayload(Mqtt& mqtt, String& topic, uint16_t packetId
} else {
PRINTLN("error: unexpected state value");
}
+
+ resp.opened = relay::state();
+ mqtt.publish(TOPIC_RELAY_STATUS, reinterpret_cast<uint8_t*>(&resp), sizeof(resp));
}
}
+
diff --git a/platformio/common/libs/mqtt_module_relay/homekit/mqtt/module/relay.h b/platformio/common/libs/mqtt_module_relay/homekit/mqtt/module/relay.h
index 6420de1..e245527 100644
--- a/platformio/common/libs/mqtt_module_relay/homekit/mqtt/module/relay.h
+++ b/platformio/common/libs/mqtt_module_relay/homekit/mqtt/module/relay.h
@@ -10,14 +10,20 @@ struct MqttRelaySwitchPayload {
uint8_t state;
} __attribute__((packed));
+struct MqttRelayStatusPayload {
+ uint8_t opened;
+} __attribute__((packed));
+
class MqttRelayModule : public MqttModule {
public:
MqttRelayModule() : MqttModule(0) {}
- void init(Mqtt& mqtt) override;
+ void onConnect(Mqtt& mqtt) override;
+ void onDisconnect(Mqtt& mqtt, espMqttClientTypes::DisconnectReason reason) override;
void tick(Mqtt& mqtt) override;
- void handlePayload(Mqtt& mqtt, String& topic, uint16_t packetId, const uint8_t *payload, size_t length, size_t index, size_t total) override;
+ void handlePayload(Mqtt& mqtt, String& topic, uint16_t packetId, const uint8_t *payload, size_t length, size_t index, size_t total) override;
};
}
#endif //HOMEKIT_LIB_MQTT_MODULE_RELAY_H
+
diff --git a/platformio/common/libs/mqtt_module_relay/library.json b/platformio/common/libs/mqtt_module_relay/library.json
index e71cf95..6cbbfb0 100644
--- a/platformio/common/libs/mqtt_module_relay/library.json
+++ b/platformio/common/libs/mqtt_module_relay/library.json
@@ -1,6 +1,6 @@
{
"name": "homekit_mqtt_module_relay",
- "version": "1.0.3",
+ "version": "1.0.5",
"build": {
"flags": "-I../../include"
},
diff --git a/platformio/common/libs/mqtt_module_temphum/homekit/mqtt/module/temphum.cpp b/platformio/common/libs/mqtt_module_temphum/homekit/mqtt/module/temphum.cpp
index 82f1d74..409f38f 100644
--- a/platformio/common/libs/mqtt_module_temphum/homekit/mqtt/module/temphum.cpp
+++ b/platformio/common/libs/mqtt_module_temphum/homekit/mqtt/module/temphum.cpp
@@ -4,7 +4,7 @@ namespace homekit::mqtt {
static const char TOPIC_TEMPHUM_DATA[] = "temphum/data";
-void MqttTemphumModule::init(Mqtt &mqtt) {}
+void MqttTemphumModule::onConnect(Mqtt &mqtt) {}
void MqttTemphumModule::tick(homekit::mqtt::Mqtt& mqtt) {
if (!tickElapsed())
diff --git a/platformio/common/libs/mqtt_module_temphum/homekit/mqtt/module/temphum.h b/platformio/common/libs/mqtt_module_temphum/homekit/mqtt/module/temphum.h
index 5c41cef..7b28afc 100644
--- a/platformio/common/libs/mqtt_module_temphum/homekit/mqtt/module/temphum.h
+++ b/platformio/common/libs/mqtt_module_temphum/homekit/mqtt/module/temphum.h
@@ -19,7 +19,7 @@ private:
public:
MqttTemphumModule(temphum::Sensor* _sensor) : MqttModule(10), sensor(_sensor) {}
- void init(Mqtt& mqtt) override;
+ void onConnect(Mqtt& mqtt) override;
void tick(Mqtt& mqtt) override;
};
diff --git a/platformio/common/libs/mqtt_module_temphum/library.json b/platformio/common/libs/mqtt_module_temphum/library.json
index 9bb8cf1..068debd 100644
--- a/platformio/common/libs/mqtt_module_temphum/library.json
+++ b/platformio/common/libs/mqtt_module_temphum/library.json
@@ -1,11 +1,11 @@
{
"name": "homekit_mqtt_module_temphum",
- "version": "1.0.9",
+ "version": "1.0.10",
"build": {
"flags": "-I../../include"
},
"dependencies": {
- "homekit_mqtt": "file://../common/libs/mqtt",
+ "homekit_mqtt": "file://../common/libs/mqtt",
"homekit_temphum": "file://../common/libs/temphum"
}
}
diff --git a/platformio/temphum_relayctl/src/main.cpp b/platformio/temphum_relayctl/src/main.cpp
index 0b05316..7f0945e 100644
--- a/platformio/temphum_relayctl/src/main.cpp
+++ b/platformio/temphum_relayctl/src/main.cpp
@@ -27,6 +27,7 @@ void setup() {
main::setup();
relay::init();
+ relay::off();
#if CONFIG_MODULE == HOMEKIT_SI7021
sensor = new temphum::Si7021();