Kabellose Temperaturmessung mit MQTT und UDP (für Loxone Haussteuerung und viele weitere)

Beschreibung

Aus einer Idee im April 2026 ist ein vollwertiges und nützliches Projekt entstanden. Anfangs ging es nur um die Aufzeichnung einiger Temperaturwerte meiner Heizung. Ziel war es, die bestehende Gasheizung effektiver, kostengünstiger und mit weniger Unterbrechungen zu betreiben. Verkabelte Sensoren wollte ich unbedingt vermeiden, daher entschied ich mich für Funktechnik.

Schnell war klar: Ein Sensor mit Akkubetrieb kann nicht dauerhaft Kontakt zum bestehenden WLAN/LAN halten. Auch mit recht großen Akkus wären keine vertretbaren Laufzeiten erreichbar. Nach kurzer Recherche fand ich einen Lösungsansatz. Das ESP-NOW-Protokoll nutzt vorhandene WLAN-Module, überträgt Daten innerhalb weniger Millisekunden und kann sehr leicht mit ESP32-Sensorknoten realisiert werden.

Da die Temperaturdaten nur in definierten Zeitabständen benötigt werden, befindet sich der Controller während oft 99,9 % seiner Laufzeit im Deep-Sleep-Modus. Es musste also ein Controller sein, der Akkubetrieb ermöglicht und einen sehr geringen Strombedarf im Deep Sleep aufweist. Der SEEED ESP32-C6 erfüllte genau meine Anforderungen, war günstig und zudem angenehm kompakt. Die vom Hersteller angegebenen 15 µA können in meinen Schaltungsentwürfen problemlos eingehalten werden. Ein kleiner Akku mit 350 mAh erreicht problemlos eine Laufzeit von einem Jahr.

Eine weitere Verlängerung der Laufzeit ist durch den Einsatz eines zusätzlichen programmierbaren Timerbausteins vom Typ TPL5110 möglich. Hier reduziert sich der Schlafstrom auf unter 0,03 µA. Selbst mit einer noch kleineren LiPo-Akkuzelle von 100 mAh kann ich dann bei einem Messintervall von 30 Minuten eine Laufzeit von einem Jahr erreichen.

Das alles funktioniert jedoch nur, wenn ein Gateway existiert, das ununterbrochen auf die kurzen Funksignale der Sensoren wartet und diese anschließend an die jeweiligen Anwendungen weitergibt. Das normale WLAN ist nicht in der Lage, die extrem kurzen, per WLAN übertragenen Temperaturdaten direkt auszuwerten.

…das Gateway (die Zentrale der empfangenen Daten)

Das Gateway hat die Aufgabe, auf die zugefunkten Sensorsignale zu achten und diese nach einem gültigen Empfang an das Zielsystem weiterzuleiten. Meine Zentrale ist eine Kleinsteuerung von Loxone. Jede Loxone kann Daten verarbeiten, die per UDP ankommen. Dafür werden einfach einzurichtende virtuelle UDP-Eingänge angelegt.

Da ich in vielen meiner Projekte das universelle MQTT-Protokoll verwende, habe ich die Software im Gateway auch darauf vorbereitet, die Daten der Sensoren über das MQTT-Protokoll weiterzuleiten. Ich möchte hier nur einige Steuerungen und Systeme nennen, die MQTT verwenden können (Siemens, WAGO, Beckhoff, Phoenix Contact, Schneider, Home Assistant, ioBroker, FHEM, Node-RED, IP-Symcon, Homey, Fibaro, Mosquitto, OpenHAB, ESPHome, Tasmota, Arduino …).

Die Hardware des Gateways muss nicht zusammengelötet werden. Sie besteht aus fertigen M5Stack-Baugruppen. Genutzt werden ein ESP32-Controller und eine PoE-LAN-Netzwerkanbindung. Kann kein PoE verwendet werden, besteht alternativ die Möglichkeit, ein USB-C-Netzteil als Stromversorgung zu nutzen.

Jedes Gateway kann Daten von bis zu 99 Sensoren empfangen und verarbeiten.

Download der fertigen BIN Datei (V1.2.1 Stand 30.09.2026) für das Gateway mit M5Stack ATOM lite ESP32 Controller (ZIP Datei mit 631  Kbyte) 

…die Sensorbaugruppe

Wie schon beschrieben, arbeitet hier als Steuerzentrale ein SEEED ESP32-C6. Die Versorgungsspannung kann bei Bedarf mit einem Timerbaustein vom Typ TPL5110 ein- und ausgeschaltet werden. Im einfachen Betrieb (ohne Timerbaustein) muss man mit einem Schlafstrom von 15 µA rechnen.

Alle Einstellungen werden in einem einfach erreichbaren Konfigurationsmenü per WLAN vorgenommen. Die Deep-Sleep-Zeit kann direkt im Menü in Sekunden angegeben werden. Der Sensor wacht dann in diesem Zeitintervall auf, ermittelt die Temperatur von einem oder zwei Sensoren und versendet diese über das ESP-NOW-Protokoll an das Gateway. Anschließend wechselt er wieder in den Deep-Sleep-Modus mit einem Stromverbrauch von 15 µA.

Werden alle Bauteile einschließlich des Timerbausteins TPL5110 bestückt, schaltet sich der ESP komplett ab. Nur der Stromverbrauch des Timers TPL5110 belastet dann noch den Akku. Dafür sind jedoch kaum messbare 0,03 µA erforderlich.

Die Pausenzeiten richten sich dann allerdings nicht mehr nach den im Konfigurationsmenü eingestellten Zeiten. Ein einziger Widerstand bestimmt den Intervall zwischen Schlaf- und Wachzustand.

Sensordaten nicht nur in Loxone, sondern auch im MQTT Broker

Jeder Sensor wird mit Hilfe des Namens vom MQTT-Topic einzeln angezeigt. Dabei hat jeder Sensor bis zu zwei Temperatursensoren, einen Sendecounter und übermittelt auch die aktuelle Batteriespannung in mV an den MQTT Broker. Im Maximalausbau können 99 Sensoren über ein Gateway verwendet werden.

Bild weiter unten:
Die beiden Sensoren mit den Nummern 2 und 3 sind die kleinen Bauformen mit nur einem DS18B20. Sensor 1 ist mein Funksensor mit zwei per Kabel angeklemmten Sensoren. 

zwei unterschiedliche Temperatursensoren

Bei einem ersten Laufzeittest mit meinem Breadboard-Aufbau konnte ich durch Messungen bei einem Messintervall von 15 Minuten und einer 220-mAh-LiPo-Akkuzelle eine Laufzeit von einem Jahr berechnen und diese anschließend in einem Langzeittest bestätigen.

Die Temperaturmessung erfolgt mit DS18B20-Sensoren. Um eine sehr kurze Wachzeit des ESP32-C6 von lediglich 88 ms zu realisieren, spreche ich die OneWire-Temperatursensoren über ihre individuelle Adresse direkt an. In der Web-Konfiguration können die verwendeten DS18B20-Sensoren ausgelesen und gespeichert werden. Jeder Sensor arbeitet mit maximaler Auflösung und liefert Temperaturwerte mit einer Auflösung von 0,05 °C.

Das kleinere Layout verfügt über einen fest verlöteten Sensor und eine steckbare LiPo-Akkuzelle. Ein zweites Layout ist für zwei DS18B20-Kabelsensoren vorgesehen und verwendet eine LiPo-Rundzelle im AAA-Format. Diese besitzt eine Kapazität von 350 mAh und kann den Temperatursensor ebenfalls deutlich länger als ein Jahr mit Energie versorgen.

Beide Temperatursensoren können den Akku bequem über den USB-C-Anschluss des eingesetzten ESP32-C6 laden. Da auch die Akkuspannung an Loxone übertragen wird, ist eine Überwachung des Ladezustands jederzeit möglich. Erreicht der Akku einen definierten unteren Schwellwert, wird das Sendeintervall automatisch zunächst auf eine Übertragung pro Stunde und später auf eine Übertragung pro Tag reduziert.

