NEWS
[Projekt] Scrolling OLED-display und Sonoff-Relais für iobroker via MQTT
-
Hallo nochmal…
Heute kam ein Wemos D1 mini an (4M). Ich habe die Firmware ESP Easy drauf bekommen. Es geht viel einfacher wie die Anleitung hier hergibt...
Bei Bedarf kann ich etwas mehr dazu sagen. Ich habe aber nicht die Software IDE benutzen müssen. Wie auch immer... Ich habe eine feste IP vergeben,ebenso alles andere nach Anleitung hier abgeändert.
Die Controller IP Adresse wird doch die vom IObroker sein richtig ???
Unter Devices habe ich nur Display - OLED SSD1306 mit GPIO 4,5 stehen. ****Ist das so richtig ?****Ich möchte mir ein paar Sachen vom Vis auf das Display anzeigen lassen. Auf das Display warte ich noch….
Bis dato habe ich keine Software IDE oder ein Sketch abgeloadet... ? Wie soll das funktionieren? Ich nehme mal an dass jetzt noch ein MQTT Adapter beim Vis benötigt wird. Es gibt sogar noch nen Client vom MQTT… Was muß ich für mein Vorhaben installieren ?
@Starfish- kannst Du mich etwas aufklären? Ich befürchte dass ich noch nen Sketch dazu brauche, bin mir aber nicht wirklich sicher…
-
@knopers1, Welche Version hast Du geflasht? (und wie - mit dem loader?)
Die Controller-IP ist richtig, die vom iobroker. Im iobroker den Server aktivieren (hast Du wohl schon: mqtt.0), wie beschrieben (nicht client, bzw. client adapter).
GPIO 4 und 5 stimmt, falls Du das hardwaremässig auch so verdrahtest.
Einen neuen Sketch brauchst Du nicht.
-
@knopers1, Welche Version hast Du geflasht? (und wie - mit dem loader?)
Die Controller-IP ist richtig, die vom iobroker. Im iobroker den Server aktivieren (hast Du wohl schon: mqtt.0), wie beschrieben (nicht client, bzw. client adapter).
GPIO 4 und 5 stimmt, falls Du das hardwaremässig auch so verdrahtest.
Einen neuen Sketch brauchst Du nicht. `
hi, danke für Deine Antwort,
ich habe die ESPEasy_R120 installier, die ESPEasy_R147_RC8 konnte ich nicht installieren. Bin aber davon ausgegangen, dass ich die R147 benötige…war wohl nicht der Fall... :? Ich habe die Datei ESPEasy_R120_4096.bin mit dem Loader geflasht!
-
Jetzt noch mal den MQTT Server installiert, ich glaube dass es gut aussieht… :lol:
Im Vis bekomme ich schon etwas zu sehen. Adapter ist auch laut grüner LED verbunden.
1526_unbenannt1.png
1526_unbenannt2.png -
ja, sieht gut aus. Ich bin allerdings nicht sicher, ob das scrolling display aktiv ist. da sollte bei der Auswahl "Display - OLED SSD1306 Framed" vorhanden sein. Deshalb hatte ich ja bei der Version R120 / R148 den komplizierten Weg gewählt. Bei den letzten Modulen hatte ich die Version
https://github.com/letscontrolit/ESPEas … 0-dev7.zip verwendet, allerdings nicht die .bin mit dem loader, sondern mit der ide-software compiled und uploaded. Vielleicht kannst Du das mal testen. In dieser Version sind fast alle Treiber schon eingebaut, auch das scrolling display.
-
ja, sieht gut aus. Ich bin allerdings nicht sicher, ob das scrolling display aktiv ist. da sollte bei der Auswahl "Display - OLED SSD1306 Framed" vorhanden sein. Deshalb hatte ich ja bei der Version R120 / R148 den komplizierten Weg gewählt. Bei den letzten Modulen hatte ich die Version
https://github.com/letscontrolit/ESPEas … 0-dev7.zip verwendet, allerdings nicht die .bin mit dem loader, sondern mit der ide-software compiled und uploaded. Vielleicht kannst Du das mal testen. In dieser Version sind fast alle Treiber schon eingebaut, auch das scrolling display. `
o.k, erledigt… bei der neusten Version ESPEasy_v2.0.0-dev7 gibt es auch einen Loader, das Übertragen hat hier auch bestens funktioniert. Jetzt gibt es auch die Auswahl mit OLED SSD1306 Framed :mrgreen: Sollte also passen. Gerade noch ein NTP-Server entdeckt.Jetzt kennt das Teil auch noch Datum und Uhrzeit :mrgreen: , dies werde ich bestimmt noch irgendwo gebrauchen können...
Ich habe die ESPEasy_v2.0.0-dev7_normal_4096.bin geflasht.
Es gibt aber auch noch ESPEasy_v2.0.0-dev7_test_4096.bin und ESPEasy_v2.0.0-dev7_dev_4096
Wo sind hier die Unterschiede ?
Gruß Lukas
1526_unbenannt3.png -
cool - habs eigentlich nicht anders erwartet. test und dev sind Test und Entwicklungsversionen bei den Addons, die würde ich sowieso z.Zt. nicht verwenden, ausser wenn ich ein bestimmtes addon brauche. Das Menu ist etwas anders strukturiert. Da musst Du halt ggf. etwas suchen.
-
Danke dir.
die Daten kommen definitiv beim IObroker an. Habe zwar kein Display noch dran, konnte aber einige Daten wie zb. Uptime, FreeRam,Systemload richtung Vis übertragen… Ich gehe davon aus, dass es in die andere Richtung auch funktionieren sollte, muß aber noch paar Tage auf das Display warten... Geniales Teil, ich werde noch etwas damit Spielen um zu gucken was noch möglich ist. Eine Bestellung bei AliExs. verschiedener Sensoren,Displays, Fühler habe ich auch schon gemacht. Eine Wetterstation mit BME280 möchte ich auch noch bauen.
-
Hallo,
die erste Lieferung ist da. Leider ein Oled Display mit 7 Pins.
Laut Beschreibung aber für Driver IC: SSD1306. Somit sollte das Teil funktionieren.
Ich habe das Display direkt an den ESP8260 verdrahtet.
VCC vom Display an 3.3V beim ESP. GND mit G verbunden. Somit ist die Spannungsversorgung gegeben.
Jetzt hänge ich fest, da es ein Display mit SPI Interface ist und kein I2C… Der zweite ist auch schon bestellt, allerdings noch nicht angekommen.
Wie verdrahte ich das Teil?
Ich versuchte bereits den Pin D0 vom Display (SCL ???) an Pin GPIO-4
und den Pin D1 (vermutlich SDA) an GPIO-5 des ESP8260 zu verbinden. Leider bleibt das Display schwarz.
Jemand von Euch, der das Display zum Laufen gebracht hat? Vermutlich geht es mit der I2C Schnittstelle einfacher….
1526___57.jpg -
ja, schade, SPI ist natürlich nicht dasselbe wie I2C - theoretisch geht SPI auch mit ESP8266 - auf die Schnelle habe ich gefunden: https://odd-one-out.serek.eu/esp8266-no … splay-spi/ aber das ist dann halt nicht ganz dasselbe.
-
Für I2C mußt du auf der Rückseite Widerstände umlöten.
-
Danke, schöne Seite. Aber mit meinem Parkinson Syndrom bekomme ich es nicht hin…
Spass bei Seite. Ich habe schon einiges gabaut und gelötet. Aber diese winzigen SMD Widerstände sind doch für mein Können etwas zu klein geraten. Da warte ich lieber aud das I2C Display.
-
@starfisch
das Display läuft jetzt. Ich habe heute ein I2C Display bekommen. MQTT ist installiert und verbunden. Kannst Du mir erklären wie ich jetzt z.b ein Wert (Außentemperatur) auf das Display bekomme?
-
@knopers bin grad unterwegs - kann erst heute abend genauer schauen. versuchs mal mit dem js script, hier im thread. (angepasst an deine datenpunkte)
-
Puhh, Danke Dir!
Du meinst das hier?
schedule("*/30 * * * *", function () { // alle 30 Minuten setState("mqtt.0.easy_wemo.cmd","wemo,1,T_aussen"); setState("mqtt.0.easy_wemo.cmd","wemo,3,Wohnzimmer"); setState("mqtt.0.easy_wemo.cmd","wemo,5,Keller"); var temp=getState("hm-rpc.2.IEQ0020678.1.TEMPERATURE").val; var wz_t=getState("hm-rpc.2.MEQ0476362.1.TEMPERATURE").val; var wz_h=getState("hm-rpc.2.MEQ0476362.1.HUMIDITY").val; var k_t=getState("hm-rpc.2.MEQ0477427.1.TEMPERATURE").val; var k_h=getState("hm-rpc.2.MEQ0477427.1.HUMIDITY").val; setState("mqtt.0.easy_wemo.cmd","wemo,2,"+temp+" °C"); setState("mqtt.0.easy_wemo.cmd","wemo,4,"+wz_t+" °C / "+wz_h+" %rH"); setState("mqtt.0.easy_wemo.cmd","wemo,6,"+k_t+" °C / "+k_h+" %rH"); });
Ich versuche es zu verstehen. Schlauer bin ich aber trotzdem nicht geworden.
Dies dürfte die Zeile 1,3,5 sein mit der Raumbeschreibung was im Display ausgegeben wird? Muß ich den markierten Namen "easy_wemo" an meinem Namen anpassen? Bei mir heißt es ESP1 und wird im Display zwischen der Uhrzeit und Signalstärke angezeigt. ?
setState("mqtt.0.easy_wemo.cmd","wemo,1,T_aussen");
setState("mqtt.0.easy_wemo.cmd","wemo,3,Wohnzimmer");
setState("mqtt.0.easy_wemo.cmd","wemo,5,Keller");
Das sind die hm-Geräte die abgefragt werden?
var temp=getState("hm-rpc.2.IEQ0020678.1.TEMPERATURE").val;
var wz_t=getState("hm-rpc.2.MEQ0476362.1.TEMPERATURE").val;
var wz_h=getState("hm-rpc.2.MEQ0476362.1.HUMIDITY").val;
var k_t=getState("hm-rpc.2.MEQ0477427.1.TEMPERATURE").val;
var k_h=getState("hm-rpc.2.MEQ0477427.1.HUMIDITY").val;
Abgefragt wurde auch dieses HM-Gerät "hm-rpc.2.IEQ0020678.1"(T_aussen). Was ist das für ein Gerät genau???Kann ich dazu einen HM-Heizungsthermostat abfragen?
Zeile 2 gehört zu der Zeile 1 für T_aussen, deshalb nur die Temperatur auf dem Display ohne Luftfeuchte bei Dir im Display…
Dann gibt es noch diese hier mit Luftfeuchte für Wohnzimmer und Keller. Zusammen sind es drei Geräte die abgefragt werden.
"hm-rpc.2.MEQ0476362.1.TEMPERATURE" //Sind es Wandthermostate???
"hm-rpc.2.MEQ0476362.1.HUMIDITY"
"hm-rpc.2.MEQ0477427.1.TEMPERATURE"
"hm-rpc.2.MEQ0477427.1.HUMIDITY"
Hierzu die Konfig für Zeile 2,4 und 6… Vermutlich auch hier muß der Name angepasst werden.
setState("mqtt.0.easy_wemo.cmd","wemo,2,"+temp+" °C");
setState("mqtt.0.easy_wemo.cmd","wemo,4,"+wz_t+" °C / "+wz_h+" %rH");
setState("mqtt.0.easy_wemo.cmd","wemo,6,"+k_t+" °C / "+k_h+" %rH");
****Kannst Du etwas helfen? Was ist wenn ich einen Wemo abfragen möchte, welches Temperatur/Feuchte an IOBroker sendet?
Ganz genau habe ich ein Wemo mit einem DHT22 Sensor testweise am laufen, welches Temperatur/Feuchte an die Variable in der CCU schreibt???
Oder eine Wetterstation, die mit 433 Mhz über RFLINK gekoppelt ist? Und vor allem, wo soll dieses Script hin? IOBroker, CCU? Wo genau? MQTT ist als Adapter unter IOBroker installiert. Deine Beschreibung zeigt aber eine Konfiguration unter Windows???
Kannst Du hier ein Beispiel geben? Ich blick es nicht durch…bzw. die Funktion ist mir nicht ganz klar...****
-
@knopers1 - Du hast PM
-
@starfisch
das Toll für windows, was man unten im Bild sieht, was kommt dort fü Benutzername und Passwort? Frei erfinden, ober vorher irgendwo registrieren???
Evtl. das Passwort vom MQTT Adapter unter IOBroker ????
Kannst Du etwas dazu schreiben?
1526_mqtt-tool-2.png
1526_unbenannt.png -
@starfisch
das Toll für windows, was man unten im Bild sieht, was kommt dort fü Benutzername und Passwort? Frei erfinden, ober vorher irgendwo registrieren???
Evtl. das Passwort vom MQTT Adapter unter IOBroker ????
Kannst Du etwas dazu schreiben? `
Da due daten zu einem MQTT server schicken moechtest muessen hier die datan vom MQTT server rein.
Laut deinen screenshots ist iObroker der MQTT server, also IP = iObroker IP und username/pass/port = gleich an iObroker MQTT server configuration
(benutze dasselbe concept mit anderen geraeten)
Greetz,
Dutch
-
@starfisch
das Toll für windows, was man unten im Bild sieht, was kommt dort fü Benutzername und Passwort? Frei erfinden, ober vorher irgendwo registrieren???
Evtl. das Passwort vom MQTT Adapter unter IOBroker ????
Kannst Du etwas dazu schreiben? `
Wie Dutchman schon schreibt, user und passw. und IP vom MQTT-Server einsetzen, in Deinem Fall ist es wohl der iobroker adapter (wie in der Anleitung gezeigt).
http://forum.iobroker.net/viewtopic.php … 460#p55591
und die Konfig von mqtt.fx
http://forum.iobroker.net/viewtopic.php ... 460#p55622
Es ist ein grosser Vorteil, wenn Du dieses Tool verwendest, so kannst Du sehen, was passiert, u.A. auch zur Fehlersuche ganz brauchbar.
-
ich habe Verbindung! Allerdings habe ich echt keine Ahnung, was ich damit anstellen sollte. Wo kommt dein Script hin? Ich nehme an, dass ich die Datenpunkte anpassen muß… Kannst Du helfen? Unter IObroker mqtt.o/ESP1/ ist ein CMD entstanden... Dort ändert sich der Text, sobald ich unter mqtt.fx Windows Anwendung diesen Text Publishe... Am Display tut sich nichts... Wie muß ich damit arbeiten, damit ich Daten in das Display bekomme?
1526_unbenannt.png
1526_unbenannt1.png
1526_unbenannt2.png
1526_unbenannt3.png
1526_unbenannt4.png