#include #include //-------Wifi infos --------- const char* ssid = ""; const char* password = ""; const int wifiRetryInterval = 500; //-------MQTT infos --------- char* clientId = "Wassermelder1"; const char* mqttServerIp = ""; const int mqttServerPort = 1883; const char* mqttUser = ""; const char* mqttPassword = ""; const int mqttRetryInterval = 2000; const char* topicWassermelder = "esp/wassermelder1"; WiFiClient espClient; PubSubClient mqttClient(espClient); void setup() { initWifi(); initMQTT(); delay(1000); } void loop() { if (!mqttClient.connected()) { initMQTT(); } mqttClient.publish(topicWassermelder, "true"); delay(3000); // ESP in den DeepSleep-Modus setzen ESP.deepSleep(0); delay(100); } void initWifi(){ WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(wifiRetryInterval); } } void initMQTT(){ mqttClient.setServer(mqttServerIp, mqttServerPort); while (!mqttClient.connected()) { if (mqttClient.connect(clientId, mqttUser, mqttPassword )) { } else { delay(mqttRetryInterval); } } }