Bild vom Musteraufbau über ein Beadboard.

Layout Temperatursensor mit einem integrierten DS18B20

Batteriebetriebener Funk Temperaursensor mit DS18B20 - Loxone Haussteuerung

Auf einer sehr kompakten Leiterplatte befinden sich der SEEED XIAO ESP32-C6, ein DS18B20-Temperatursensor sowie die wenigen weiteren benötigten Bauteile. Der Akku wird über einen JST-2.0-Steckverbinder angeschlossen.

Ursprünglich waren auf der Platine die Lötbrücken X1 bis X6 vorgesehen, um die Sensornummer sowie das Sendeintervall einzustellen. Im Laufe der Entwicklung erhielt jedoch jeder Sensor eine eigene Weboberfläche. Darüber lassen sich nun sämtliche Einstellungen komfortabel mit einem beliebigen Webbrowser konfigurieren und jederzeit ändern. Lötbrücken und Lötkolben werden daher nicht mehr benötigt.

Download der Schaltung vom Temperatursensor mit ESP32C6 als PDF (10Kb)


// 16.05.2026 Jens Dietrich Loxone Sender von Temperaturdaten
// Pin 15 LED ist low active
// D1 als analog Input mit 2,7M + 2,7M um Spannung der Batterie zu messen
// Eine Sendung benötigt etwa 245ms Zeit
// Neuer fester WLAN-Kanal 5

#include <WiFi.h>
#include <esp_now.h>
#include <esp_sleep.h>
#include <OneWire.h>
#include <DallasTemperature.h>

#define SLEEP_TIME 60                              // Sekunden 300 = 5 Minuten
#define LED_PIN    15
#define DEVICE_ID   1                              // Gerätenummer
#define ONE_WIRE_BUS 1                             // Am XIAO mit Pin D1 verwendet

OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
DeviceAddress tempDeviceAddress;

// MAC-Adresse vom Empfänger M5 CoreInk
uint8_t receiverMAC[] = {0x64,0xB7,0x08,0xB8,0xDF,0xFC};

typedef struct {                                   // Datenstruktur (11 Byte)
  uint8_t device;
  uint32_t counter;
  float temperature;
  uint16_t battery;
} SensorData;

SensorData data;

RTC_DATA_ATTR uint32_t bootCount = 0;

void onSent(const wifi_tx_info_t *tx_info, esp_now_send_status_t status)
{
  Serial.print("Sendestatus: ");
  Serial.println(status == ESP_NOW_SEND_SUCCESS ? "OK" : "Fail");
}

void setup() {

  pinMode(LED_PIN , OUTPUT);
  digitalWrite(LED_PIN, LOW);                      // LED ein

  pinMode(A0, INPUT);                              // A0 ist ADC-Input

  Serial.begin(115200);

  data.device = DEVICE_ID;                         // Device-ID

  // 1-Wire-Bus für die Temperaturmessung
  sensors.begin();

  sensors.requestTemperatures();

  // Temperatur auf 0.5 Grad runden
  data.temperature =
      round(sensors.getTempCByIndex(0) * 2.0) / 2.0;

  // Counter im nichtflüchtigen Speicher
  bootCount++;
  data.counter = bootCount;

  WiFi.mode(WIFI_STA);
  WiFi.disconnect();

  if (esp_now_init() != ESP_OK) {
    Serial.println("ESP-NOW Init Fehler");
    return;
  }

  // Batteriespannung ermitteln
  uint32_t Vbatt = 0;

  for (int i = 0; i < 16; i++) {
    Vbatt += analogReadMilliVolts(A0);             // 16x lesen
  }

  // Berechnen und kompensieren
  Vbatt = float(2 * Vbatt / 16);

  data.battery = Vbatt;

  esp_now_register_send_cb(onSent);

  esp_now_peer_info_t peerInfo = {};

  memcpy(peerInfo.peer_addr, receiverMAC, 6);

  peerInfo.channel = 5;                            // Fester WLAN-Kanal 5
  peerInfo.encrypt = false;

  esp_now_add_peer(&peerInfo);

  // Versenden
  esp_now_send(receiverMAC,
               (uint8_t *)&data,
               sizeof(data));

  digitalWrite(LED_PIN, HIGH);                     // LED vor Sleep aus

  esp_deep_sleep(SLEEP_TIME * 1000000ULL);
}

