NEWS
Node Red: Fragen zu einfachen Steuerungsaufgaben
-
@mickym Übrigens zigbee2mqtt ist nicht vergessen! Ich bekommen nächste Woche ein RPI4 und dann wollte ich mich da mal rantrauen. Hab schon mal ein wenig gelesen und so ein paar Fragenzeichen habe ich noch,,,
-
@bastel2021 Ja kannst Du ja machen - aber mit dem Alias hast Du doch auch eine schöne Lösung oder etwa nicht?
-
@mickym sagte in Node Red: Fragen zu einfachen Steuerungsaufgaben:
@bastel2021 Ja kannst Du ja machen - aber mit dem Alias hast Du doch auch eine schöne Lösung oder etwa nicht?
Ja klar! Ich habe da auch schon vorher an verschiedenen stellen von gelesen und darum hast du da eine offene Tür eingerannt
Wo wir gerade dabei sind muss ich eigentlich meine ganzen Geräte im Zigbee Adapter löschen bevor ich auf Z2M wechsle?
-
@bastel2021 sagte in Node Red: Fragen zu einfachen Steuerungsaufgaben:
Z2M wechsle?
Na wenn Du das wirklich willst - dann musst zwar nicht löschen - aber neu pairen musst du die Geräte auf jeden Fall.
-
@mickym ja auf jeden Fall will ich das machen! Na die Geräte neu pairen ist natürlich blöd aber egal. Sind ja nur ein paar bei mir.
Und bis dahin muss ich sehen das ich die Alias fertig habe. Wird mein IOB denn im jetzigen Zustand erhalten bleiben? Oder muss ich über ein BackUp neu einspielen?
Also über das genaue vorgehen mit dem Wechsel auf Zigbee2mqtt bin ich mir noch nicht ganz im Klaren -
@bastel2021 Na wenn Du umziehst - dann wirst Du Dein System ja komplett neu aufbauen und das Backup einspielen. Das versucht dann Deine Adapter wieder so wiederherzustellen, wie Dein jetziges System.
-
@bastel2021 sagte in Node Red: Fragen zu einfachen Steuerungsaufgaben:
Also über das genaue vorgehen mit dem Wechsel auf Zigbee2mqtt bin ich mir noch nicht ganz im Klaren
Wie gesagt das muss ja nicht sein, wenn Du mit der jetzigen Lösung zufrieden bist. Wenn Du mit zigbee2mqtt arbeiten willst, dann musst Du entweder diesen neuen zigbee Adapter nehmen, der alles in einzelne datenpunkte aufdröselt, wenn Du rein mit mqtt arbeiten willst, dann musst Du dich mit Objekten beschäftigen, da dann die Information und die Steuerung nicht mehr über einzelne Datenpunkte läuft.
-
@mickym okay alles klar, und Vorher dann erst Mosquitto installieren und dann Zigbee2mqtt?
-
@bastel2021 sagte in Node Red: Fragen zu einfachen Steuerungsaufgaben:
@mickym okay alles klar, und Vorher dann erst Mosquitto installieren und dann Zigbee2mqtt?
Ja ich habe mosquitto - wie gesagt der zigbee2mqtt Adapter bietet auch einen mqtt-Broker an (dann geht es ohne mosquitto). Wenn Du es so aufbauen möchtest, wie ich es derzeit habe, brauchst du vorher den mosquitto.
-
@mickym Also zigbee2mqtt schickt Objekte an mosquitto und dieser wiederum schickt die Objekte an den mqtt Adapter in IOB. Von da aus kann dann die Logik mit Node Red aufgebaut werden. Richtig?
-
@bastel2021 zigbee2mqtt schickt Daten an einem mqtt Broker. Das kann mosquitto sein oder der zigbee2mqtt Adapter direkt.
Wenn Du mosquitto nutzt - dann kannst du den mqtt-Adapter als Client definieren um alle Daten des mosquitto im iob zu haben. Du kannst dann über diese Datenpunkte aus NodeRed zugreifen.NodeRed hat aber auch eigene mqtt Nodes - so dass Du falls Du mosquitto nutzt auch direkt mit NodeRed steuern kannst, dann brauchst Du den mqtt Adapter im iobroker nicht. Das heißt im Fall von mosquitto hast Du die Wahl ob Du direkt über mosquitto steuern willst oder über den mqtt Broker. Man kann zum Beispiel direkt über mosquitto steuern, aber über den iobroker hast Du mit dem mqtt-adapter quasi einen Monitor um zu sehen, wie der Status im mosquitto gerade aussieht.
-
@mickym Okay etwas klarer jetzt. Hört sich sehr interessant an. Das werde ich genauso versuchen umzusetzten
-
@mickym Hallo!
Ich habe jetzt ein paar Datenpunkte im alias Ordner erstellt.
Funktionierte leider nicht auf anhieb (die Dimmfunktion für die du den Flow erstellt hast). Hab dann aber den Fehler gefunden:
Da ich die Namen der Datenpunkte im alias.0 geändert habe musste ich natürlich auch die switch Note anpassen.
Wobei sich für mich jetzt die Frage stellt warum die switch Node das überhaupt unterscheiden kann. Denn aus der switch Node davor (nur true), kommt in der Debug die ich daran gehängt habe, auch nur true raus. Das kann ja nur von der IOB in Node kommen, aber so ganz klar ist mir das nicht. -
@bastel2021 Nun Du prüfst ja in den switch Nodes verschiedene Eigenschaften des Nachrichtenobjektes ab. Einmal die payload und einmal das topic. Lass Dir mit der debug Node mal das komplette Nachrichtenobjektes ausgeben, dann siehst Du ja die unterschiedlichen Eigenschaften.
Die payload - enthält in der Regel den Wert - also die Nutzlast und das topic die Bedeutung, also woher es kommt.
Ein gutes Beispiel ist ein Datenpunkt der die Temperatur ausgibt. Die payload enthält die Temperatur zum Beispiel: 23. Es könnten aber theoretisch 23 Grad egal woher sein, es könnten aber auch 23 Watt oder 23 € oder was auch immer sein.
Nun sagt Dir das aber nichts, da du ja nicht weißt was für eine Temperatur das ist. Die Aussentemperatur, die Temperatur im Schlafzimmer oder im Wohnzimmer. Deswegen setzt man meist noch das topic um dem Wert eine Bedeutung zu geben. Wenn man das nicht selbst setzt, setzt die iobroker -IN Node das topic auf dem Datenpunkt aus dem der Wert stammt und Du weisst dann welche Bedeutung die payload hat. -
Payload: alias/0/Wohnzimmer/4_Fach_Schalter/Helligkeit_heller : msg.payload : boolean
Topic: trueist das so richtig? Wenn ja, dann bezieht sich die Auswahl string in der switch Node auf den Payload?
EDIT: Natürlich genau falsch: Payload und Topic vertauscht!!!
-
@bastel2021 In der ersten switch Node bezieht sich die switch Node auf die payload- in der 2. switch Node auf das topic.
das topic enthält in wie du siehst:
den string heller - deswegen dirigiert die 2. switch Node die Nachricht an den 1. Ausgang
-
@bastel2021 Nein - Du gibts in der Eigenschaft an auf welche Nachrichteneingenschaft es sich bezieht.
Die erste switch Node - lässt grundsätzlich alle Nachricht durch deren payload = true ist. Die 2. switch Node analysiert das topic des Nachrichtenobjektes und das ist nicht true sondern:
alias/0/Wohnzimmer/4_Fach_Schalter/Helligkeit_heller.
Mach einfach mal hinter die 1. Switch Node eine debug Node und lass Dir das gesamte Nachrichtenobjekt ausgeben:
-
@mickym
sieht schon anders aus, sogar mit BeschreibungOkay verstanden! Diese unterschiede und Begriffe muss man natürlich drauf haben!
Perfekt! Und mal wieder Danke für die Erläuterung. So gehts Schritt für Schritt voran -
@mickym Guten Abend, ich muss da noch mal eine Frage los werden.
Ich möchte ja wie schon geschrieben auf zigbee2mqtt wechseln. Nun habe ich schon die Installation so weit vorbereitet. Es stellt sich nun die Frage wie weiter vorzugehen ist. Zu welchem Zeitpunkt spiele ich das IOBroker Bachup ein? Und was ist mit dem Zigbee-Adater in IOBroker? Der Adapter ist ja nun auch mit dem Controller verbunden und da könnte es ja konflikte geben,
Wie sollte ich da am besten weiter machen? -
@bastel2021 Du musst Dich entscheiden, entweder zigbee-Adapter oder zigbee2mqtt - weil wie Du richtig sagst, nur einer auf den Koordinator zugreifen kann.