NEWS
[gelöst] Senden von Schaltzuständen auf ein Relaisboard
-
Verwendet das auch jemand in Verbindung mit der Smart Grid Funktion?
@homecineplexx :
Ich nicht. -
Verwendet das auch jemand in Verbindung mit der Smart Grid Funktion?
@homecineplexx sagte in Senden von Schaltzuständen auf ein Relaisboard:
Verwendet das auch jemand in Verbindung mit der Smart Grid Funktion?
Dafür wäre ESPAltherma eigentlich vorbereitet (es funktioniert bei mir aber eben nicht über den ioBroker), wobei ich da für mich keinen großen Sinn sehe.
Im Endeffekt möchte ich mit den Relais über des X85A Stecker die verschiedenen Power-Limitations schalten: https://github.com/raomin/ESPAltherma/discussions/170
Dazu müssen aber erst einmal die SG Relais funktionieren, der Rest sollte dann mittels dieser Erweiterung möglich sein: https://github.com/raomin/ESPAltherma/pull/262/files -
@dieterb sagte in Senden von Schaltzuständen auf ein Relaisboard:
Wie kann ich weiter vorgehen?
Versuche mal, den Wert "POWER" unter "cmnd" auf "ON" bzw. "OFF" zu setzen:

Wahrscheinlich musst du unter "cmnd" die States "POWER1" bis POWER4" anlegen, um die Relais einzeln zu schalten.
@marc-berg @Ralf-6
Vielleicht fehlen wirklich die entsprechenden Objekte. Es wundert mich allerdings, dass bei Verwendung des Sonoff Adapters für Anzeigen und Schreiben das gleiche Objekt verwendet wird.
Bei Ändern des Werts mqtt - 1 - ESP_Relay_Board - cmnd - POWER ändert sich nichts (das ist aber auch bei Verwendung des Sonoff Adapers so).Wie würde den der Befehl vom MQTT Explorer aussehen, um das Objekt
mqtt - 1 - ESP_Relay_Board - cmnd - POWERx als state anzulegen?
-
@marc-berg @Ralf-6
Vielleicht fehlen wirklich die entsprechenden Objekte. Es wundert mich allerdings, dass bei Verwendung des Sonoff Adapters für Anzeigen und Schreiben das gleiche Objekt verwendet wird.
Bei Ändern des Werts mqtt - 1 - ESP_Relay_Board - cmnd - POWER ändert sich nichts (das ist aber auch bei Verwendung des Sonoff Adapers so).Wie würde den der Befehl vom MQTT Explorer aussehen, um das Objekt
mqtt - 1 - ESP_Relay_Board - cmnd - POWERx als state anzulegen?
@dieterb sagte in Senden von Schaltzuständen auf ein Relaisboard:
Wie würde den der Befehl vom MQTT Explorer aussehen, um das Objekt
mqtt - 1 - ESP_Relay_Board - cmnd - POWERx als state anzulegen?ESP_Relay_Board/cmnd/POWER1
-
@marc-berg @Ralf-6
Vielleicht fehlen wirklich die entsprechenden Objekte. Es wundert mich allerdings, dass bei Verwendung des Sonoff Adapters für Anzeigen und Schreiben das gleiche Objekt verwendet wird.
Bei Ändern des Werts mqtt - 1 - ESP_Relay_Board - cmnd - POWER ändert sich nichts (das ist aber auch bei Verwendung des Sonoff Adapers so).Wie würde den der Befehl vom MQTT Explorer aussehen, um das Objekt
mqtt - 1 - ESP_Relay_Board - cmnd - POWERx als state anzulegen?
@dieterb :
Auf der Konfigurationsoberfläche meines ESPs der mit ESPEasy geflasht ist, habe ich folgende Einstellungen, abgekupfert aus einer Anleitung, gemacht:

Dabei die beiden Pfade für "Controller Subscribe:" und "Controller Publish:" angepasst.
Aufbauend darauf nach den bereits geschriebenen Anleitung weiter gemacht.
Vermutlich gibt es etwas vergleichbares unter Tasmota. Und so wie es aussieht kennt Marc Berg sich damit aus.Für Tasmota kenn ich die Befehle nicht. Ich besitze nur einen Tasmota der mir den Stromzähler ausließt und dort habe ich nichts zu schalten.
-
Hallo,
ich habe ein ähnliches Problem wie bereits hier beschrieben: https://forum.iobroker.net/post/833948
Da das Thema aber bereits als gelöst markiert ist, habe ich ein neues eröffnet (ist das so richtig?).Ich habe eine Daikin Wärmepumpe von der ich Daten mittels ESPAltherma (https://raomin.github.io/ESPAltherma/) über MQTT auslese.
Diese ESP-Software bietet aber auch die Möglichkeit über den ESP Relais anzusteuern, um damit gewisse Steuerungen in der Wärmepumpe auszulösen.Als Hardware habe ich ein 4 Kanal Relais Board auf ESP8266 Basis. Nachdem das Ansteuern der Relais mit ESPAltherma nicht direkt funktioniert hat, habe ich zuerst die Hardware getestet. Dazu habe ich Tasmota geflashed (https://templates.blakadder.com/ESP12F_Relay_X4.html). Bereits hier hat sich nun gezeigt, dass ich mit dem MQTT Server/Client Adapter die Relais nicht vom ioBroker aus schalten kann. Wechsle ich auf den Sonoff (MQTT) Adapter funktioniert es (für ESPALtherma benötige ich aber den MQTT Adapter).
Ich habe jetzt schon alle möglichen Einstellungen des MQTT Adapters durchprobiert, aber es funktioniert nicht. Ich denke, dass bei ESPAltherma das gleiche Problem das Schalten verhindert.
Hier ein paar screenshots.
- Die Objekte Power1-4 zeigen den richtigen Zustand der Relais an (wenn ich diese über die Tasmota Webseite des Boards ändere). Wenn ich die Werte in ioBroker ändere werden die Zustände aber nicht geändert. Verwende ich den Sonoff Adapter sieht es ähnlich aus, ich kann die Zustände aber auch über den ioBroker schalten.

2 und 3) meine aktuellen MQTT Settings:


Wie kann ich weiter vorgehen?
@dieterb sagte in Senden von Schaltzuständen auf ein Relaisboard:
Dazu habe ich Tasmota geflashed
Welche .bin Version ?
Zu Mqtt, beste Wahl ist hier den Mqtt Adapter auf Port 1883 zu belassen.
Installiere den Sonoff Adapter auf Port 1886 oder 1887 dies ist viel einfacher.Ein Bild von Tasmota Einstellungen GPIO wäre von Vorteil.
- Die Objekte Power1-4 zeigen den richtigen Zustand der Relais an (wenn ich diese über die Tasmota Webseite des Boards ändere). Wenn ich die Werte in ioBroker ändere werden die Zustände aber nicht geändert. Verwende ich den Sonoff Adapter sieht es ähnlich aus, ich kann die Zustände aber auch über den ioBroker schalten.
-
@marc-berg @Ralf-6
Vielleicht fehlen wirklich die entsprechenden Objekte. Es wundert mich allerdings, dass bei Verwendung des Sonoff Adapters für Anzeigen und Schreiben das gleiche Objekt verwendet wird.
Bei Ändern des Werts mqtt - 1 - ESP_Relay_Board - cmnd - POWER ändert sich nichts (das ist aber auch bei Verwendung des Sonoff Adapers so).Wie würde den der Befehl vom MQTT Explorer aussehen, um das Objekt
mqtt - 1 - ESP_Relay_Board - cmnd - POWERx als state anzulegen?
@dieterb sagte in Senden von Schaltzuständen auf ein Relaisboard:
Bei Ändern des Werts mqtt - 1 - ESP_Relay_Board - cmnd - POWER ändert sich nichts (das ist aber auch bei Verwendung des Sonoff Adapers so).
Was ich jetzt erst gesehen habe:

Das kann so nicht funktionieren. Da müsste
mqtt.1.* (statt iobroker.*)
drin stehen, damit die Änderungen auch publiziert werden.
-
nachdem es ja hier um das ESPAltherma Projekt geht.
wie weiß ich denn, welches Altherma-language(***).h File für meine am besten ist?ich hab eine Daikin Altherma 3 H MT F mit Bizone Kit (EPRA12EW1 / ETVH12S23E9W)
danke und lg
-
@dieterb sagte in Senden von Schaltzuständen auf ein Relaisboard:
Wie würde den der Befehl vom MQTT Explorer aussehen, um das Objekt
mqtt - 1 - ESP_Relay_Board - cmnd - POWERx als state anzulegen?ESP_Relay_Board/cmnd/POWER1
@marc-berg sagte in Senden von Schaltzuständen auf ein Relaisboard:
ESP_Relay_Board/cmnd/POWER1
Wenn ich das mache passiert gar nichts, weder in ioBroker noch im MQTT Explorer.
Ist es dabei egal, was im MQTT Explorer rechts oben unter Topic angezeigt wird?
PUBLISH wurde da schon ausgeführt. -
@dieterb sagte in Senden von Schaltzuständen auf ein Relaisboard:
Dazu habe ich Tasmota geflashed
Welche .bin Version ?
Zu Mqtt, beste Wahl ist hier den Mqtt Adapter auf Port 1883 zu belassen.
Installiere den Sonoff Adapter auf Port 1886 oder 1887 dies ist viel einfacher.Ein Bild von Tasmota Einstellungen GPIO wäre von Vorteil.
@ralla66
MQTT.0 ist auf 1883, da laufen mehrere Geräte. Um hier eine Überschneidung zu verhindern, habe ich eine zweite MQTT.1 Instanz installiert (aktuell auf 1886).
Den Sonoff Adapter benötige ich eigentlich nicht, den verwende ich hier nur, um zu sehen, dass die Hardware funktioniert und sich die Relais mittels ioBroker im Prinzip schalten lassen.
Noch einmal zur Erinnerung: das finale Ziel ist ESPAltherma zu flashen. Ich hatte halt gehofft die notwendigen Einstellungen des MQTT Server/Client Adapters, damit auch Relais schaltbar sind, mit Tasmota heraus zu finden. -
@marc-berg sagte in Senden von Schaltzuständen auf ein Relaisboard:
ESP_Relay_Board/cmnd/POWER1
Wenn ich das mache passiert gar nichts, weder in ioBroker noch im MQTT Explorer.
Ist es dabei egal, was im MQTT Explorer rechts oben unter Topic angezeigt wird?
PUBLISH wurde da schon ausgeführt. -
@dieterb sagte in Senden von Schaltzuständen auf ein Relaisboard:
Bei Ändern des Werts mqtt - 1 - ESP_Relay_Board - cmnd - POWER ändert sich nichts (das ist aber auch bei Verwendung des Sonoff Adapers so).
Was ich jetzt erst gesehen habe:

Das kann so nicht funktionieren. Da müsste
mqtt.1.* (statt iobroker.*)
drin stehen, damit die Änderungen auch publiziert werden.
@marc-berg sagte in Senden von Schaltzuständen auf ein Relaisboard:
Das kann so nicht funktionieren. Da müsste
mqtt.1.* (statt iobroker.*)
drin stehen, damit die Änderungen auch publiziert werden.
Hatte ich vorher, damit geht es auch nicht. Irgendwo hatte ich dann die iobroker Einstellung gesehen. Ich habe es jetzt aber wieder auf mqtt.1.* zurück gesetzt (ohne Erfolg)
-
nachdem es ja hier um das ESPAltherma Projekt geht.
wie weiß ich denn, welches Altherma-language(***).h File für meine am besten ist?ich hab eine Daikin Altherma 3 H MT F mit Bizone Kit (EPRA12EW1 / ETVH12S23E9W)
danke und lg
@homecineplexx sagte in Senden von Schaltzuständen auf ein Relaisboard:
nachdem es ja hier um das ESPAltherma Projekt geht.
wie weiß ich denn, welches Altherma-language(***).h File für meine am besten ist?ich hab eine Daikin Altherma 3 H MT F mit Bizone Kit (EPRA12EW1 / ETVH12S23E9W)
danke und lg
Die Frage würde ich direkt bei github stellen:
https://github.com/raomin/ESPAltherma/discussions -
@ralla66
MQTT.0 ist auf 1883, da laufen mehrere Geräte. Um hier eine Überschneidung zu verhindern, habe ich eine zweite MQTT.1 Instanz installiert (aktuell auf 1886).
Den Sonoff Adapter benötige ich eigentlich nicht, den verwende ich hier nur, um zu sehen, dass die Hardware funktioniert und sich die Relais mittels ioBroker im Prinzip schalten lassen.
Noch einmal zur Erinnerung: das finale Ziel ist ESPAltherma zu flashen. Ich hatte halt gehofft die notwendigen Einstellungen des MQTT Server/Client Adapters, damit auch Relais schaltbar sind, mit Tasmota heraus zu finden.@dieterb sagte in Senden von Schaltzuständen auf ein Relaisboard:
ESPAltherma zu flashen
Das sollte dann erst einmal geflasht werden.
Es wird ja einfach nur die Verbindung per MQTT hergestellt.
Das 1 Ch Relais bekommt ja den Impuls über / von G0 oder über Mqtt.
Wenn das Tasmota ist wird einfach per Mqtt das Command Power ON / OFF gesendet.
Genau steht das ja auf Github in den Dateien was gesendet wird. -
@dieterb :
Wenn ich Befehle mit MQQT Explorer absende, setze ich noch den Befehl dazu. z.B. "0" , "1", "TRUE" oder was auch immer benötigt wird.
Der Pfad ist schon an der richtigen Stelle. Den Befehl setze ich das Feld unter "raw, xml, json"@ralf-6 sagte in Senden von Schaltzuständen auf ein Relaisboard:
@dieterb :
Wenn ich Befehle mit MQQT Explorer absende, setze ich noch den Befehl dazu. z.B. "0" , "1", "TRUE" oder was auch immer benötigt wird.
Der Pfad ist schon an der richtigen Stelle. Den Befehl setze ich das Feld unter "raw, xml, json"Hurra !!!
Wenn ich zusätzlich zum Topic "ESP_Relay_Board/cmnd/POWER1" im unteren Feld (raw), 1 oder 0 setze, schaltet das Relais1 (geht natürlich auch für Relais2-4).
Und: unter cmnd entstehen die neuen Objekte die ich dann auch in ioBroker zum Schalten verwenden kann.
Vielen Dank an alle, aber wir sind noch nicht fertig :grin:
Ich werde jetzt (morgen) ESPAltherma flashen und dann berichten, ob es damit auch so geht oder ob ich weitere Hilfe benötige.
-
@dieterb sagte in Senden von Schaltzuständen auf ein Relaisboard:
ESPAltherma zu flashen
Das sollte dann erst einmal geflasht werden.
Es wird ja einfach nur die Verbindung per MQTT hergestellt.
Das 1 Ch Relais bekommt ja den Impuls über / von G0 oder über Mqtt.
Wenn das Tasmota ist wird einfach per Mqtt das Command Power ON / OFF gesendet.
Genau steht das ja auf Github in den Dateien was gesendet wird.@ralla66 sagte in Senden von Schaltzuständen auf ein Relaisboard:
@dieterb sagte in Senden von Schaltzuständen auf ein Relaisboard:
ESPAltherma zu flashen
Das sollte dann erst einmal geflasht werden.
Damit hatte ich ja begonnen, es fehlten aber in ioBroker die Objekte, damit die Relais auch geschalten werden können (wie beim Tasmota flash). Mit der soeben oben gefundenen Methode, hoffe ich nun die Schalt-Objekte auch in ESPAlthera generieren zu können.
-
@ralla66 sagte in Senden von Schaltzuständen auf ein Relaisboard:
@dieterb sagte in Senden von Schaltzuständen auf ein Relaisboard:
ESPAltherma zu flashen
Das sollte dann erst einmal geflasht werden.
Damit hatte ich ja begonnen, es fehlten aber in ioBroker die Objekte, damit die Relais auch geschalten werden können (wie beim Tasmota flash). Mit der soeben oben gefundenen Methode, hoffe ich nun die Schalt-Objekte auch in ESPAlthera generieren zu können.
-
@ralf-6 sagte in Senden von Schaltzuständen auf ein Relaisboard:
@dieterb :
Wenn ich Befehle mit MQQT Explorer absende, setze ich noch den Befehl dazu. z.B. "0" , "1", "TRUE" oder was auch immer benötigt wird.
Der Pfad ist schon an der richtigen Stelle. Den Befehl setze ich das Feld unter "raw, xml, json"Hurra !!!
Wenn ich zusätzlich zum Topic "ESP_Relay_Board/cmnd/POWER1" im unteren Feld (raw), 1 oder 0 setze, schaltet das Relais1 (geht natürlich auch für Relais2-4).
Und: unter cmnd entstehen die neuen Objekte die ich dann auch in ioBroker zum Schalten verwenden kann.
Vielen Dank an alle, aber wir sind noch nicht fertig :grin:
Ich werde jetzt (morgen) ESPAltherma flashen und dann berichten, ob es damit auch so geht oder ob ich weitere Hilfe benötige.
Musste es natürlich doch gleich versuchen, und es scheint nun auch mit ESPAltherma zu funktionieren, sobald ich den Befehl zum Setzen eines Relais-Zustandes (espaltherma/sg/set = 0-4) einmal im MQTT Explorer abgesetzt habe. Die Felder im ioBroker ändern sich dabei zwar nicht, aber danach bewirkt eine Änderung im ioBroker auch das Schalten der Relais - alles sehr merkwürdig.
Morgen werde ich jetzt gleich die X85A Erweiterung (https://github.com/raomin/ESPAltherma/pull/262) probieren und weiter berichten ... -
Musste es natürlich doch gleich versuchen, und es scheint nun auch mit ESPAltherma zu funktionieren, sobald ich den Befehl zum Setzen eines Relais-Zustandes (espaltherma/sg/set = 0-4) einmal im MQTT Explorer abgesetzt habe. Die Felder im ioBroker ändern sich dabei zwar nicht, aber danach bewirkt eine Änderung im ioBroker auch das Schalten der Relais - alles sehr merkwürdig.
Morgen werde ich jetzt gleich die X85A Erweiterung (https://github.com/raomin/ESPAltherma/pull/262) probieren und weiter berichten ...Hallo,
es funktioniert nun alles. Vielen Dank für Eure Hilfe. Hier eine Zusammenfassung.
-
Es hat sich nun doch herausgestellt, dass bei Verwendung von MQTT Adapter 1 in den Einstellungen des MQTT Server/Client der Wert Maske zum Bekanntgeben eigener States unbedingt mqtt.1.* stehen muss (ich fürchte, da hatte ich vorher nur mqtt.1). Alleine damit funktioniert ESPAltherma in ioBroker (auch mit der X85A Erweiterung und ohne MQTT Explorer).
Hier noch einmal meine MQTT Einstellungen (für Adapter 1 auf 1886):


-
Das Setzen von Schaltzuständen des topic espaltherma/x85a/set mittels MQTT Explorer bewirkt allerdings eine Änderung des Eingabefeld-Typs in ioBroker. Solange kein set über den MQTT Explorer ausgeführt wird, ist das Eingabefeld für espaltherma/x85a/set ein Textfeld:

nach einmaligem Setzen des Werts wird es zu einem Select-Feld, das nur ganze Zahlen zuläßt:

Sonst hat es aber keine bisher festgestellten Auswirkung und ist daher wohl nicht nötig. Möglich, dass das auch passiert, wenn die Werte per script geändert werden? -
Wird Tasmota geflashed und der MQTT Server/Client Adapter und nicht der Sonoff Adapter verwendet (warum auch immer), müssen die Objekte zum Schalten der Relais wie oben beschrieben mit dem MQTT Explorer erzeugt werden.
-
-
Hallo,
es funktioniert nun alles. Vielen Dank für Eure Hilfe. Hier eine Zusammenfassung.
-
Es hat sich nun doch herausgestellt, dass bei Verwendung von MQTT Adapter 1 in den Einstellungen des MQTT Server/Client der Wert Maske zum Bekanntgeben eigener States unbedingt mqtt.1.* stehen muss (ich fürchte, da hatte ich vorher nur mqtt.1). Alleine damit funktioniert ESPAltherma in ioBroker (auch mit der X85A Erweiterung und ohne MQTT Explorer).
Hier noch einmal meine MQTT Einstellungen (für Adapter 1 auf 1886):


-
Das Setzen von Schaltzuständen des topic espaltherma/x85a/set mittels MQTT Explorer bewirkt allerdings eine Änderung des Eingabefeld-Typs in ioBroker. Solange kein set über den MQTT Explorer ausgeführt wird, ist das Eingabefeld für espaltherma/x85a/set ein Textfeld:

nach einmaligem Setzen des Werts wird es zu einem Select-Feld, das nur ganze Zahlen zuläßt:

Sonst hat es aber keine bisher festgestellten Auswirkung und ist daher wohl nicht nötig. Möglich, dass das auch passiert, wenn die Werte per script geändert werden? -
Wird Tasmota geflashed und der MQTT Server/Client Adapter und nicht der Sonoff Adapter verwendet (warum auch immer), müssen die Objekte zum Schalten der Relais wie oben beschrieben mit dem MQTT Explorer erzeugt werden.
-