void loop() {
}

Layout Temperatursensor für zwei kabelgebundene DS18B20

Batteriebetriebener Funk Temperaursensor für zwei DS18B20 Kabelsensoren - Loxone Haussteuerung

Bei diesem Layout kommt eine LiPo-Rundzelle im AAA-Format (Baugröße 10440) zum Einsatz, die in einem Batteriehalter untergebracht ist. Diese kompakten Akkuzellen sind mit Kapazitäten ab 350 mAh erhältlich und können direkt auf der Platine über den USB-C-Anschluss geladen werden.

Die beiden DS18B20-Temperatursensoren werden über robuste WAGO-2086-Klemmen angeschlossen, wodurch sich Sensoren und Leitungen einfach austauschen lassen.

Bei Bedarf kann der für die Akkuzelle vorgesehene Teil der Leiterplatte entlang der Trennkante abgetrennt werden. Der Akku wird anschließend über einen JST-2.0-Steckverbinder angeschlossen und kann so auch extern positioniert werden.

Die ursprünglich vorgesehenen Lötbrücken X1 bis X6 zur Einstellung der Sensornummer und des Sendeintervalls werden nicht mehr benötigt. Stattdessen verfügt jeder Sensor über eine integrierte Weboberfläche, über die sämtliche Einstellungen komfortabel mit einem Webbrowser vorgenommen werden können – ganz ohne Lötkolben.

Download der Schaltung Variante 2 vom Temperatursensor mit ESP32C6 als PDF (12Kb) 

ein perfektes (ESP-NOW to UDP) Gateway für die Sensoren

Für die neuen Temperatursensoren habe ich das für mich ideale Gateway gefunden. Es besteht aus dem M5 Atom PoE Base Adapter und einem aufgesteckten M5 Atom Lite (grauer ESP32-Controller). Der ESP32 empfängt alle per ESP-NOW übertragenen Datenpakete und leitet diese anschließend über LAN per UDP an die Loxone-Steuerung weiter.

Zur schnellen Funktionskontrolle signalisiert die integrierte RGB-LED den aktuellen Betriebszustand:

Rot (Dauerlicht): Keine DHCP-Adresse verfügbar.
Gelb: Es wird versucht, über DHCP eine IP-Adresse zu beziehen.
Grün (für 5 Sekunden): Der Konfigurationsmodus kann jetzt durch Drücken des Tasters gestartet werden.
Grün (kurzes Aufblinken): Ein gültiges ESP-NOW-Paket wurde empfangen und erfolgreich per UDP an die Loxone-Steuerung weitergeleitet.

Die Konfiguration der Netzwerkeinstellungen, wie IP-Adresse und UDP-Port, erfolgt komfortabel über eine integrierte Weboberfläche. Dort können außerdem die für das ESP-NOW-Sensormodul benötigte MAC-Adresse sowie die aktuell installierte Softwareversion angezeigt werden.

Selbstverständlich kann das Gateway auch ohne PoE betrieben werden. In diesem Fall wird der M5 Atom Lite einfach über seinen USB-C-Anschluss mit Spannung versorgt.

