NEWS
Wemos EasyESP Homematic
-
Hi Ingo,
sorry für die späte Antwort habe nicht gesehen das du nochmals geschrieben hast.
Ja wie gesagt habe mit den Rules ein paar versuche gemacht und irgenwann hat es dann so geklappt, habe allerdings 2 objekte in MQTT einmal den GPIO (bei mir 13) zum schalten und einmal ein Switch input der den GPIO ausliest.
ja machmal sagen Bilder mehr als Worte, hoffe hier trifft das auch zu.
Allerdings habe ich nur Fotos von dem ESP, von ioBroker leider nicht da ich alles wieder gelöscht habe und momentan versuche ein Statusdisplay mit den WS2811 zu erstellen(leider noch ohne erfolg).
3576_4.jpg
3576_3.jpg
3576_2.jpg
3576_1.jpg -
Hallo und guten Morgen,
habe auch ioBroker auf einem Pi laufen, Wemos D1 mini über EasyESP mit einem DHT22 Sensor konfiguriert und über den MQTT Adapter problemlos eingebunden.
Jetzt möchte ich auch ein 4-fach Relais von ioBroker ansteuern und scheitere daran. Auch der Starfish-Thread hat mich nicht weitergebracht.
Fragen dazu.
Ihr macht das in Easy ESP über den Switch Input. Das ist doch aber ein Output für den Wemos!
Wie bekomme ich die Datenpunkte in den MQTT Adapter?
Ich muss ja wahrscheinlich den Wert 0 und 1 von ioBroker und MQTT übergeben. Kann ich da ein normales On/Off oder CTRL Widget nehmen und statt true false 0 und 1 eintragen?
Danke euch!
-
Hallo,
die Datenpunkte mußt du über einen Umweg anlegen.
Des Rätsels Lösung heißt MQTTfx. (Windows-Programm).
Hat Starfish (ich glaube unter "Scrolling OLED") sehr gut beschrieben. Ansonsten die SuFu nach MQTTfx bemühen.
Grüße Ingo
-
Irgendwie blick' ich's nicht.
Habe MQTT.fx installiert aber komme nicht weiter.
Welchen Pfad muss ich da angeben beim Publishen? Wenn ich aus Admin Objekte den Pfad nehme macht er immer Punkte hinein wie das hier:
mqtt.0.ESP-4-fach_Relais.Rel1
Muss ich die Punkt durch Slashes ersetzen?
Dann habe ich gesehen, dass doch schon irgendwie Datenpunkte angelegt wurden. Frage mich nur wie und kann ich die nutzen?
Anbei ein Bild.
Habe versucht die mit einem Widget zu verändern, ging aber leider nicht.
1752_2017-10-30_18_00_39-iobroker.admin.jpg -
ändere mal unter Objekte in deinem "ESP-4fach_Relais" den Status von 1 auf 0.
Wenn das Relais dann nicht schaltet, ist was falsch.
Für einen 1. Funktionstest prüfe ich, ob das Relais mit "http://192.168.2.150/control?cmd=GPIO,16,0" bzw. "http://192.168.2.150/control?cmd=GPIO,16,1"
schaltet. Dann hast du auch gleich die richtigen Pfade.
Mein Wemos-Keller-Relais schalte ich in MQTTfx über WEMOS-Keller/GPIO/16. Dann im unteren Feld abwechselnd 1 und 0 eintragen und Publish drücken.
Dabei muß das Relais schalten, sonst ist was falsch.
Alles was du mit Publish los schickst landet unter Objekte. Hier dann hinterher aufräumen.
Ansonsten kann ich nur nochmal auf den "Scrolling OLED" - Beitrag von Starfish verweisen, 1.Seite, ca Mitte, ist alles gut mit Bildern beschrieben.
Grüße Ingo
1519_mqttfx.jpg -
Also, der http-Befehl funktioniert!
Aber nicht das Publish über MQQTfx.
Es wird ein Datenpunkt eingetragen, auch der Wert wird direkt umgeschrieben. Jedoch schaltet das entspr. Relais nicht. Erst wenn ich den ESP neu boote!
Dann werden die entsprechenden Relais geschaltet, wie ich sie vorher über Publish eingetragen hatte.
Hier ist doch irgendwo noch ein Halen falsch!
EDIT: Wenn ich bei den MQTT Adapter Einstellungen entgegengesetzt zu der Anleitung von Starfish unter "Publish nur bei Änderung:" einen Haken setze, kann ich über Publish in MQTTfx die Relais schalten!
Was noch nicht geht ist in iobroker Admin, den Wert von den GPIOs aktiv von 0 auf 1 oder umgekehrt zu verändern. Hier erhalte ich keine Reaktion von den Relais.
Noch etwas. Das Feld IDX habe ich auch nirgends
-
Moin, Moin,
hat bei mit auch einige Zeit gedauert, bis alles lief…......
Da dein DHT22 läuft, kann ja eigentlich nicht mehr viel im Argen sein.
Ich habe dir mal meine MQTT-Adaptereinstellungen angehängt, den Haken bei "Publish nur bei Änderung" hab ich auch drin.
Das Feld IDX:
Welche ESPEasy-Version verwendest du ?
Ich meine, irgendwo gelesen zu haben, das es mal Schwierigkeiten mit MQTT gab.
Ich verwende immer die neueste MEGA-Version, (2.0.0-dev12_normal), und flashe diese mit dem enthaltenen Flash-Tool.
Das Gefrickele mit der IDE, portablen Installationen hatte ich satt. Da kam es schon vor, das was nicht wollte. Zudem hatte
ich irgendwann 3 oder 4 speziell angepaßte IDE-Installationen auf dem Rechner.
Schicke doch mal ein paar Screenshots deiner ESP-Easy-Installation auf dem Modul.
Grüße Ingo
1519_mqtt_1.png
1519_mqtt_2.png -
Hi Leute..
ich habe an meinem Wemos eine WS2812 LED und steuere die mit Easyesp. Einen DHT 22 habe ich auch dran hängen. ich bekomme die Daten (Temp und Hum vom DHT, Helligkeit, Farbe &co von der LED) via MQTT nach IOB. nun möchte ich die LED via IOB ein/aus schalten und idealerweise auch die Farbe, Helligkeit und Leuchttyp (Candle/Lauflicht und ähnliches) ändern.
Wie löse ich das?? "Rules"? Kommt mir da so im Sinne, aber ist Neuland für mich.
Relaissteuerung soll auch irgenwann folgen.. mit "Rückmaldung" vom Wemos
VG
Nelzon
-
Hallo nelzon und hg6806,
wg der LED kann ich leider nicht behilflich sein, hab ich nicht, kenne ich nicht.
Ich habe mal etwas zusammen geschrieben, was euch beiden helfen könnte.
` > Wemos + MQTT + Relais + Rückmeldung
MQTT-Adapter in ioBroker ist installiert und eingerichtet.
Wemos D1 mini mit Flashtool auf neuste Version flashen (ESPEasy_v2.0.0-dev12_normal_4096.bin)
Mit SSID ESP_0 mit PW configesp verbinden.
Wenn sich kein ESP_0 aufbaut, Reset-Taster am Modul drücken.
192.168.4.1 aufrufen
WLAN-SSID und Passwort deines Routers eingeben.
Arduino-IDE den seriellen Monitor starten (115200 Baud), Modul resetten, neue IP auslesen.
Mit Modul über neue IP verbinden.
CONFIG:
Modulname (Wemos_Rel_Rue)
Unit Number (9)
feste IP vergeben (192.168.2.150)
mit Submit abspeichern.
Modul resetten, im seriellen Monitor prüfen, ob die feste IP übernommen wurde.
Mit Modul über feste IP verbinden.
CONTROLLERS:
OPENHUB MQTT
Use IP
Controller IP (IP des ioBroker)
Controller Port (1883)
Controller User und Password wie im MQTT-Adapter im ioBroker eingestellt.
Enabled –> Haken rein
mit Submit abspeichern.
Modul resetten, im seriellen Monitor prüfen, ob MQTT verbunden ist.
Hardware:
Pinmode 12 (D6) --> Output High
GPIO 12 ist Anschluß D6 !
mit Submit abspeichern.
Jetzt in einem Web-Browser eingeben:
http://192.168.2.150/control?cmd=GPIO,12,1
Das Relais muß einschalten !
http://192.168.2.150/control?cmd=GPIO,12,0
Das Relais muß ausschalten !
Devices:
1.Device:
Device Switch input
Name Relais
Enabled --> Haken rein
Internal Pull up --> Haken rein
1st GPIO GPIO12 (D6)
Switch Type Switch
Switch Button Type Normal Switch
Send to Controller --> Haken rein
Value 1 Name Relais1
mit Submit abspeichern.
MQTTfx starten, mit ioBroker verbinden.
In Publish in die Eingabezeile eingeben: Wemos_Rel_Rue/GPIO/12
"GPIO" muß groß geschrieben werden !!!
Im unteren großen Feld eine 1 eingeben, Publish neben der Eingabezeile drücken.
Das Relais schaltet ein, gleichzeitig werden in ioBroker in MQTT unter Wemos_rel_Rue
die Punkte GPIO und Relais eingetragen.
Jetzt kann man unter GPIO 12 den Wert von 0 auf 1 ändern, das Relais muß einschalten !!!
Bei Wertänderung auf 0 schaltet das Relais wieder aus.
Der Wert unter Relais1 ändert sich mit, wenn das Wemos z.B. stromlos ist, dann nicht.
Eigentlich schon eine Art Rückmeldung, aber es geht besser.
Kaffee-Pause !!!
Rückmeldung:
Devices:
2.Device:
Dieses Device genau wie das 1.Device anlegen, nur mit Value 1 Name Rueckmeldung.
mit Submit abspeichern.
Reboot des Wemos. Zur Kontrolle:
Jetzt in einem Web-Browser eingeben:
http://192.168.2.150/control?cmd=GPIO,12,1
Das Relais muß einschalten !
Relais wieder ausschalten.
In ioBroker unter Objekte mqtt Wemos_Rel_Rue GPIO 12 den Wert von 0 auf 1 ändern,
das Relais schaltet ein und spätestens jetzt erscheint auch "Rueckmeldung".
Wo genau der Unterschied zwischen dieser Rueckmeldung und dem Wert von Relais1 besteht, weiß ich nicht.
Diese ganze Geschichte ist nicht nur auf meinem Mist gewachsen, ich hatte reichlich Hilfe.
Auch habe ich, während ich dies geschrieben habe, das Ganze an einem neuen Wemos nachvollzogen.
Ich hoffe, mir ist kein Fehler unterlaufen. `
Anbei noch Bilder, wenn noch was unklar ist, bitte melden.
Grüße Ingo
1519_2017-11-02__4_.png
1519_2017-11-02__5_.png
1519_2017-11-02__6_.png
1519_2017-11-02__7_.png
1519_2017-11-02__9_.png
1519_2017-11-02__11_.png -
Wow, tausend Dank erst einmal für die ausführliche Beschreibung!!!
Ich habe mir auch einmal die Mühe gemacht alles komplett neu aufzusetzen. Nur mit einer LED an D6 (GPIO12)
Funktioniert alles, bis auf die Aktion, dass man in ioBroker Admin Objects den Wert händisch von 0 auf 1 ändern, oder zurück.
Da passiert einfach nichts!
Der Wert ändert sich zwar, bei bestätigt steht dann false
Genau wie auch mit dem anderem ESP und den Relais. Ich bekomme es nicht von ioBroker aus gesteuert!
Muss jetzt ins Training und kann auf Wunsch auch heute Abend mal Screens posten.
Grüße
-
… kann auf Wunsch auch heute Abend mal Screens posten. `
Das mach mal bitte! Ich habe heute auch nochmal parallel mitprobiert, sollte eigentlich gehen.
Enrico
-
So, hier sind die Screenshot. Hoffe dass alles dabei ist.
-
Funktioniert alles, bis auf die Aktion, dass man in ioBroker Admin Objects den Wert händisch von 0 auf 1 ändern, oder zurück.
Da passiert einfach nichts!Grüße `
Bestätigung false ist bei mir auch so. GPIO auf 1 ändern wird übernommen, aber nicht bestätigt. Rückmeldung kommt etwas später, ist bestätigt.
Einen kleinen Unterschied habe ich gesehen:
Ob es dass jetzt sein soll?
Nochmal zur Sicherheit, du änderst den Wert bei GPIO, oder?
Enrico
-
geht mal 1 Seite zurück, da sind meine MQTT-Adapter-Einstellungen zu sehen.
Bestätigung false nach Änderung des GPIO-Wertes ist bei mir auch so.
Wert bei Rückmeldung kommt kurz zeitverzögert (0,5 sec)
Grüße Ingo
-
Ja, hatte von Enrico mal die Einstellungen ausprobiert, geht auch nicht. Sogar noch schlimmer, hier geht auch nicht mehr das Schalten über MQTTfx.
Btw. habe ich von MQTTfx die V1.4.2. Da gibt es wohl ein Update, wenn ich das bestätige, kommt "Location not set".
Finde aber nirgends eine Location Einstellung.
Also, nochmal, ich kann von MQTTfx die Werte ändern. Es werden beide Werte auch im ioBroker Admin verändert.
Was eben NICHT geht ist, der Wert des GPIO "händisch" zu ändern, auch nicht per VIS Widget.
Es muss also eigentlich am Datenpunkt liegen, also das schreiben eines Wertes und übermitteln an den MQTT/ESP
Hier mal die Einstellung:
-
hmmmmm…...
sieht bei mir genau so aus,
in meiner Anleitung habe ich ja immer mal beschrieben, wie man zwischendurch mal was testen bzw. auslesen kann.
Bis wohin funktioniert es denn, bzw. ab wo nicht mehr ?
Hast du evtl. den MQTT-Client mit installiert ??? Rausschmeißen.
Mach mal unter Devices bei "Send Boot state" den Haken raus, ist bei mir nicht drin.
Ansonsten habe ich bei deinen Bildern nichts feststellen können.
Nach jeder Änderung der Einstellungen im Wemos reboote ich das Modul, manche Sachen funktionieren erst dann.
Grüße Ingo
-
MQTT Client hatte ich installiert, aber wieder seit einiger Zeit rausgeschmissen. Vielleicht hat der was dauerhaft verstellt?
Send boost state auch ausgehakt und gebootet - keine Besserung.
Wenn ich über MQTTfx den GPIO verstelle wird es normal geloggt im fx, wenn ich über iobroker admin den Wert verändere, kommt im fx-log nichts an.
Also definitiv ein Schreibproblem von ioBroker zu MQTT
-
eben probiert:
Wert in Objekte verändert, im Log von MQTTfx kommt es sauber an.
Momentan habe ich keine Idee mehr, was das sein könnte.
Bin dann gleich im MoBa-Club bis Abend.
Grüße Ingo
-
Dein Objekt ist vom Typ Zeichenkette, bei mir ist der Typ Zahl, was anderes ging glaub ich nicht.
Enrico
-
Beides ausprobiert. NIX.
Bin leider mit meinem Latein am Ende!