NEWS
Shellys ("Alt und Plus") über MQTT Adapter
-
@hotspot_2 sagte in Shellys ("Alt und Plus") über MQTT Adapter:
@mickym Dem Thema Mosquito usw. nehme ich mich heute auch noch an. Es laufen doch einige Fehlermeldungen (wie oben) an. Werde dann den mosquitto als broker installieren und ich greife dann mit dem mqtt Adapter als Client auf den mosquitto zu und habe dann alle mqtts wieder in iobroker. So ist das Konzept, oder? Stelle ich dann aber alles bei mir auf den mosquitto um also z.B. auch meine ESPs?
Nein auf den Shellies oder Clients musst Du gar nichts ändern, wenn Du in mosquitto die gleichen Credentials (Benutzer und Passwort) falls Du vergeben hast. Die Clients merken ja eigentlich nicht, dass da ein anderer Broker dahinter hängt, da IP-Adresse und Port ja gleich bleiben. Im mqtt-Adapter subscribest Du alles - wie in meinem Screenshot gezeigt - also #.
Damit hast Du quasi den gesamten mosquitto im mqtt-Adapter und du erkennst keinen Unterschied. Im Gegenteil kannst Du nun auch direkt in die Datenpunkte schreiben - da machte der Broker auch oft Probleme. Du nutzt ja den gleichen Adapter nur eben als Client:Habe noch eine zweite Frage: Bastele gerade an einer Erweiterung des Treppenhaus Licht Flows. Würde ich Dir dann nachher mal zeigen wollen (ist nicht viel, aber interessant ob ich es richtig mache für mich). Frage ist noch: Wenn ich einen Switch-Node habe der true und false als Ausgänge hat (Ergebnis) wie lasse ich den den Flow korrekt enden wenn es nach false dann nicht mehr weiter geht (also keine weitere Aktion folgt). Lässt man dann die Verbindung einfach weg oder sollte man das anders lösen?
Du kannst doch die Ausgänge die nicht nutzt einfach löschen:
Standard ist eh erst mal ein Ausgang und Du kannst beliebig viele Ausgange hinzufügen oder löschen:
Du kannst aber auch die Verbindung einfach weglassen. Es gibt auch Nodes die haben 2 oder mehrere Ausgänge, die Du nicht nutzen musst. Beispiel ist die exec Node - da musst Du nicht alle 3 Ausgänge nutzen.
-
@mickym So, ich habe jetzt mal was eingebaut in den Flow. Idee ist das ich einen zusätzlichen Schalter habe der bei true die Bewegungsmelder nur einschalten soll wenn es dunkel ist und bei false immer. Davor gibt es noch einen Schalter der dafür sorgen soll ob die Bewegungsmelder überhaupt aktiviert worden sind.
Nun würde ich noch gerne das Licht, wenn es dunkel ist, aktivieren wenn jemand an einer der beiden Türklingeln (unten und oben) klingelt. Da stellt sich mir noch die Frage ob ich irgendwie die vorhandene Node Light Scheduler ebenfalls nutzen kann und keine zweite Flow einfügen muss. Das wird aber dann vermutlich über das Thema global Payload passieren, oder?
-
@hotspot_2 Also Du hast den falschen Node genutzt beim LightScheduler. Den Du genutzt hast, der triggert.
Du brauchst aber die Filter node. Ich finde es zwar mit deinen Schalter langsam übertrieben. Du musst ein bisschen auf Ästhetik achten - und das ganze etwas auseinander ziehen - dann kannst Du oben auch noch Deinen anderen Geräte in den Filter laufen lassen:
-
@mickym Ich mag mein VIS (jarvis) und meine Schalter da drin. Nutze sie nicht sehr oft, das stimmt, aber einfach "nice to have" für mich ;-).
So, jetzt sollte es passen. Funktioniert echt sehr gut mit Node RED. Bin total begeistert.
Nachher noch das Mosquito Thema erledigen und dann ist das ne runde Sache insgesamt.
Gibt es eine Möglichkeit nach dem Ende des Triggers noch ein paar Aktionen zu machen? z.B. einen Wert in ein iobroker out zu schreiben?
-
@hotspot_2 sagte in Shellys ("Alt und Plus") über MQTT Adapter:
Gibt es eine Möglichkeit nach dem Ende des Triggers noch ein paar Aktionen zu machen? z.B. einen Wert in ein iobroker out zu schreiben?
Soviel du willst - die Möglichkeiten sind nahezu unbegrenzt.
-
@mickym Ich meine wenn die vorgebene Zeit abgelaufen ist (also die zweite Nachricht abgeschickt wird) noch ein paar Aktionen zu machen. z.b. einen Wert in ein iobroker out zu schreiben. Aber erst dann wenn quasi das Licht wieder ausgeschalten wird.
-
@hotspot_2 Klar Du musst halt nach den Ausschaltnachrichten filtern, wie das geht mit dem Filtern und dem Pfad habe ich Dir ja gezeigt.
Wenn Du nicht mehr weißt, wie Du filtest Debug Node dran und Pfad kopieren:
und dann in der switch node danach filtern:
Du musst in jedem Fall lernen mit Objekten umzugehen.
Es gäbe noch die Möglichkeit ohne Filtern zu arbeiten, in dem Du die 2. Nachricht über einen getrennten Ausgang schickst. Dann musst aber den 2. Ausgang auch mit allen Lampen verbinden.
Aber Du sollst schon lernen, wie man mit Objekten umgeht.
-
Um zu schaun, was z.B. die Shellys so über MQTT senden oder auch selber MQTT-Topics zu schicken, verwende ich den MQTT Explorer.
-
@sabinet Ja da ist nichts gegen einzuwenden, aber ich kann gerade nicht den Zusammenhang mit dem aktuellen Flow hier herstellen.
-
@mickym Ich bräuchte nochmal einen Tipp. Wie kann ich den am einfachsten eine Objekt auf einen Wert setzen so einfach zwischendrin wenn ich das gerne machen möchte also wenn z.B. eine bestimmte Bedingung erfüllt ist nach einem Flow ein Objekt im ioBroker auf true setzen oder auch mal false.
-
@hotspot_2 Mit einer Change Node die payload entsprechend Deinen Wünschen anpassen und dann via iobroker-Out Node in den Datenpunkt feuern.
Erinnere Dich doch an die elegante Lösung: https://forum.iobroker.net/post/970788
-
@mickym So, mosquitto läuft mit dem gleichen User und Passwort wie vorher der MQTT Adapter als er noch Broker war. Den MQTT Adapter habe ich jetzt auf Client / Subscriber gestellt und auch die Credentials des mosquitto mqtt brokers eingegeben. Jetzt sieht beim Adapter alles so aus wie vorher.
Dann sollte das doch jetzt auch passen.
-
@hotspot_2 Ja - Du siehst ja dass Deine Flows noch funktionieren.
-
@mickym Das mit der Dunkelheit klappt nicht so wie es aussieht.
Im Moment ist es schon deutlich dunkler geworden, aber egal was ich da einstelle der Status geht nicht auf "On".
Ich teste mal den Time-Range-Switch Node.
-
@hotspot_2 Nein - Du hast das nicht richtig konfiguriert.
Du musst alles blau machen, was ON sein soll. Also ein allumfassende Zeit. Ich würde alles ab 16 Uhr on machen bist 8 Uhr in der Früh. Wenn es auf Dunkeleinheit eingestellt ist beginnt es halt nicht um 16 Uhr aber es muss dunkel sein.
Und das halt für jeden Wochentag. Also das blaue ist der maximale Zeitraum - bei Dir hast Du ja gar nichts eingestellt.
Ich finde die Nodes toll, weil Du halt grafisch mehrer ON Zeiträume definieren kannst.
Du kannst sogar die Grad des Sonnenstandes einstellen.
Wenn Du den Haken unten set Show sun evaluation status siehst Du im Status der Node sogar den aktuellen Sonnenstand.
Immer die Hilfe lesen:
Du legst also mit den blau markierten Zeiten die ON Zeiten fest und diese werden dann überschrieben, dass diese nur aktiv sind, wenn es dunkel ist. Sprich wenn Du ab 16 Uhr einträgst, dann wird es erst auf on wenn es nach 16 Uhr dunkel ist.
Wenn Du ab 20 Uhr machst und es wird schon um 18 Uhr dunkel, geht es trotzdem erst am 20 Uhr on - ich hoffe das war verständlich erklärt. Insofern ist da in meinen Augen eine sehr feine Justierung möglich.
so sieht es dann aus:
-
@mickym Ok. Sehr gut erklärt! Wie immer!
Hab noch was gefunden, der Haken bei msg.delay überschreiben muss gesetzt sein. Sonst übernimmt er die Zeit nicht.
Was mir gerade noch etwas Sorge bereitet ist das ich durch Knopfdruck der Shellys das Licht nicht mehr einschalten kann. Das geht nur über den Bewegungsmelder aktuell. Nachtrag: Ich hab's es gibt zwei Switch:0 im mqtt des Shellys. Einmal unter command und einmal unter status. Ich brauche den unter status und hatte den im Ordner command ;-).
-
@hotspot_2 sagte in Shellys ("Alt und Plus") über MQTT Adapter:
Na das hatte ich aber geschrieben: https://forum.iobroker.net/post/971763 lies Dir das mal aufmerksam durch. Mit Screenshots.
Was mir gerade noch etwas Sorge bereitet ist das ich durch Knopfdruck der Shellys das Licht nicht mehr einschalten kann. Das geht nur über den Bewegungsmelder aktuell
Na dann mit Debug Nodes ob aus den Schaltern was rauskommt.
Ich brauche den unter status und hatte den im Ordner command ;-).
Warum hast Du denn das geändert - das hatte ich doch alles schon im Flow gehabt?
-
@mickym Ja, habe ich auch gerade gesehen. Keine Ahnung wie das passieren konnte. Aber jetzt ist alles wieder richtig eingetragen.
-
@hotspot_2 Mit dem command war wohl meine Schuld - hatte ich verkehrt in die topics eingetragen- sorry.
-
@mickym Ich glaub ich habe noch was gefunden.
Seitdem die beiden Shellys nun korrekt konfiguriert sind passiert folgendes: Licht geht an (egal ob über Schalter oder Bewegungsmelder) und nach Ablauf der Zeit geht das Licht kurz aus und gleich wieder an. Laut Debug wird ein JSON mit false bei On als erstes gesendet und dann danach eins mit true. Ich glaube wir müssen doch bei den beiden Shellys auch auf die Eingänge "true" filtern.