Config Switch in MQTT

Guten Abend!
Ich habe eine ganz einfache Frage:
Wenn ich einen MQTT-Schalter hinzufüge, schaffe ich es nicht, ihn wie einen normalen Schalter am Anfang eines Posts im dedizierten MQTT-Topic zu aktivieren (oder zu deaktivieren).



Wenn ich ihn jedoch über das Dashboard aktiviere (oder deaktiviere), erscheint der Befehl korrekt in MQTT.
Ich habe versucht, « ON » und « 1 » zu posten. Sollte ich etwas anderes versuchen?
Was mache ich falsch?
Ich weiß, das sind zwei Fragen… :wink:
Wenn ich die Option « Dieses Gerät sendet nur Daten » wieder aktiviere, funktioniert es, aber dann kann ich meinen Schalter nicht mehr über das Dashboard steuern.

Hallo!

Lass mich das richtig verstehen, von welcher Marke ist dein Gerät und welche Art von MQTT-Nachricht erwartet es? :slight_smile:

Oder ist deine Suche rein theoretisch?

Tatsächlich merke ich, dass das nicht so ganz klar ist…
Ich spiele mit Tasmota. Letzteres kann einfache, doppelte… fünffache Drücke auf einen Knopf erkennen.
Ich möchte, dass, wenn ich einmal/zwisch auf diesen Knopf drücke, eine Szene ausgeführt wird.
Bisher läuft alles gut.
Ich habe ein Fake-Gerät « Schalter » in mqtt erstellt. Wenn ich mein Tasmota-Gerät auffordere, ein « 1 » (oder « 0 ») auf das dedizierte Topic zu veröffentlichen, wenn ein einfacher/doppelter Druck erfolgt, wird die Szene ausgeführt, da sich der Zustand des Geräts ändert.
Wo es hakt, ist, wenn ich das Kästchen « Dieses Gerät sendet nur Informationen an Gladys » nicht aktiviere (mit dem Ziel, den Schalter vom Gladys-Dashboard aus aktivieren zu können und die Szene ohne Drücken des physischen Knopfes auszuführen), kann ich nicht darauf zugreifen! Kein Ein-/Ausschalten/Wechseln (ich berücksichtige natürlich, dass sich das Topic ändert, wenn man das Kästchen « Dieses Gerät sendet nur… » deaktiviert).
Ich frage mich also, ob ich etwas falsch mache oder ob es nicht möglich ist (ich zweifle daran, da ein Schalter seinen Zustand zurückgeben und darüber vom Dashboard aus gesteuert werden kann).

Warum nicht die Tasmota-Integration verwenden?

Denn sie erkennt meinen einzelnen Schalter nicht (der tatsächlich ein Sonoff RE5VC ist, von dem ich den Schalter vom Relais getrennt habe).
Allgemein mag die Tasmota-Integration keine zusätzlichen, nicht vorgesehenen Funktionen und unterstützt bestimmte DIY-Geräte nicht. Ich habe zum Beispiel einen Wemos D1 mini, der mit einem RC522 (RFID-Scanner) gekoppelt ist. Tasmota verwaltet das allein, aber die Integration in Gladys muss manuell über Regeln und MQTT-Posts erfolgen. Das Gleiche gilt für 433 MHz, Infrarot usw.

Daher muss der Tasmota-Dienst weiterentwickelt werden, um das zu unterstützen, was nativ und kompatibel ist. Ich versuche nur zu verstehen, warum du mit MQTT herumdoktern musst, wenn du ein Tasmota-Gerät hast.

Das wäre tatsächlich ideal und vermutlich nicht so schwierig, da alles gut in den Tasmota-Posts beschrieben ist.
Ein Update des Dienstes wird sicherlich kommen :partying_face:
In der Zwischenzeit verwende ich die Regeln, um Tasmota in MQTT zu veröffentlichen, und das funktioniert sehr gut (abgesehen von dem kleinen Problem, auf das ich stoße) :wink:

Also, was man beachten muss, ist, dass die MQTT-Integration zwei Modi hat:

  • Entweder ist dein Gerät ein Sensor, der Werte über MQTT sendet, also in der Richtung « Sensor → Gladys »
  • Oder du hast einen Aktuator, der auf MQTT-Befehle von Gladys wartet. In der Richtung « Gladys => Aktuator »

Ein Gerät, das beides macht, ergibt keinen Sinn. Hier geht es im Grunde darum, eine kleine Schummelei zu machen, um in der Lage zu sein, ein physisches Gerät virtuell auszulösen, ohne dass das physische Gerät ausgelöst wurde. So eine Art « Überschreibung » des tatsächlichen Wertes.

Was für dich Sinn machen würde, wäre eine Box im Dashboard « Szene auslösen », oder?

Bis es das gibt, da du schummelst, denke ich, dass es eine Möglichkeit gibt, es trotzdem zu tun, es ist nicht verrückt, aber meiner Meinung nach funktioniert es.

  • Setze dein Gerät auf « Dieses Gerät sendet nur Informationen an Gladys ». Kopiere das angezeigte Topic und verwende es in deinem Tasmota
  • Deaktiviere das Kontrollkästchen, damit dein Gerät nicht als Aktuator deklariert wird, was ein anderes MQTT-Topic anzeigen sollte, aber ignoriere es.
  • Das sollte funktionieren :slight_smile: Da das Gerät als Aktuator deklariert ist, solltest du es von der UI aus steuern können. Das Topic, das du in Schritt 1 erhalten hast, sollte weiterhin funktionieren

Ich denke, es funktioniert, aber ich habe es nicht getestet.

Das einzige « Problem » dieses Hacks ist, dass Gladys jede Mal eine MQTT-Nachricht veröffentlicht, wenn du die Szene manuell auslöst, aber das ist egal.

Edit: Ansonsten habe ich eine andere mögliche Option: Erstelle zwei verschiedene Features: eines, das der « virtuelle » Auslöser ist, und eines, das der « physische » Auslöser ist.

Dann legst du in deiner Szene zwei mögliche Auslöser fest, einen auf den virtuellen und einen auf den physischen.

Du bist einfach zu stark!
Nur für den Fall, dass jemand daran zweifelt :wink:

Es funktioniert also! (Ich poste im gegebenen Thema, wenn ich „Nur senden“ ankreuze, aber ich lasse dieses Kästchen deaktiviert)
Das war notwendig für meine Heizung (wieder einmal!) im Fall, dass ich die Programmierung überschreiben (in gutem Franglish) möchte. Denn wenn ich früher gehe oder zurückkomme, bringt es nichts, den Schalter des Heizkessels zu aktivieren, da die Programmierung danach wieder greift! Es musste also ein Fake-Gerät sein, das in einer Szene mit einem Test aktiviert wird…
Auf jeden Fall danke!