# MQTT - Kommandos

Da das **ESPAsyncMQTT** (meines Erachtens) nicht sehr zuverlässig arbeitet bzw. mit dem LVGL anscheinedn nicht wirklich klar kommt (macht immer wieder Resets), wird das alte PubSub-Client verwendet.

Es werden auf  **nuccy**  mit Hilfe von **Node-Red** aus den jeweiligen unterschiedlichen Smart-Home-Daten ein eigenes Topic erzeugt. Dieses heißt immer **CYD/** und hat verschiedene Untertopics (die über die Wildcard **#** subscribed werden können).


Das generelle Topic, auf das subscribed und das published wird ist **CYD/**.  
Dahinter gibt 2 Haupt-Topics:  
* **CYD/set/**  
* **CYD/get/**

### set-Topic
Hier werden z Zt. folgende Subtopics verwendet

* **hm/aussen/**  
Es werden die Aussen-Temperatur und die Aussen-Feuchte vom Homatic-Sensor übertragen. Die Payload ist:  
**{"temperature": tttt}**  bzw. **{"humidity:" hhhhh}**  
wobei beide Zahlen Floats sind.

* **dht52/**  
Auch hier werden die Temperatur und die Feuchte, die der Sensor DHT52 mißt und via TTN-Netz weiter leitet, übertragen. Die Payload ist:  
**{"temperature": tttt,"humidity:" hhhhh}**  
Auch hier sind es Float-Zahlen

* **parameter/**  
Hiermit können divere Parameter des Gerätes gesetzt werden. Unterschieden werden sie in der Payload. Im Moment sind folgende Parameter möglich:

  * **{"bmerate":rrr}**  
  Einstellen der Einleserate des BME280-Sensors (in Sekunden).
  * **{"updaterate":rrr}**  
  Einstellen der Updaterate der Grafik (in Sekunden).
  * **{"tempoffset":ttt}**  
  Einstellen des Offset für die Temperatur (in den Gehäuse ist es zu warm)
  * **{"humoffset":hhh}**  Einstellen des Feuchte-Offsets (der BME misst etwas zu wenig)
  
  Alle Wert sind Float-Werte!


### get-Topic
Folgende daten werden aus dem Gerät heraus gesendet:

* **CYD/get/bme280**  
mit der Payload:  
**{"temperature":tttt,"tempmess":ttt,"humidity":hhhh,"hummess":hhh}**  
Wieder mit Float-Zahlen.  Die xxxmess-Werte sind die Werte, die mit dem lokalen BME280 gemessen werden, die anderen beiden sind die auf aktelle Tempteratur und Feuchte umgerechneten Werte (die auf der Anzeige angezeigt werden)


## Versionen

|Version | Datum | Bemerkung |
|--------|-------|---------|
| 1.1| 2024-08-21 | PubSub client, weitere Parameter
|1.0 | 2024-07-22 | erste Version |