Die Einstellungen in der Loxone orientieren sich an den Einstellungen die notwendig sind, um UDP Pakete vom hydrostatischen Füllstandsmesser in die Loxone zu bekommen. Eine Gateway kann aber von bis zu 255 Sensoren Daten bekommen. Weitere virtuelle Eingänge in der Loxone müssen dafür nicht angelegt werden. Mit simplen Boardmitteln (Analogvergleicher, Analogspeicher und Merker) kann die Loxone über die Sensornummer die Sensoren unterscheiden und die Messwerte in passende Marker für eine Weiternutzung verschieben. Im Bild unten habe ich das für zwei unterschiedliche Sensoren realisiert.
Ein Analogvergleicher erkennt das UDP Paket mit der richtigen Sensornumme und speichert die Werte über Analogspeicher ab. Für die Visualisierung und Statistik habe ich dann diese Werte in Merkern abgelegt.
…ein Klick auf das Bild vergrößert die Darstellung. 

Temperatursensor mit ESP32C6 und Nanotimer TLP5110 mit nur 30 nA Strom versorgen 

16.08.2026
Der schon sehr geringe Deep-Sleep Strom von nur 16 µA kann durch eine Schaltungsanpasssung / -erweiterung mit einem kleinen Nano Timer von Texas Instruments noch sehr viel weiter reduziert werden. Aus den 16 µA sind superkleine 0,03 µA geworden. Das weiter unten zu sehende Bild ist kein Fake. Der Nano Timer TLP5110 wird mit einem externen Widerstand programmiert und versorgt den ESP32 Controller über einen P-Mosfet mit Spannung. Die Software signalisiert über einen high Pegel auf einem Portpin, dass alle Aufgaben abgeschlossen sind. Im Anschluss schaltet der TLP5110 den ESP32 Controller wieder komplett ab. Nach der über eine Widerstand programmierbare Intervallzeit wird wieder der ESP Controller wieder neu geweckt und für die nächsten Messung mit Spannung versorgt.
Ich habe eine neue Schaltung bei gleicher Baugröße entwickelt und wahlweise kann man per Lötbrücke festlegen, ob man den extrem geringen Deep Sleep Strom von 30 nA oder den Deep Sleep Strom von 1.23 µA verwenden möchte. Im Letzten Fall wird der DS18B20 dauerhaft aus der Akkuzelle versorgt und verbraucht aus diesem Grund auch einen etwas höheren Strom. Der Vorteil ist aber, dass die Zeit der Verarbeiteung+Messung+Versenden sich um 0,5 sec verringert.

Den wirklich sehr kleinen Strom von 0,00000003 A = 30 nA kann ich kaum noch mit meinen Messgeräten messen.

Download der Schaltung als PDF (26Kb)

