Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. [Projekt] Scrolling OLED-display und Sonoff-Relais für iobroker via MQTT

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Projekt] Scrolling OLED-display und Sonoff-Relais für iobroker via MQTT

    This topic has been deleted. Only users with topic management privileges can see it.
    • A
      alexmosel last edited by

      Ah ok, habe ein knx System und kein homematic. …Dann werde ich mal versuchen.

      Display geht , jetzt muss es nur noch werte anzeigen

      Gesendet von meinem SM-G900F mit Tapatalk

      1 Reply Last reply Reply Quote 0
      • Eisbaeeer
        Eisbaeeer Developer last edited by

        @alexmosel:

        Ah ok, habe ein knx System und kein homematic. …Dann werde ich mal versuchen.

        Display geht , jetzt muss es nur noch werte anzeigen

        Gesendet von meinem SM-G900F mit Tapatalk ` Wenn es nur um die Anzeige der Werte auf dem Display Geht, kannst du die auch per Http GET an das Display schicken. Weiter oben hab ich dir ein fix und fertiges Script als Beispiel genannt. JavaScript Adapter installieren und fertig.

        Eisbaeeer

        1 Reply Last reply Reply Quote 0
        • A
          alexmosel last edited by

          Hallo nochmal,

          sorry für die vielen blöden Fragen…

          schedule("*/30 * * * *",  function () { // alle 30 Minuten - für Tests ggf auskommentieren
          
          setState("mqtt.0.easy_wemo.cmd","wemo,1,T_aussen"); // Beschriftungszeilen setzen  via MQTT
          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; // HM-Datenpunkte auslesen und in Variablen schreiben
          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"); // Variablen nach ESP8266 schreiben  via MQTT
          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");
          
          }); // für Tests ggf auskommentieren
          

          meinst du das Script ? Das basiert doch auch auf mqtt ?

          Habe eben ein bisschen damit rum probiert, passiert aber leider auf dem Display nüscht

          1 Reply Last reply Reply Quote 0
          • A
            alexmosel last edited by

            Hallo nochmal,

            ich gehe davon aus, das ist der Quellcode:

                var befehl = "http://192.168.1.108/control?cmd=Display,"; //hier deine url eingeben
                var request_oled = require('request');
                var einheit1 = " Grad";
                var einheit2 = " km/h";
            
                var zeile1 = "1,";
                var zeile2 = "2,";
                var zeile3 = "3,";
                var zeile4 = "4,";
                var zeile5 = "5,";
                var zeile6 = "6,";
                var zeile7 = "7,";
                var zeile8 = "8,";
                var zeile9 = "9,";
                var zeile10 = "10,";
                var zeile11 = "11,";
                var zeile12 = "12,";
            
                function sendData () {
            
                var data1 = getState("hm-rpc.0.HEQ0237810.1.TEMPERATURE").val;
                var data2 = getState("yr.0.forecast.day0.text").val;
                var data3 = getState("yr.0.forecast.day0.temperature_max").val;
                var data4 = getState("yr.0.forecast.day0.wind_direction").val;
                var data5 = getState("yr.0.forecast.day0.wind_speed").val;
            
                      request_oled(befehl+zeile2+data2,function (error, response, body) {
                            log('error: ' +error); // Print the error if one occurred
                      }); 
                      request_oled(befehl+zeile4+data1+einheit1,function (error, response, body) {
                            log('error: ' +error); // Print the error if one occurred
                      });
                      request_oled(befehl+zeile6+data3+einheit1,function (error, response, body) {
                            log('error: ' +error); // Print the error if one occurred
                      });
                      request_oled(befehl+zeile8+data4+"-"+data5+einheit2,function (error, response, body) {
                            log('error: ' +error); // Print the error if one occurred
                      });
            
                    }
            
                schedule("*/30 * * * *", function () {                                  //oder!! soll entweder ausgelöst werden alle 30 Minuten
                   log("===>Will be triggered every 30 minutes!"); 
                   sendData();
                });
                sendData();
            
            

            Habe den Javascript adapter installiert und Script 1 den Text reinkompiert….

            Wenn ich den Befehl 192.168.1.53/control?cmd=Anzeige,1,Hallo

            in die Adresszeile meines Browers schreibe, dann gibt das Display das in Zeile 1 wieder, das klappt...

            Ich denke um auf den Modbus-Wert zuzugreifen müsste dann modbus.0.inputRegisters.30775_PV-Erzeugung in dem Script stehen.

            Ich schaffe es aber nicht, dass das Script überhaupt irgendwas tut.

            In Zeile 1 soll z.b. stehen PV Aktuell

            und in zeile 2 eben der Modbus-Wert

            Wie oft kann man das denn aktualisieren, ohne dass der Flash-Speicher abraucht....die PV Werte ändern sich ja regelmäßig, also würde ein Intervall von sagen wir mal 5-10 min schon Sinn machen...geht das überhaupt ?

            1 Reply Last reply Reply Quote 0
            • A
              alexmosel last edited by

              schonwieder ich :mrgreen:

              Habe den Fehler gefunden, hatte zwar das Script gestartet, den Java-Adapter allerdings nicht….

              Es zeigt jetzt einen Wert an....

              Soweit so gut..

              Fragen gibts, immernoch...

              Wie kann man oben den Empfangsbalken, Uhrzeit (0:00 -- ich finde nirgends eine NTP einstellung für die Zeit) und D1-mini Name abschalten und dafür die 2 Zeilen groß auf dem Display darstellen ?

              Vielen Dank bis hier hin....MFG

              1 Reply Last reply Reply Quote 0
              • A
                alexmosel last edited by

                Hallo,

                NTP habe ich gefunden, sehr versteckt…

                Habe ein wenig mit anderer Firmware rumprobiert, komisch ist, dass wenn ich die ursprüngliche wieder einspiele alle meine Einstellungen auch wieder da sind.

                Habe für NodeMCDU ein Flashtool gefunden mit dem man wohl den Speicher komplett löschen kann, nach Durchlauf des Tools irritiert das Modul meinen Windows PC...Mauszeiger springt wie blöde hin und her.

                Nach flashen der anderen Firmware (schwierig wegen Mauszeiger) sind dann wieder alle Einstellungen da...also wie bekommt man das Ding komplett resettet ?

                Was ich immernoch suche ist ne Lösung wie knospers, dass das ganze 2 Zeilig über die gesamte Displaygröße angezeigt wird.

                Was ich mich auch noch frage ist, wie oft das Script die Werte ans Display sendet...kann man das einstellen dass er nur in 100er Schritten überträgt z.b. ?

                Schönes WE

                1 Reply Last reply Reply Quote 0
                • W
                  wilddog1806 last edited by

                  Hallo, das Thema ist zwar schon etwas älter aber für mich gerade aktuell.

                  Die Daten über MQTT an ein 20x4 Zeichen LCD zu senden habe ich inzwischen hinbekommen, aber ich komme mit dem OLED nicht weiter.

                  Liegt wohl doch an der ESPEasy Version 😞

                  Könnte mir jemand die R148 Version von Starfish zur Verfügung stellen ? Das wäre prima.

                  Kann leider (noch) keine PN verschicken sonst hätte ich Starfish direkt angeschrieben.

                  Vielen Dank schon mal.

                  Beste Grüße

                  1 Reply Last reply Reply Quote 0
                  • S
                    starfish last edited by

                    @wilddog - du hast PN

                    1 Reply Last reply Reply Quote 0
                    • W
                      wilddog1806 last edited by

                      @starfish

                      besten Dank, werde es heute Abend mal testen. Kann leider auch auf Deine PN nicht per PN antworten …

                      1 Reply Last reply Reply Quote 0
                      • W
                        wilddog1806 last edited by

                        So, Projekt "Kontrollbox mit OLED" erst mal soweit abgeschlossen. Evtl. noch bissel was für die Optik tun.

                        • altes Speedportgehäuse

                        • Drucktaster

                        • 1x GPIO Expander PCF8574

                        • 1x OLED

                        • 1x NodeMCU 12F

                        5295_wz_control_oled.jpg

                        Mit den 8 Tasten steuere ich verschiedene Scripte auf dem IoBroker.

                        @Starfish

                        nochmal 1000 Dank für die Bereitstellung der Firmware.

                        1 Reply Last reply Reply Quote 0
                        • K
                          klassisch Most Active last edited by

                          [halb-OT -ESPeasy Frage]

                          Hallo,

                          meine bisherigen ESP8266 bzw. ES32 Sensoren/Aktoren liefern Daten direkt an HM bzw. ioBroker - ohne MQTT

                          Jetzt möchte ich mal ESPeasy testen, evtl als Basis für künftige Entwicklungen, dann künftig eher auf ESP32.

                          Derzeitger Stand: ESPeasy ist mal auf einem D1 mini.

                          Bei der Konfiguration kann man "Generic HTTP" wählen. Das klingt interessant, so könnte man vielleicht direkt an den simpleAPI einliefern.

                          Als Beispiel wird angegeben:

                          demo.php?name=%sysname%&task=%tskname%&valuename=%valname%&value=%value%
                          

                          ioBroker simpleApi erwartet eines der folgenden Anweisungen

                          {
                            "getPlainValue": "http://ipaddress:8087/getPlainValue/stateID",
                            "get": "http://ipaddress:8087/get/stateID/?prettyPrint",
                            "getBulk": "http://ipaddress:8087/getBulk/stateID1,stateID2/?prettyPrint",
                            "set": "http://ipaddress:8087/set/stateID?value=1&prettyPrint",
                            "toggle": "http://ipaddress:8087/toggle/stateID&prettyPrint",
                            "setBulk": "http://ipaddress:8087/setBulk?stateID1=0.7&stateID2=0&prettyPrint",
                            "objects": "http://ipaddress:8087/objects?pattern=system.adapter.admin.0*&prettyPrint",
                            "objects": "http://ipaddress:8087/objects?pattern=system.adapter.admin.0*&type=adapter&prettyPrint",
                            "states": "http://ipaddress:8087/states?pattern=system.adapter.admin.0*&prettyPrint"
                          }
                          

                          Also wenn ich Daten einliefern möchte eines der beiden:

                          {

                          "set": "http://ipaddress:8087/set/stateID?value=1&prettyPrint",

                          "setBulk": "http://ipaddress:8087/setBulk?stateID1= … rettyPrint",

                          }

                          gesendet wird dann bei mir z.B. folgendes

                          IPdesioBrokers:8087/GET /setBulk?&data.0.weather.garden.Temp-SHT31=16.59&data.0.weather.garden.Humid-SHT31=41.80&data.0.weather.garden.Humid-abs-SHT31=5.90&prettyPrint

                          Wobei man auf das &prettyPrint auch verzichten kan.

                          Ist es durch geschickte Wahl des Templates und der Namen/Identifier in ESPeasy möglich, einen solchen String ohne umprogrammieren zu erzeugen?

                          P.S: Was mir bei ESPeasy gar nicht schmeckt: In security.dat stehen die wifi credentials in Klartext

                          1 Reply Last reply Reply Quote 0
                          • Eisbaeeer
                            Eisbaeeer Developer last edited by

                            @wilddog1806:

                            So, Projekt "Kontrollbox mit OLED" erst mal soweit abgeschlossen. Evtl. noch bissel was für die Optik tun. `

                            Kontrollzentrale 😄

                            1 Reply Last reply Reply Quote 0
                            • B
                              blackplanet333 last edited by

                              @wilddog1806:

                              @starfish

                              besten Dank, werde es heute Abend mal testen. Kann leider auch auf Deine PN nicht per PN antworten … `

                              @starfish

                              @wilddog1806

                              Könnte ich auch diese R148 Version bekommen? Wäre echt klasse!

                              1 Reply Last reply Reply Quote 0
                              • thexbrain
                                thexbrain last edited by

                                Ich wollte mir in den Flur einen Sonoff Touch verbauen.

                                Ich wollte das so realisieren wenn ich auf den Sonoff Touch drücke dann bekomme ich eine Nachricht per Telegram auf das Handy ob die Fenster auf sind.

                                Jetzt die frage, könnte man auch so ein OLED Display über den Sonoff Touch laufen lassen ?

                                Bei Tastendruck auf den Sonoff Touch bekomme ich eine Info auf dem OLED Display ob z.b Fenster auf sind.
                                4720_sonoff-touch-flash.jpg

                                1 Reply Last reply Reply Quote 0
                                • A
                                  Alveran last edited by

                                  Habe mir jetzt den ganzen Thread durchgelesen und bin zu dem Entschluss gekommen das brauche ich auch. 😄 😄 😄

                                  Leider werde ich nicht ganz schlau welche OLED Displays jetzt Definitiv funktionieren und wo es die wenigsten Probleme gibt.

                                  Hat jemand vielleicht einen aktuellen link? Ebay DE oder Amazon

                                  Hab beim Ali gerade das noch gefunden:

                                  https://de.aliexpress.com/item/0-96-zol … 88ec3777-0

                                  Würde das auch funktionieren?

                                  1 Reply Last reply Reply Quote 0
                                  • thexbrain
                                    thexbrain last edited by

                                    @Alveran:

                                    Habe mir jetzt den ganzen Thread durchgelesen und bin zu dem Entschluss gekommen das brauche ich auch. 😄 😄 😄

                                    Leider werde ich nicht ganz schlau welche OLED Displays jetzt Definitiv funktionieren und wo es die wenigsten Probleme gibt.

                                    Hat jemand vielleicht einen aktuellen link? Ebay DE oder Amazon

                                    Hab beim Ali gerade das noch gefunden:

                                    https://de.aliexpress.com/item/0-96-zol … 88ec3777-0

                                    Würde das auch funktionieren? `

                                    Ja geht mir genau so 😄

                                    Habe einen Beitrag dadrüber auch gefragt was ich vor habe ob das möglich sei aber irgendwie scheint der Thread hier nicht mehr aktiv zu sein.

                                    Meldet sich keiner mehr 😛

                                    1 Reply Last reply Reply Quote 0
                                    • A
                                      Alveran last edited by

                                      Mhh schade.

                                      Hast du schon ein Display bestellt?. Das Auslösen einer Aktion mit deinem Taster sollte ohne Probleme Möglich sein.

                                      1 Reply Last reply Reply Quote 0
                                      • thexbrain
                                        thexbrain last edited by

                                        @Alveran:

                                        Mhh schade.

                                        Hast du schon ein Display bestellt?. Das Auslösen einer Aktion mit deinem Taster sollte ohne Probleme Möglich sein. `

                                        Ne auch noch nicht. Weis auch noch nicht so richtig welches Display richtig ohne Probleme funktioniert.

                                        Mein Script funktioniert soweit mit Schalter und Telegram Nachricht.

                                        Nur weis ich nicht ob man das Oled Display an den Sonoff Touch anschließen kann.

                                        3,3V usw. hat der Sonoff ja.

                                        Mal abwarten vlt. kann ja doch noch einer was dazu sagen.

                                        1 Reply Last reply Reply Quote 0
                                        • G
                                          George_Best last edited by

                                          @Alveran:

                                          Habe mir jetzt den ganzen Thread durchgelesen und bin zu dem Entschluss gekommen das brauche ich auch. 😄 😄 😄

                                          Leider werde ich nicht ganz schlau welche OLED Displays jetzt Definitiv funktionieren und wo es die wenigsten Probleme gibt.

                                          Hat jemand vielleicht einen aktuellen link? Ebay DE oder Amazon

                                          Hab beim Ali gerade das noch gefunden:

                                          https://de.aliexpress.com/item/0-96-zol … 88ec3777-0

                                          Würde das auch funktionieren? `

                                          Aus der Google-Translation der Ali-Produktseite werde ich leider nicht so recht schlau. Soll das ein Entwicklungsboard sein oder ein Display? Oder beides?!

                                          Ich habe eine 128X64 OLED LCD Display SSD1306 (einfach mal Googlen oder ebay) an einem Wemos D1 Mini (z.B. https://www.amazon.de/AZDelivery-D1-Min … os+d1+mini).

                                          Den Wemos D1 Mini habe ich mit ESP Mega geflasht. Danach ist das Display recht einfach mit ioBroker via MQTT ansprechbar.

                                          Hier ein Teil der Anleitung:

                                          viewtopic.php?f=34&t=16017#p172296

                                          1 Reply Last reply Reply Quote 0
                                          • A
                                            Alveran last edited by

                                            Ich denke das Teil bei Ali soll beides sein.

                                            Wemos D1 Mini habe ich mehrere da. Danke. Aber welches Display hast du genau gekauft?

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            447
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            23
                                            131
                                            35191
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo