NEWS
(gelöst) Ikea FB, Wert erkennen und MQTT Befehl senden
-
@thrusty Ich habe auch den mqtt-Adapter als Client eingerichtet. Wenn man den Adapter als Frontend verwendet, dann kannst nochmal Deine mqtt-Einstellungen überprüfen. Bei mir sind in diesem Fall, alle Optionen aus:
Die States die Du publizierst, müssen halt Deiner Instanz entsprechen. Also wenn Deine mqtt-Instanz 0 ist ,dann ist die Maske zum Publizieren bei Dir mqtt.*.0
Wenn Du dann im iobroker - den Datenpunkt selbst eingibst, dann musst halt auch im Log schauen, ob es Fehler gibt.
Um zu überprüfen, ob die Daten Dein mosquitto Broker erreichen, musst halt ggf. noch mit einem weiteren mqtt-Client überprüfen.
In dem DisplayText Punkt unter dem cmnd Ast - sollte dann nur der Inhalt geschrieben werden - also ohne DisplayText voran:
[zOs2c1l1f0Ci2]Rolladen 2[s2c1l3f0Ci3]Schlaf-[s2c1l5f0Ci10]zimmer
Wenn Du den ganzen Befehl eingeben willst, so wie Du es oben beschrieben hast, dann musst Du diesen in den backlog Datenpunkt eingeben.
DisplayText [zOs2c1l1f0Ci2]Rolladen 2[s2c1l3f0Ci3]Schlaf-[s2c1l5f0Ci10]zimmer
In der Regel siehst Du auch auf der Tasmota Konsole welche mqtt-Punkte dann nach Befehlseingabe aktualisiert werden.
Sprich Du siehst welches Kommando (CMD) ich eingegeben habe und darauf spukt die Konsole aus, welche Datenpunkte im mqtt dann aktualisiert werden.
Und wie gesagt, fehlende Datenpunkte unter dem CMND Ast musst halt manuell anlegen.
-
@mickym
Das mit dem Display habe ich nun hin bekommen. Das Problem lag an der Maske zum Publizieren. Meine mqtt Instanz ist 1, in der Maske stand 0. Danke für den Tip. Das Display kann ich nun über den Datenpunkt ansteuern. Vielen Dank.Nun habe ich noch eine Fragen.
Das mit den Datenpunkten anlegen habe ich hinbekommen. Zumindest für das Display hat es geklappt.
Nur warum ich die beiden Shutter nicht über die CMND Datenpunkte erreiche ist mir ein Rätsel. Der eigegebene Wert bei ShutterPosition wird nicht übermittelt. Hast du vielleicht noch einen Tip? Unter den Punkt "state" sehe ich das beide online sind und die aktuelle Position. -
@thrusty Nun ehrlich gesagt verstehe ich die Struktur nicht. Eigentlich darf in dem Pfad nicht Eigene Punkte drinstehen, die Struktur müsste eigentlich wie im Namen aussehen. Mich wundert, dass das mit dem Display funktioniert. Hast Du den mqtt-Adapter, der nur als Client funktioniert oder den, den ich unten im Screenshot gezeigt habe und der sowohl als Client wie als Broker definiert werden kann?
Wichtig ist halt zu prüfen:
- Kommt aus dem iobroker das was Du dort in einem DP änderst auch im mosquitto an?
- Ist der mqtt-Pfad richtig, da das Tasmota -Gerät ja nur auf einen bestimmten Pfad hört:
Der Name und der Pfad müssen natürlich über einstimmen mit dem, was Du bei den Clients eingetragen hast, also %topic%/%prefix usw.
Nachdem Du nun gepostet hast, was Du für einen Adapter nutzt, dann muss die Struktur natürlich so sein, wie von Tasmota erwartet und nicht in einem Verzeichnis "Eigene Punkte" liegen. Auch wenn der Name passt, wundert mich das eher, dass es bei Display funktioniert hat. Also meines Erachtens muss backlog etc. immer eine Ebene höher. Das auf was Tasmota hört ist ja fix in der Struktur und richtet sich danach, was Du im Tasmota konfiguriert hast.
-
@mickym
Direkt unter den jeweiligen Ordner (zb ssd1351) konnte ich kein Datenpunkte anlegen, da hatte ich als einzige Option einen Ordner zu erstellen.Ich benutze diesen mqtt Broker:
Denn kann ich als Client und als Host einstellen. -
@thrusty Poste auch nochmal Deine mqtt-Einstellungen, so wie ich unten.
-
@thrusty sagte in Ikea Fernbedinung, Wert erkennen und MQTT Befehl senden:
Direkt unter den jeweiligen Ordner (zb ssd1351) konnte ich kein Datenpunkte anlegen, da hatte ich als einzige Option einen Ordner zu erstellen.
Oh das ist dieser schreckliche Admin5 Mist.
- Dazu gibt es schon ein Issue. Dann bleibt Dir nichts anderes übrig, als nochmal Deinen Admin zumindest bis das gelöst ist auf Admin4 umzustellen.
Browser Refresh - dann kannst die Datenpunkte wieder richtig erstellen. Kannst wenn Du das gemacht hast - wieder zurückdrehen. Ansonsten musst Du über einen anderen mqtt-Client diese Datenpunkte erstellen. Wenn Du unter Windows arbeitest - kannst Du das ggf- auch mit dem Tasmota Device Manager den nutze ich
-
@mickym
Du hast recht, mit diesem Topic kann es nicht funktionieren.
Hier sind die Einstellungen:
Ich werde die Admin Einstellungen mal ändern. Danke dafür.
-
@thrusty Ich hab das hier schon lang und breit moniert: https://forum.iobroker.net/topic/46814/admin5-ich-kann-keine-objekte-mehr-manuell-anlegen/367
und hier nochmal weiter ausführlich diskutiert: https://forum.iobroker.net/topic/46851/datenpunkte-allgemein-und
und inzwischen gibt es auch ein issue diesbezgl.
https://github.com/ioBroker/ioBroker.admin/issues/1067
Tut mir leid, dass Dich das nun so getroffen hat.
Ansonsten passen Deine Einstellungen
- ich habe exakt diesselben und bei mir funktioniert es, wenn die Datenpunkte an der richtigen Stelle sind.
-
@mickym
Muss dir ja nicht leid tun. Jedenfalls nett das du mir da in Gange hilfst.
Shutter2 (da war der Punkt ShutterPosition vom System angelegtworden) funktioniert nun. Bei Shutter1 habe ich den Punkt angelegt, das läuft noch nicht.
Bei dem funktioniert es aber über Backlog. Hatte ich auch selbst angelegt. -
@thrusty Schau mal, dass der Name auch den MQTT Regeln entspricht - Slash statt Punkt
-
@mickym
Oh ja, du hast Recht. Hatte ich übersehen.
Ok, die Ikea FB funktioniert, die Rolläden funktionieren, das Display funktioniert, nun will ich mal schauen dass ich das ganze mit Blockly verbinde.
-
@thrusty Na wenn Du manuell was da reinschreibst und es funktioniert, dann sollte es auch mit Deiner Logikmaschine (Blockly, JS, NR) gehen.
-
@mickym
Das wird nun die nächste Herausforderung.
Vielen Dank für deine Hilfe und Geduld. -
@thrusty Na @paul53 hat Dir ja schon auf die Sprünge geholfen. Da ich eher Node Red Fan bin, wird er Dir aber sicher weiterhelfen, wenn Du da ein Problem hast.
Im Prinzip triggerst ja nur der Datenpunkt der IKEA FB und dann beschreibst Du halt unterschiedliche Datenpunkte.
Irgendwie so ähnlich wird es dann wohl aussehen.
- Aber wie gesagt ich halte mich da raus, da ich kein Blockly Spezi bin.
-
@mickym
Oh, nochmals Danke. Du bist ein SchatzDer Block "steuere Objekt ID", denn habe ich gesucht.
Somit kann ich nun mal schon den Wert des erstellen Datenpunktes ändern. Hervorragend, es funktioniert!!!Diesen Datenpunkt will ich als Variable nutzen. Um mit der 5 Tasten IKEA FB fünf Rolläden von Hand steuern zu können. Und das Display zeigt mir an welchem Rolladen ich gerade bin. Der Variablenblock in Blockly ist viel zu steif und eingeschränkt.
Edit:
Na ja ganz geht es noch nicht. Mein Wert Zählt hoch aber leider noch nicht wieder runter. Das heißt, er zählt nicht mal hoch, wenn ich die Taste "hoch" drücke geht der Wert auf 5. Blockly rechnet im Moment noch nicht.
Ich hatte in dem Datenpunkt 1 als minimal und 5 als maximal eingegeben. -
Ich habe außerdem nicht sonst falls gemacht, sondern alles falls. Was ggf. passiert ist, das Du entweder gar nicht mit dem Zahlenwert vergleichst. Im Moment tritt halt bei Dir immer der sonst Ast auf, weil er den Wert nicht erkennt und deshalb immer hochzählt.
Wie gesagt Blockly ist nicht meines - aber ich bin überzeugt, dass Dir bald Hilfe zuteil wird.
Für mich ist NR da viel intuitiver, aber das ist halt Geschmackssache.
-
@mickym
Denn Unterschied hatte ich nicht mal bemerkt. Aber mit nur falls geht es leider auch nicht.
Hab es gerade mal ausprobiert, irgendetwas mache ich immernoch falsch.
Vielleicht kann mir @paul53 da ja weiterhelfen.Edit:
Ich habe es hinbekommen:
So funktioniert es. Der Wert in dem selbsterstellten Datenpunkt wird mit jedem Tastendruck erhöht bzw verkleinert. Und das im Rahmen von 1 - 5. Die Rahmenwerte habe ich im Datenpunkt eingestellt.
Somit habe ich mit diesem Datenpunkt eine Variable die ich in andere Blocklys verwenden kann. -
@thrusty Ja wie gesagt ich kenn mich mit Blockly nicht aus und wusste auch nicht auf welches Objekt sich der Wert bezieht. So wie Du es nun gemacht hast, ist es ja in jedem Fall eindeutig.