Die Schaltung beinhaltet eine Lötbrücke X1. Hier kann man entscheiden, ob der Temperaturfühler DS18B20 dauerhaft (permanent) oder nur zur Laufzeit (no permanent) mit Spannung versorgt wird. Die zweite „no permanent“ Variante ist die Variante mit dem geringsten Deep Sleep Strom von 30nA. Es gibt einen Taster S1, der die Spannung sofort für genau einen Messintervall freigibt. Mit Schalter S2 kann bei Systemstart die Aktivierung des Konfigurationsmenüs (Konfigurationswebseite http://192.168.4.1) angefordert werden. Der Jumper K1 versorgst den ESP32C6 dauerhaft mit Spannung und muss gesetzt werden, wenn der angeschlossene Akku geladen werden soll. R1 hat bei mir einen Wert von 68 Ohm. Er bestimmt den Intervall, wenn der ESP32C6 aufwachen soll. Bei 68 Ohm sind das etwa 15 Minuten. Im Datenblatt vom TLP5110 finden sich andere Widerstandswerte mit den Angaben der daraus resultierenden Weckzeiten.

dynamische UDP Portanpassung und Validierung

29.08.2026
Eine kleine Softwareanpassung wurde am Gateway vorgenommen. Der genutzte UDP Port zur Loxone ist nun dynamisch veränderbar. Ausgehend vom eingestellten UDP Basisport wird nun die Sensornummer addiert. In der Loxone ist das Anlegen der virtuellen Ports sehr viel leichter geworden. Speziell verschaltete Logikelemente in der Loxone sind nicht mehr nötig.
Getestet habe ich auch eine Signalisierung bei zu geringer Akkuspannung der Sensoren. Mit Hilfe der Funktion Validierung kann bei unterschreiten einer einstellbaren Akkuspannung eine Systemmeldung abgesetzt und gezielt angezeigt werden.

Temporäres Test-Gateway zur Datensammlung

Hier ist das aktuell eingesetzte, provisorische Gateway zu sehen. Es empfängt die Funksignale der einzelnen Sensormodule, sammelt die Messdaten und überträgt diese anschließend per UDP zuverlässig an die Loxone Steuerung weiter.

Zum Testen und zur Entwicklung ist das Gateway momentan mit einem besonders energiesparenden E-Paper-Display ausgestattet. Dort werden aktuell beispielhaft die Daten des ersten Sensors angezeigt – darunter die gemessene Temperatur, die Sensornummer, ein Übertragungszähler sowie die Batteriespannung des Sensormoduls. Diese Anzeige erleichtert die Inbetriebnahme, Diagnose und Funktionskontrolle während der Entwicklungsphase erheblich.

Für den späteren Dauerbetrieb ist ein Display jedoch nicht zwingend erforderlich. Das finale Gateway wird kompakter aufgebaut sein und dauerhaft über ein kleines USB-C-Netzteil mit Strom versorgt werden. Dadurch entsteht eine wartungsfreie zentrale Einheit, die unauffällig im Hintergrund arbeitet und sämtliche Sensordaten zuverlässig an die Loxone Haussteuerung weiterleitet.

Loxone - Anschluss von einfachen selbstgebauten Funk Temperatursensoren mit Batteriebetrieb

Analyse des Stromverbrauchs beim Sendevorgang

Das folgende Messbild zeigt den Stromverbrauch des Sensormoduls während eines kompletten Sendevorgangs. Zur Messung wurde in die Plusleitung des Akkus ein 1-Ohm-Shunt-Widerstand integriert. Über den Spannungsabfall an diesem Widerstand kann mit dem Oszilloskop direkt der momentane Stromverlauf aufgezeichnet werden.

Die einzelnen Aktivitätsphasen des Senders wurden im Oszillogramm mit kleinen Zahlen markiert und anschließend energetisch ausgewertet. Daraus ergibt sich der Energiebedarf eines vollständigen Mess- und Übertragungsvorgangs:

AbschnittDauer & SpannungEnergiebedarf
125 ms @ 22 mVca. 0,00015 mAh
220 ms @ 35 mVca. 0,00019 mAh
350 ms @ 22 mVca. 0,00030 mAh
4110 ms @ 25 mVca. 0,00070 mAh
59 ms @ 75 mVca. 0,00019 mAh
60,66 ms @ 500 mVca. 0,00009 mAh
750 ms @ 70 mVca. 0,00100 mAh

Gesamtenergie pro Sendevorgang:
nur 0,002599 mAh

Diese Messung bestätigt, dass der eigentliche Funk- und Messvorgang nur einen sehr kleinen Anteil am Gesamtenergieverbrauch hat — eine entscheidende Voraussetzung für lange Batterielaufzeiten.

Berechnete Laufzeiten mit einem 100 mAh LiPo-Akku

Ausgehend vom gemessenen Energiebedarf ergeben sich folgende theoretische Betriebszeiten:

  • Sendeintervall 1 Minute
    → ca. 23,8 Tage bzw. rund 34.560 Sendungen
    (der durchgeführte Langzeittest hat alle Messungen und Berechnungen bestätigt – siehe Text weiter unten)
  • Sendeintervall 5 Minuten
    → ca. 83 Tage
  • Sendeintervall 15 Minuten
    → ca. 142 Tage

Die Ergebnisse zeigen deutlich, wie stark sich längere Messintervalle auf die Batterielaufzeit auswirken. In Kombination mit intelligenten Sendealgorithmen – beispielsweise einer Übertragung nur bei relevanten Temperaturänderungen – lassen sich Laufzeiten von deutlich über einem Jahr realisieren.

Ergebnisse Laufzeit & Langzeittest

Heute am 10.06.2026 hat der Temperatursensor mit seiner kleinen 100mAh Akkuzelle die berechnete Laufzeit erreicht. Es ist immer wieder schön, wenn sich aufwendige Messungen, Überlegungen und Berechnungen in der Praxis bestätigen. Erwartet wurde bei einem Messintervall von 1 Minuten und einem 100mAh Akku eine Laufzeit von fast 24 Tagen und insgesamt 34560 Messungen. Wie im Bild weiter unten zu sehen ist, wurde diese Marke problemlos erreicht. Der Akku hätte noch weitere Reserven. Er soll aber geschont werden und so werde ich ihn gleich wieder passend aufladen.

Auch wurde heute aus den 3D Modellen / Animationen der beiden Aufbauvarianten echte reale Baugruppen. Auch hier habe ich ein Bild eingestellt.

In der Zwischenzeit ist die Software weitere gereift. Es sind viele Optimierungen bei der Messung eingeflossen, die sehr viel geringere Wachzeiten des ESP32C6 ermöglichen. Die Batterielaufzeit wird sich damit weiter stark steigern lassen.

Mit einem sehr kleinen Softwarekniff konnte die Wachzeit des ESP32C6 von 255ms auf 88ms verkürzt werden. Diese Anpassung verlängert natürlich dramatisch die Batterielaufzeit. 

Besonderheiten des SEEED Studio ESP32C6

Der Controller-Baustein Seeed Studio ESP32-C6 kann über eine LiPo-Zelle mit Spannung versorgt werden und diese auch direkt mit Hilfe des USB-C-Anschlusses laden, doch einen echten Unterspannungsschutz gibt es nicht. Im schlimmsten Fall zieht der ESP32 den Akku so weit leer, dass dieser tiefentladen wird. Als sinnvolle Abhilfe werde ich in der Software den Sendeintervall dynamisch anpassen. Sobald der Akku einen entladenen Zustand erreicht, wird der Sendeintervall zum Akkuschutz schrittweise erhöht (oder: die Sendefrequenz schrittweise reduziert).

Wenn die Spannung des Akkus unter 3,3 Volt sinkt, werde ich nur noch einmal pro Stunde senden.
Bei einer Akkuspannung von kleiner 3,1 Volt nur noch einmal pro 24 Stunden. 

Infos und Historie

25.05.2026 – Der Sensor hat mit Stand jetzt 11981 Einzelsensendungen erreicht und die Batteriespannung vom 100 mAh Akku beträgt 3,884 Volt. 
28.05.2026 – Schaltungen und Layouts erstellt
10.06.2026 – der Testsensor mit der 100mAh Batterie hat die berechnete Laufzeit erreicht, die bestückten Leiterplatten beider Varianten sind fertig
12.06.2026 – durch nur eine weitere kleine Softwareanpassung wird sich die Batterielaufzeit um Faktor 3 verlängern
11.07.2026 – zusätzlicher Akkuschutz durch dynamische Anpassung der Sendefrequenz bei geringer Akkuspannung
24.07.2026 – Gateway über einen ESP32 Lite mit AtomPoE ist fertig – es landen saubere Pakete in der Loxone
28.07.2026 – die Weboberflächen zur Konfiguration sind für die Sensoren und für das ESP-NOW UDP Gatway fertig und funktionieren einwandfrei und spielen Daten in die Loxone
16.08.2026 – Deep Sleep Strom nur noch 0,03µA, neues Layout und Einsatz eines Nano Timers TPL5110
14.09.2026 – das Gateway kann nun auch bei Bedarf alle Daten der Sensoren per MQTT an verschiedenste Steuerungen weitersenden – universeller geht es nicht !
30.09.2026 – drei Temperatursensoren werden im MQTT Broker aufgezeichnet

Stand 14.09.2026 – wird bald weitergeführt