Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Praktische Anwendungen (Showcase)
  4. ESP Matrix Anzeige fully IoBroker steuerbar

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.4k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.6k

ESP Matrix Anzeige fully IoBroker steuerbar

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
esp8266matrix displaymax 7219
460 Beiträge 31 Kommentatoren 110.5k Aufrufe 45 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • liv-in-skyL liv-in-sky

    @JB_Sullivan sorry - da ist @joergeli zuständig

    JB_SullivanJ Offline
    JB_SullivanJ Offline
    JB_Sullivan
    schrieb am zuletzt editiert von JB_Sullivan
    #156

    @liv-in-sky ich habe joergeli seine Version runter geworfen, nachdem auch ich es endlich geschaft habe, deine Version fehlerfrei zu komplilieren. Jetzt sitze ich aber schon eine ganze Zeit daran eine Verbindung zu Stande zu bekommen. Im Display wird mir immer htp Failure angezeigt.

    Habe alles so gemacht wie bei deiner GIT Anleitung, außer das ich eine statische IP (die vom WEMOS) vergeben habe.

    Also die Vergebene IP finde ich im Netzwerk. Mein Problem ist, das ich nicht weiß was ich bei dem simple API Adapter einstellen muss.

    ioBroker auf Intel Core i3-5005U NUC und Windwos10 Pro

    liv-in-skyL 1 Antwort Letzte Antwort
    0
    • JB_SullivanJ JB_Sullivan

      @liv-in-sky ich habe joergeli seine Version runter geworfen, nachdem auch ich es endlich geschaft habe, deine Version fehlerfrei zu komplilieren. Jetzt sitze ich aber schon eine ganze Zeit daran eine Verbindung zu Stande zu bekommen. Im Display wird mir immer htp Failure angezeigt.

      Habe alles so gemacht wie bei deiner GIT Anleitung, außer das ich eine statische IP (die vom WEMOS) vergeben habe.

      Also die Vergebene IP finde ich im Netzwerk. Mein Problem ist, das ich nicht weiß was ich bei dem simple API Adapter einstellen muss.

      liv-in-skyL Offline
      liv-in-skyL Offline
      liv-in-sky
      schrieb am zuletzt editiert von
      #157

      @JB_Sullivan

      lust auf anydesk oder teamviewer

      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

      JB_SullivanJ 1 Antwort Letzte Antwort
      0
      • liv-in-skyL liv-in-sky

        @JB_Sullivan

        lust auf anydesk oder teamviewer

        JB_SullivanJ Offline
        JB_SullivanJ Offline
        JB_Sullivan
        schrieb am zuletzt editiert von
        #158

        @liv-in-sky Sorry - war einkaufen - heute Abend vielleicht über Discord? Habe leider kein Teamviewer und jetzt auch keine Zeit mehr.

        ioBroker auf Intel Core i3-5005U NUC und Windwos10 Pro

        liv-in-skyL 1 Antwort Letzte Antwort
        0
        • JB_SullivanJ JB_Sullivan

          @liv-in-sky Sorry - war einkaufen - heute Abend vielleicht über Discord? Habe leider kein Teamviewer und jetzt auch keine Zeit mehr.

          liv-in-skyL Offline
          liv-in-skyL Offline
          liv-in-sky
          schrieb am zuletzt editiert von
          #159

          @JB_Sullivan

          bis 19:00 wäre ok - meld dich nochmal

          nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

          JB_SullivanJ 1 Antwort Letzte Antwort
          0
          • liv-in-skyL liv-in-sky

            @JB_Sullivan

            bis 19:00 wäre ok - meld dich nochmal

            JB_SullivanJ Offline
            JB_SullivanJ Offline
            JB_Sullivan
            schrieb am zuletzt editiert von JB_Sullivan
            #160

            @liv-in-sky bist du auch bei Discord - ich meine da in dem neuen ioB Channel?

            https://discord.com/channels/743167951875604501/743167952303554620

            ioBroker auf Intel Core i3-5005U NUC und Windwos10 Pro

            liv-in-skyL 1 Antwort Letzte Antwort
            0
            • JB_SullivanJ JB_Sullivan

              @liv-in-sky bist du auch bei Discord - ich meine da in dem neuen ioB Channel?

              https://discord.com/channels/743167951875604501/743167952303554620

              liv-in-skyL Offline
              liv-in-skyL Offline
              liv-in-sky
              schrieb am zuletzt editiert von
              #161

              @JB_Sullivan ja -habe aber nur mal reingeschaut - was ich machen muss um screen zu teilen bzw du - keine ahnung

              anydesk wäre aber backup lösung - kann man direkt ausführen und muss nicht installiert werden - ist echt gutes tool

              nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

              JB_SullivanJ 1 Antwort Letzte Antwort
              0
              • liv-in-skyL liv-in-sky

                @JB_Sullivan ja -habe aber nur mal reingeschaut - was ich machen muss um screen zu teilen bzw du - keine ahnung

                anydesk wäre aber backup lösung - kann man direkt ausführen und muss nicht installiert werden - ist echt gutes tool

                JB_SullivanJ Offline
                JB_SullivanJ Offline
                JB_Sullivan
                schrieb am zuletzt editiert von JB_Sullivan
                #162

                @liv-in-sky OK -anydesk geht wie? - habs gerade installiert und jetzt?

                ioBroker auf Intel Core i3-5005U NUC und Windwos10 Pro

                liv-in-skyL 2 Antworten Letzte Antwort
                0
                • JB_SullivanJ JB_Sullivan

                  @liv-in-sky OK -anydesk geht wie? - habs gerade installiert und jetzt?

                  liv-in-skyL Offline
                  liv-in-skyL Offline
                  liv-in-sky
                  schrieb am zuletzt editiert von
                  #163

                  @JB_Sullivan

                  downloaden und aufrufen - dann rufen wir uns zusammen ( ich habe kein micro am gerät)

                  https://anydesk.com/de/downloads/windows

                  nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                  1 Antwort Letzte Antwort
                  0
                  • JB_SullivanJ JB_Sullivan

                    @liv-in-sky OK -anydesk geht wie? - habs gerade installiert und jetzt?

                    liv-in-skyL Offline
                    liv-in-skyL Offline
                    liv-in-sky
                    schrieb am zuletzt editiert von
                    #164

                    @JB_Sullivan aufrufen und da gibt es eine nummer die ich brauche um mich zu verbinden - dann bestätigst du, dass die verbindung ok ist - das war's

                    nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                    JB_SullivanJ 2 Antworten Letzte Antwort
                    0
                    • liv-in-skyL liv-in-sky

                      @JB_Sullivan aufrufen und da gibt es eine nummer die ich brauche um mich zu verbinden - dann bestätigst du, dass die verbindung ok ist - das war's

                      JB_SullivanJ Offline
                      JB_SullivanJ Offline
                      JB_Sullivan
                      schrieb am zuletzt editiert von
                      #165

                      @liv-in-sky Nummer habe ich - bekommst du per PN

                      ioBroker auf Intel Core i3-5005U NUC und Windwos10 Pro

                      1 Antwort Letzte Antwort
                      0
                      • liv-in-skyL liv-in-sky

                        @JB_Sullivan aufrufen und da gibt es eine nummer die ich brauche um mich zu verbinden - dann bestätigst du, dass die verbindung ok ist - das war's

                        JB_SullivanJ Offline
                        JB_SullivanJ Offline
                        JB_Sullivan
                        schrieb am zuletzt editiert von
                        #166

                        @liv-in-sky vielen Dank nochmal für das nette Gespräch und vor allen Dingen die erfolgreiche Lösung der vielen kleinen Problemchen ;)

                        ioBroker auf Intel Core i3-5005U NUC und Windwos10 Pro

                        1 Antwort Letzte Antwort
                        1
                        • JB_SullivanJ JB_Sullivan

                          Einen guten Morgen zusammen, speziell @joergeli und @liv-in-sky .

                          Ich habe mir die Hardware nun zusammengebaut und mich mit Arduino soweit beschäftigt, das ich es hin bekommen habe das Sketch von joergeli fehlerfrei kompiliert und übertagen zu bekommen. Hatte davor noch nichts mit Arduiono zu tun und muss sagen das dass ein ganz schöner Zirkus ist, bis man alle Bibliotheken zusammen gesammelt hat.

                          Wie dem auch sei, das Sketch wurde um meine persönlichen Netzwerkeinstellungen geändert und auf den WEMOS D1 mini übertragen. Das scheint soweit auch geklappt zu haben, denn ich bekomme eine Laufschrift mit dem Hinweis "Warte auf Daten von ioBroker" Der WEMOS ist im Netzwerk sichtbar und anPingbar.

                          Als nächstes habe ich dann das JavaSkript von joergeli genommen und ebenfalls um meine Einstellungen im Bereich der IP Adressen verändert.

                          Und hier beginnt das "Drama". In den selbst angelegten Datenpunkt unter javaskript.0 wird nichts hinein geschrieben. Auch wartet der WEMOS immer noch auf Daten vom Broker, es wird von ioB nichts gesendet.

                          Den simple RESTful API Adapter habe ich installiert - muss da irgend etwas eingetragen werden? Ich habe die Instanz jetzt einfach so am laufen wie sie angelegt wurde - ohne weitere Änderungen oder Eintragungen.

                          Ich habe die Datenpunkte in dem Skript entsprechen meinen Datenpunkten angepasst, aber auch durch das Skript hagelt es Fehlermeldungen, weil ich z.B. Post ist da und DutyCyle nicht habe - ich weiß aber nicht wie ich diese Fehler weg bekomme.

                          Hauptproblem ist aber erstmal die nicht zustande kommende Verbindung vom ioB zum WEMOS. Könnt ihr mir da ggf. ein bisschen unter die Arme greifen?

                          Hier der Fehler Log vom geändert Skript.

                          javascript.0	2020-09-05 06:35:30.013	error	(1652) at Timer.processTimers (timers.js:223:10)
                          javascript.0	2020-09-05 06:35:30.013	error	(1652) at listOnTimeout (timers.js:263:5)
                          javascript.0	2020-09-05 06:35:30.013	error	(1652) at tryOnTimeout (timers.js:300:5)
                          javascript.0	2020-09-05 06:35:30.012	error	(1652) at ontimeout (timers.js:436:11)
                          javascript.0	2020-09-05 06:35:30.010	error	(1652) at Timeout._onTimeout (C:\iobroker\GLT\node_modules\node-schedule\lib\schedule.js:510:7)
                          javascript.0	2020-09-05 06:35:30.010	error	(1652) at C:\iobroker\GLT\node_modules\node-schedule\lib\schedule.js:552:11
                          javascript.0	2020-09-05 06:35:30.010	error	(1652) at Job.invoke (C:\iobroker\GLT\node_modules\node-schedule\lib\schedule.js:173:10)
                          javascript.0	2020-09-05 06:35:30.010	error	(1652) at Job.nodeSchedule.scheduleJob [as job] (C:\iobroker\GLT\node_modules\iobroker.javascript\lib\sandbox.js:1260:34)
                          javascript.0	2020-09-05 06:35:30.010	error	(1652) at Object.Laufschrift_Aktualisieren (script.js.Aktiv.Matrix-Laufschrift:87:28)
                          javascript.0	2020-09-05 06:35:30.009	error	(1652) Error in callback: ReferenceError: PostIstDa is not defined
                          
                          joergeliJ Offline
                          joergeliJ Offline
                          joergeli
                          schrieb am zuletzt editiert von
                          #167

                          @JB_Sullivan
                          Sorry für die späte Antwort, ich war unterwegs.

                          Ich vermute, dass der Wemos korrekt geflasht wurde, da die Anzeige "... warte auf Daten von ioBroker" angezeigt wird.
                          Wahrscheinlich liegt das Problem im JS-Script.

                          Ich habe Dir deshalb mal ein Test-Script angehängt, mit dem nur 4 Strings in den Ausgabe-Datenpunkt geschrieben werden.
                          Es werden also keine realen Meßwerte, bzw. Datenpunkte benötigt.

                          
                          //##########################################
                          // Beispiel ioBroker Matrix-Laufschrift Test
                          //##########################################
                          
                          
                          //________________________________________________________________
                          //Script jede 47te Sekunde ausfuehren
                          schedule('47 * * * * *', Laufschrift_Aktualisieren);
                          //________________________________________________________________
                          
                          function Laufschrift_Aktualisieren() {
                          
                          //______________________________________________________________________________________  
                          
                              //Wemos IP-Adresse
                              var udpIP = '192.168.192.19'                            // lokale IP-Adresse des Wemos
                          
                              //Ausgabe-Datenpunkt
                              var ausgabe_datenpunkt  = 'javascript.0.Laufschrift';   // Ausgabe-DP muss mit der URL im Wemos übereinstimmen!
                          
                          //______________________________________________________________________________________
                          
                              //Test-Datenpunkte
                              var test1           = "Das ist Teststring 1;" ; 
                              var test2           = "Jetzt kommt Nr. 2;" ; 
                              var test3           = "Aller guten Dinge sind 3;" ;
                          
                              var test4           = "... und noch Nr. 4;" ;    
                          
                          
                          // z.B. Teststrings 1-3 zusammenfassen_______________________________
                              var test    = test1 + test2 + test3
                          
                          //______________________________________________________________________________________
                          
                              // Ausgabestring aus den EinzelStrings zusammensetzen:
                              var ausgabe     =  test + test4 + "Test-Ende;"
                          
                          //______________________________________________________________________________________
                          
                              // kpl. Ausgabestring in Datenpunkt schreiben
                              var pfad = ausgabe_datenpunkt
                              setState(pfad , ausgabe, true);
                              //log('----' + ausgabe + '----');
                                        
                          
                          //______________________________________________________________________________________
                          
                              // "update" an WEMOS senden (pushen), damit dort die Laufschrift sofort aktualisiert wird
                              const dgram = require('dgram');
                              var udpPort = 6610
                              var udpMessage = "update"
                          
                              var client = dgram.createSocket('udp4');
                              client.send(udpMessage, 0, udpMessage.length, udpPort, udpIP, function(err, bytes) {
                                  if (err) throw err;
                                  client.close();
                              })
                          
                          //______________________________________________________________________________________
                          
                          
                          }  //Ende function Laufschrift_Aktualisieren
                          
                          

                          Damit werden nur 4 Teststrings auf der Laufschrift ausgegeben.
                          Es muss natürlich sichergestellt sein, dass die IP-Adresse im WEMOS mit dieser hier im Script übereinstimmt.

                          var udpIP = '192.168.192.19' 
                          

                          Musst Du natürlich auf Deine Netzwerkumgebung anpassen!

                          Gruß
                          Jörg

                          P.S.
                          Ich sehe gerade, daß Du den Wemos jetzt mit @liv-in-sky - Sketch geflashed hast und ihr eine Lösung gefunden habt.
                          Rein interessehalber: Lag das Problem an JS-Script, oder woanders?

                          JB_SullivanJ 2 Antworten Letzte Antwort
                          0
                          • joergeliJ joergeli

                            @JB_Sullivan
                            Sorry für die späte Antwort, ich war unterwegs.

                            Ich vermute, dass der Wemos korrekt geflasht wurde, da die Anzeige "... warte auf Daten von ioBroker" angezeigt wird.
                            Wahrscheinlich liegt das Problem im JS-Script.

                            Ich habe Dir deshalb mal ein Test-Script angehängt, mit dem nur 4 Strings in den Ausgabe-Datenpunkt geschrieben werden.
                            Es werden also keine realen Meßwerte, bzw. Datenpunkte benötigt.

                            
                            //##########################################
                            // Beispiel ioBroker Matrix-Laufschrift Test
                            //##########################################
                            
                            
                            //________________________________________________________________
                            //Script jede 47te Sekunde ausfuehren
                            schedule('47 * * * * *', Laufschrift_Aktualisieren);
                            //________________________________________________________________
                            
                            function Laufschrift_Aktualisieren() {
                            
                            //______________________________________________________________________________________  
                            
                                //Wemos IP-Adresse
                                var udpIP = '192.168.192.19'                            // lokale IP-Adresse des Wemos
                            
                                //Ausgabe-Datenpunkt
                                var ausgabe_datenpunkt  = 'javascript.0.Laufschrift';   // Ausgabe-DP muss mit der URL im Wemos übereinstimmen!
                            
                            //______________________________________________________________________________________
                            
                                //Test-Datenpunkte
                                var test1           = "Das ist Teststring 1;" ; 
                                var test2           = "Jetzt kommt Nr. 2;" ; 
                                var test3           = "Aller guten Dinge sind 3;" ;
                            
                                var test4           = "... und noch Nr. 4;" ;    
                            
                            
                            // z.B. Teststrings 1-3 zusammenfassen_______________________________
                                var test    = test1 + test2 + test3
                            
                            //______________________________________________________________________________________
                            
                                // Ausgabestring aus den EinzelStrings zusammensetzen:
                                var ausgabe     =  test + test4 + "Test-Ende;"
                            
                            //______________________________________________________________________________________
                            
                                // kpl. Ausgabestring in Datenpunkt schreiben
                                var pfad = ausgabe_datenpunkt
                                setState(pfad , ausgabe, true);
                                //log('----' + ausgabe + '----');
                                          
                            
                            //______________________________________________________________________________________
                            
                                // "update" an WEMOS senden (pushen), damit dort die Laufschrift sofort aktualisiert wird
                                const dgram = require('dgram');
                                var udpPort = 6610
                                var udpMessage = "update"
                            
                                var client = dgram.createSocket('udp4');
                                client.send(udpMessage, 0, udpMessage.length, udpPort, udpIP, function(err, bytes) {
                                    if (err) throw err;
                                    client.close();
                                })
                            
                            //______________________________________________________________________________________
                            
                            
                            }  //Ende function Laufschrift_Aktualisieren
                            
                            

                            Damit werden nur 4 Teststrings auf der Laufschrift ausgegeben.
                            Es muss natürlich sichergestellt sein, dass die IP-Adresse im WEMOS mit dieser hier im Script übereinstimmt.

                            var udpIP = '192.168.192.19' 
                            

                            Musst Du natürlich auf Deine Netzwerkumgebung anpassen!

                            Gruß
                            Jörg

                            P.S.
                            Ich sehe gerade, daß Du den Wemos jetzt mit @liv-in-sky - Sketch geflashed hast und ihr eine Lösung gefunden habt.
                            Rein interessehalber: Lag das Problem an JS-Script, oder woanders?

                            JB_SullivanJ Offline
                            JB_SullivanJ Offline
                            JB_Sullivan
                            schrieb am zuletzt editiert von JB_Sullivan
                            #168

                            @joergeli - ja wir hatten das Problem lösen können - ich bin immer noch am fummeln, denn jetzt geht es darum den "Master" Datenpunkt mit Inhalten zu füllen. Dafür müsste doch auch dein javascript geeignet sein - oder? Wenn die Daten alle zusammen gesammelt sind, werden die ja auch in einen Datenpunkt geschrieben, den liv-in-sky ja auch abholt.

                            Das Problem bei liv-insky, war, das dass Sketch einen Zeitserver im Internet abfragen wollte. Da keine Freigabe ins Web besteht, ist das Programm dann einfach stecken geblieben. Knackpunkt war das, die Fritzbox als Zeitserver eintragen werden musste.

                            Ich habe dein Skript schon etwas zusammen gestrichen, aber ich bekomme immer eine Fehlermeldung wegen POST IST DA.

                            //
                            //##################################
                            // ioBroker Matrix-Laufschrift
                            //##################################
                            
                            
                            //________________________________________________________________
                            //Script jede 30te Sekunde ausfuehren
                            schedule('30 * * * * *', Laufschrift_Aktualisieren);
                            //________________________________________________________________
                            
                             //Laufschrift_Aktualisieren();  // nur! wenn manuell getestet werden soll
                            
                            
                            function Laufschrift_Aktualisieren() {
                            
                            //______________________________________________________________________________________  
                            
                                //Wemos IP-Adresse
                                var udpIP = '10.122.60.99'                            // IP-Adresse des Wemos, bzw. der DOT Matrix Laufschrift
                            
                                //Ausgabe-Datenpunkt
                                var ausgabe_datenpunkt  = 'javascript.0.MATRIX.Matrix';   // Ausgabe-Datenpunkt muss mit der URL im Arduino-Sketch des Wemos übereinstimmen!
                            
                            //______________________________________________________________________________________
                            
                                //Einlese-Datenpunkte - müssen natürlich an die eigene Konstellation angepasst werden!
                                var temp_basic          = getState('sonoff.0.Pool Basic.DS18B20_Temperature').val ;           // Aussen Temp am Pool
                                var wind_speed          = getState('rflink.0.channels.LaCrosseV3_1.WINSP').val ;             // Windgeschwindigkeit
                                var ludru               = getState('rflink.0.channels.LaCrosseV3_4.BARO').val ;               // Luftdruck
                                var post_ist_da         = getState('innogy-smarthome.0.Garten.Bodenfeuchte.IsOpen').val ;         // Post ist da
                            //______________________________________________________________________________________
                            
                                //Windgeschwindigkeit (km/h) in Windstärke (Bft) umrechnen
                                     if(wind_speed <= 1)                         {   var bft = 0 }
                                else if(wind_speed >  1   && wind_speed <= 5)    {   var bft = 1 }
                                else if(wind_speed >  5   && wind_speed <= 11)   {   var bft = 2 }
                                else if(wind_speed >  11  && wind_speed <= 19)   {   var bft = 3 }
                                else if(wind_speed >  19  && wind_speed <= 28)   {   var bft = 4 }
                                else if(wind_speed >  28  && wind_speed <= 38)   {   var bft = 5 }
                                else if(wind_speed >  38  && wind_speed <= 49)   {   var bft = 6 }    
                                else if(wind_speed >  49  && wind_speed <= 61)   {   var bft = 7 }    
                                else if(wind_speed >  61  && wind_speed <= 74)   {   var bft = 8 }   
                                else if(wind_speed >  74  && wind_speed <= 88)   {   var bft = 9 }  
                                else if(wind_speed >  88  && wind_speed <= 102)  {   var bft = 10 } 
                                else if(wind_speed >  102  && wind_speed <= 117) {   var bft = 11 } 
                                else if(wind_speed >  117   ) {   var bft = 12 } 
                            
                            //______________________________________________________________________________________
                            //Luftdruck runden
                            var luftdr = round (ludru,0)
                            
                            //Windgeschwindigkeit runden
                            var windgeschw = round (wind_speed,0)
                            
                            //Wohnzimmer Feuchte runden
                            //var wohnzfeuchte = round (feuchte_wohnz,0)
                            //______________________________________________________________________________________
                            
                            
                            /*
                            // Nur zur Info Sonderzeichen:
                            
                            $ = degC
                            - = line
                                = plus
                            _ = rechteck-block
                            ! = ü
                            ? = ö
                            ^ = ä
                            ` = ß
                            */
                            
                            //______________________________________________________________________________________
                            
                            
                            //______________________________________________________________________________________
                            
                            
                                // Ausgabestring aus den EinzelStrings zusammensetzen:
                                //_____________________________________________________
                                // Wenn RaspberryMatic DutyCycle >= 49%, nur! den DutyCycle ausgeben.
                                // Wenn Post da ist, nur! den "Post ist da-String" ausgeben, ggf. zusaetzlich den DutyCycle,
                                // ansonsten komplette Ausgabe aller Variablen
                            
                                if (post_ist_da == true) {
                                    var ausgabe     =  PostIstDa
                                }
                                else{
                                var ausgabe     = PostIstDa + temp_basic + wind_speed + ludru
                               }
                            
                            //______________________________________________________________________________________
                            
                                // Ausgabestring in Datenpunkt schreiben
                                var pfad = ausgabe_datenpunkt
                                setState(pfad , ausgabe, true);
                                log('----' +   ausgabe      +'  ----');
                                          
                            
                            //______________________________________________________________________________________
                            
                                // "update" an WEMOS senden (pushen), damit dort die Laufschrift sofort aktualisiert wird
                                const dgram = require('dgram');
                                var udpPort = 6610
                                var udpMessage = "update"
                                var client = dgram.createSocket('udp4');
                                client.send(udpMessage, 0, udpMessage.length, udpPort, udpIP, function(err, bytes) {
                                    if (err) throw err;
                                    client.close();
                                })
                            //______________________________________________________________________________________
                            
                            
                            }  //Ende function Laufschrift_Aktualisieren
                            
                            
                            
                            
                            
                            
                            // Funktion zum Runden von Zahlen
                            function round(wert, dez) {
                                    wert = parseFloat(wert);
                                    if (!wert) return 0;
                                    dez = parseInt(dez);
                                    if (!dez) dez=0;
                                    var umrechnungsfaktor = Math.pow(10,dez);
                                    return Math.round(wert * umrechnungsfaktor) / umrechnungsfaktor;
                            }  //Ende function round
                            
                            
                            
                            

                            ioBroker auf Intel Core i3-5005U NUC und Windwos10 Pro

                            JB_SullivanJ 1 Antwort Letzte Antwort
                            0
                            • JB_SullivanJ JB_Sullivan

                              @joergeli - ja wir hatten das Problem lösen können - ich bin immer noch am fummeln, denn jetzt geht es darum den "Master" Datenpunkt mit Inhalten zu füllen. Dafür müsste doch auch dein javascript geeignet sein - oder? Wenn die Daten alle zusammen gesammelt sind, werden die ja auch in einen Datenpunkt geschrieben, den liv-in-sky ja auch abholt.

                              Das Problem bei liv-insky, war, das dass Sketch einen Zeitserver im Internet abfragen wollte. Da keine Freigabe ins Web besteht, ist das Programm dann einfach stecken geblieben. Knackpunkt war das, die Fritzbox als Zeitserver eintragen werden musste.

                              Ich habe dein Skript schon etwas zusammen gestrichen, aber ich bekomme immer eine Fehlermeldung wegen POST IST DA.

                              //
                              //##################################
                              // ioBroker Matrix-Laufschrift
                              //##################################
                              
                              
                              //________________________________________________________________
                              //Script jede 30te Sekunde ausfuehren
                              schedule('30 * * * * *', Laufschrift_Aktualisieren);
                              //________________________________________________________________
                              
                               //Laufschrift_Aktualisieren();  // nur! wenn manuell getestet werden soll
                              
                              
                              function Laufschrift_Aktualisieren() {
                              
                              //______________________________________________________________________________________  
                              
                                  //Wemos IP-Adresse
                                  var udpIP = '10.122.60.99'                            // IP-Adresse des Wemos, bzw. der DOT Matrix Laufschrift
                              
                                  //Ausgabe-Datenpunkt
                                  var ausgabe_datenpunkt  = 'javascript.0.MATRIX.Matrix';   // Ausgabe-Datenpunkt muss mit der URL im Arduino-Sketch des Wemos übereinstimmen!
                              
                              //______________________________________________________________________________________
                              
                                  //Einlese-Datenpunkte - müssen natürlich an die eigene Konstellation angepasst werden!
                                  var temp_basic          = getState('sonoff.0.Pool Basic.DS18B20_Temperature').val ;           // Aussen Temp am Pool
                                  var wind_speed          = getState('rflink.0.channels.LaCrosseV3_1.WINSP').val ;             // Windgeschwindigkeit
                                  var ludru               = getState('rflink.0.channels.LaCrosseV3_4.BARO').val ;               // Luftdruck
                                  var post_ist_da         = getState('innogy-smarthome.0.Garten.Bodenfeuchte.IsOpen').val ;         // Post ist da
                              //______________________________________________________________________________________
                              
                                  //Windgeschwindigkeit (km/h) in Windstärke (Bft) umrechnen
                                       if(wind_speed <= 1)                         {   var bft = 0 }
                                  else if(wind_speed >  1   && wind_speed <= 5)    {   var bft = 1 }
                                  else if(wind_speed >  5   && wind_speed <= 11)   {   var bft = 2 }
                                  else if(wind_speed >  11  && wind_speed <= 19)   {   var bft = 3 }
                                  else if(wind_speed >  19  && wind_speed <= 28)   {   var bft = 4 }
                                  else if(wind_speed >  28  && wind_speed <= 38)   {   var bft = 5 }
                                  else if(wind_speed >  38  && wind_speed <= 49)   {   var bft = 6 }    
                                  else if(wind_speed >  49  && wind_speed <= 61)   {   var bft = 7 }    
                                  else if(wind_speed >  61  && wind_speed <= 74)   {   var bft = 8 }   
                                  else if(wind_speed >  74  && wind_speed <= 88)   {   var bft = 9 }  
                                  else if(wind_speed >  88  && wind_speed <= 102)  {   var bft = 10 } 
                                  else if(wind_speed >  102  && wind_speed <= 117) {   var bft = 11 } 
                                  else if(wind_speed >  117   ) {   var bft = 12 } 
                              
                              //______________________________________________________________________________________
                              //Luftdruck runden
                              var luftdr = round (ludru,0)
                              
                              //Windgeschwindigkeit runden
                              var windgeschw = round (wind_speed,0)
                              
                              //Wohnzimmer Feuchte runden
                              //var wohnzfeuchte = round (feuchte_wohnz,0)
                              //______________________________________________________________________________________
                              
                              
                              /*
                              // Nur zur Info Sonderzeichen:
                              
                              $ = degC
                              - = line
                                  = plus
                              _ = rechteck-block
                              ! = ü
                              ? = ö
                              ^ = ä
                              ` = ß
                              */
                              
                              //______________________________________________________________________________________
                              
                              
                              //______________________________________________________________________________________
                              
                              
                                  // Ausgabestring aus den EinzelStrings zusammensetzen:
                                  //_____________________________________________________
                                  // Wenn RaspberryMatic DutyCycle >= 49%, nur! den DutyCycle ausgeben.
                                  // Wenn Post da ist, nur! den "Post ist da-String" ausgeben, ggf. zusaetzlich den DutyCycle,
                                  // ansonsten komplette Ausgabe aller Variablen
                              
                                  if (post_ist_da == true) {
                                      var ausgabe     =  PostIstDa
                                  }
                                  else{
                                  var ausgabe     = PostIstDa + temp_basic + wind_speed + ludru
                                 }
                              
                              //______________________________________________________________________________________
                              
                                  // Ausgabestring in Datenpunkt schreiben
                                  var pfad = ausgabe_datenpunkt
                                  setState(pfad , ausgabe, true);
                                  log('----' +   ausgabe      +'  ----');
                                            
                              
                              //______________________________________________________________________________________
                              
                                  // "update" an WEMOS senden (pushen), damit dort die Laufschrift sofort aktualisiert wird
                                  const dgram = require('dgram');
                                  var udpPort = 6610
                                  var udpMessage = "update"
                                  var client = dgram.createSocket('udp4');
                                  client.send(udpMessage, 0, udpMessage.length, udpPort, udpIP, function(err, bytes) {
                                      if (err) throw err;
                                      client.close();
                                  })
                              //______________________________________________________________________________________
                              
                              
                              }  //Ende function Laufschrift_Aktualisieren
                              
                              
                              
                              
                              
                              
                              // Funktion zum Runden von Zahlen
                              function round(wert, dez) {
                                      wert = parseFloat(wert);
                                      if (!wert) return 0;
                                      dez = parseInt(dez);
                                      if (!dez) dez=0;
                                      var umrechnungsfaktor = Math.pow(10,dez);
                                      return Math.round(wert * umrechnungsfaktor) / umrechnungsfaktor;
                              }  //Ende function round
                              
                              
                              
                              
                              JB_SullivanJ Offline
                              JB_SullivanJ Offline
                              JB_Sullivan
                              schrieb am zuletzt editiert von
                              #169

                              Ich habe jetzt immer noch das Sketch von liv-in-sky drauf. Unabhängig davon müsste doch auch dein Testscript etwas in den Datenpunkt hinein schreiben - das macht es aber nicht.

                              Wenn sich der Inhalt des Datenpunktes ändert, würde in diesem Fall nicht dein Skript etwas an den WEMOS senden, sonder liv-in-sky würde den Inhalt des Datenpunktes abholen.

                              Wie gesagt, der Pferdefuss ist, das dein Skript den Datenpunkt nicht beschreibt.

                              ioBroker auf Intel Core i3-5005U NUC und Windwos10 Pro

                              joergeliJ 1 Antwort Letzte Antwort
                              0
                              • joergeliJ joergeli

                                @JB_Sullivan
                                Sorry für die späte Antwort, ich war unterwegs.

                                Ich vermute, dass der Wemos korrekt geflasht wurde, da die Anzeige "... warte auf Daten von ioBroker" angezeigt wird.
                                Wahrscheinlich liegt das Problem im JS-Script.

                                Ich habe Dir deshalb mal ein Test-Script angehängt, mit dem nur 4 Strings in den Ausgabe-Datenpunkt geschrieben werden.
                                Es werden also keine realen Meßwerte, bzw. Datenpunkte benötigt.

                                
                                //##########################################
                                // Beispiel ioBroker Matrix-Laufschrift Test
                                //##########################################
                                
                                
                                //________________________________________________________________
                                //Script jede 47te Sekunde ausfuehren
                                schedule('47 * * * * *', Laufschrift_Aktualisieren);
                                //________________________________________________________________
                                
                                function Laufschrift_Aktualisieren() {
                                
                                //______________________________________________________________________________________  
                                
                                    //Wemos IP-Adresse
                                    var udpIP = '192.168.192.19'                            // lokale IP-Adresse des Wemos
                                
                                    //Ausgabe-Datenpunkt
                                    var ausgabe_datenpunkt  = 'javascript.0.Laufschrift';   // Ausgabe-DP muss mit der URL im Wemos übereinstimmen!
                                
                                //______________________________________________________________________________________
                                
                                    //Test-Datenpunkte
                                    var test1           = "Das ist Teststring 1;" ; 
                                    var test2           = "Jetzt kommt Nr. 2;" ; 
                                    var test3           = "Aller guten Dinge sind 3;" ;
                                
                                    var test4           = "... und noch Nr. 4;" ;    
                                
                                
                                // z.B. Teststrings 1-3 zusammenfassen_______________________________
                                    var test    = test1 + test2 + test3
                                
                                //______________________________________________________________________________________
                                
                                    // Ausgabestring aus den EinzelStrings zusammensetzen:
                                    var ausgabe     =  test + test4 + "Test-Ende;"
                                
                                //______________________________________________________________________________________
                                
                                    // kpl. Ausgabestring in Datenpunkt schreiben
                                    var pfad = ausgabe_datenpunkt
                                    setState(pfad , ausgabe, true);
                                    //log('----' + ausgabe + '----');
                                              
                                
                                //______________________________________________________________________________________
                                
                                    // "update" an WEMOS senden (pushen), damit dort die Laufschrift sofort aktualisiert wird
                                    const dgram = require('dgram');
                                    var udpPort = 6610
                                    var udpMessage = "update"
                                
                                    var client = dgram.createSocket('udp4');
                                    client.send(udpMessage, 0, udpMessage.length, udpPort, udpIP, function(err, bytes) {
                                        if (err) throw err;
                                        client.close();
                                    })
                                
                                //______________________________________________________________________________________
                                
                                
                                }  //Ende function Laufschrift_Aktualisieren
                                
                                

                                Damit werden nur 4 Teststrings auf der Laufschrift ausgegeben.
                                Es muss natürlich sichergestellt sein, dass die IP-Adresse im WEMOS mit dieser hier im Script übereinstimmt.

                                var udpIP = '192.168.192.19' 
                                

                                Musst Du natürlich auf Deine Netzwerkumgebung anpassen!

                                Gruß
                                Jörg

                                P.S.
                                Ich sehe gerade, daß Du den Wemos jetzt mit @liv-in-sky - Sketch geflashed hast und ihr eine Lösung gefunden habt.
                                Rein interessehalber: Lag das Problem an JS-Script, oder woanders?

                                JB_SullivanJ Offline
                                JB_SullivanJ Offline
                                JB_Sullivan
                                schrieb am zuletzt editiert von
                                #170

                                @joergeli Weil du dir soviel Arbeit gemacht hast, habe ich jetzt dein Arduino Sketch nochmal geflasht - allerdings auch hier mit der Änderung, das der Zeitserver auf die IP Adresse der FritzBox verweist.

                                Was soll ich sagen, Das Test Skript funktioniert !!!! Allerdings dein Ursprungs Skript geht leider nicht :(

                                ioBroker auf Intel Core i3-5005U NUC und Windwos10 Pro

                                1 Antwort Letzte Antwort
                                0
                                • JB_SullivanJ JB_Sullivan

                                  Ich habe jetzt immer noch das Sketch von liv-in-sky drauf. Unabhängig davon müsste doch auch dein Testscript etwas in den Datenpunkt hinein schreiben - das macht es aber nicht.

                                  Wenn sich der Inhalt des Datenpunktes ändert, würde in diesem Fall nicht dein Skript etwas an den WEMOS senden, sonder liv-in-sky würde den Inhalt des Datenpunktes abholen.

                                  Wie gesagt, der Pferdefuss ist, das dein Skript den Datenpunkt nicht beschreibt.

                                  joergeliJ Offline
                                  joergeliJ Offline
                                  joergeli
                                  schrieb am zuletzt editiert von
                                  #171

                                  @JB_Sullivan
                                  Ich weiß nicht, wie @liv-in-sky sein Ausgabe-Datenpunkt heißt.

                                  Mach mak folgendes:
                                  1.) Lege manuell einen Datenpunkt javascript.0.Laufschrift an ( Typ Zeichenkette, Haken bei "Lesen erlaubt" und "Schreiben erlaubt setzen)

                                  2.) Kopier Dir mein Test-Script "Beispiel ioBroker Matrix-Laufschrift Test"-( 2 Posts weiter oben).

                                  3.) Starte das Beispiel.Script.

                                  4.) Dann sollten die 4 Teststrings jede 47te Sekunde in den Datenpunkt javascript.0.Laufschrift geschrieben werden.

                                  Du hat richtig erkannt, daß das Testscript auch mit @liv-in-sky's Wemos funktionieren müsste.

                                  Wenn der Datenpunkt korrekt beschrieben wird, sehen wir weiter.

                                  Gruß
                                  Jörg

                                  JB_SullivanJ 1 Antwort Letzte Antwort
                                  0
                                  • joergeliJ joergeli

                                    @JB_Sullivan
                                    Ich weiß nicht, wie @liv-in-sky sein Ausgabe-Datenpunkt heißt.

                                    Mach mak folgendes:
                                    1.) Lege manuell einen Datenpunkt javascript.0.Laufschrift an ( Typ Zeichenkette, Haken bei "Lesen erlaubt" und "Schreiben erlaubt setzen)

                                    2.) Kopier Dir mein Test-Script "Beispiel ioBroker Matrix-Laufschrift Test"-( 2 Posts weiter oben).

                                    3.) Starte das Beispiel.Script.

                                    4.) Dann sollten die 4 Teststrings jede 47te Sekunde in den Datenpunkt javascript.0.Laufschrift geschrieben werden.

                                    Du hat richtig erkannt, daß das Testscript auch mit @liv-in-sky's Wemos funktionieren müsste.

                                    Wenn der Datenpunkt korrekt beschrieben wird, sehen wir weiter.

                                    Gruß
                                    Jörg

                                    JB_SullivanJ Offline
                                    JB_SullivanJ Offline
                                    JB_Sullivan
                                    schrieb am zuletzt editiert von
                                    #172

                                    @joergeli lies mal meine letzte Antwort über deiner hier ;)

                                    ioBroker auf Intel Core i3-5005U NUC und Windwos10 Pro

                                    joergeliJ 1 Antwort Letzte Antwort
                                    0
                                    • JB_SullivanJ JB_Sullivan

                                      @joergeli lies mal meine letzte Antwort über deiner hier ;)

                                      joergeliJ Offline
                                      joergeliJ Offline
                                      joergeli
                                      schrieb am zuletzt editiert von
                                      #173

                                      @JB_Sullivan
                                      ... jepp, ich war 2 Minuten zu spät :anguished:

                                      Ich schreibe gleich noch was ....

                                      JB_SullivanJ 1 Antwort Letzte Antwort
                                      0
                                      • joergeliJ joergeli

                                        @JB_Sullivan
                                        ... jepp, ich war 2 Minuten zu spät :anguished:

                                        Ich schreibe gleich noch was ....

                                        JB_SullivanJ Offline
                                        JB_SullivanJ Offline
                                        JB_Sullivan
                                        schrieb am zuletzt editiert von JB_Sullivan
                                        #174

                                        @joergeli JA, das Javascript von deiner Homepage ist Mega umfangreich. Wenn man da mal eben seine eigenen paar Datenpunkte einsetzen will um zu sehen das es geht, vergalloppiert man sich sehr schnell.

                                        Was ich bei fly-in-sky seinem Sketch/Skript gut finde, ist die Möglichkeit via Datenpunkte die Modi, Leuchtstärke und Geschwindigkeit zu ändern ohne das man einen Hardware Knopf drücken muss.

                                        2020-09-05 21_59_59-objects - ioBroker.png

                                        2020-09-05 22_02_34-javascript - ioBroker.png

                                        ioBroker auf Intel Core i3-5005U NUC und Windwos10 Pro

                                        joergeliJ 1 Antwort Letzte Antwort
                                        0
                                        • JB_SullivanJ JB_Sullivan

                                          @joergeli JA, das Javascript von deiner Homepage ist Mega umfangreich. Wenn man da mal eben seine eigenen paar Datenpunkte einsetzen will um zu sehen das es geht, vergalloppiert man sich sehr schnell.

                                          Was ich bei fly-in-sky seinem Sketch/Skript gut finde, ist die Möglichkeit via Datenpunkte die Modi, Leuchtstärke und Geschwindigkeit zu ändern ohne das man einen Hardware Knopf drücken muss.

                                          2020-09-05 21_59_59-objects - ioBroker.png

                                          2020-09-05 22_02_34-javascript - ioBroker.png

                                          joergeliJ Offline
                                          joergeliJ Offline
                                          joergeli
                                          schrieb am zuletzt editiert von
                                          #175

                                          @JB_Sullivan

                                          Zitat "Allerdings dein Ursprungs Skript geht leider nicht"
                                          Ich hatte ja geschrieben, dass mein Script nur als "Gerüst" dienen soll, Du kannst das nicht 1:1 übernehmen,
                                          da Du ja andere Sensoren/Aktoren/Datenpunkte als ich verwendest.

                                          Was ist denn der zu var post_ist_da zugehörige
                                          Datenpunkt getState('innogy-smarthome.0.Garten.Bodenfeuchte.IsOpen').val ; für ein Typ?
                                          Er darf m.E. nur true/false werden.
                                          Ansonsten lösch temporär vorerst mal alles raus, was mit "Post ist da" zu tun hat.

                                          @JB_Sullivan sagte in ESP Matrix Anzeige fully IoBroker steuerbar:

                                          Was ich bei fly-in-sky seinem Sketch/Skript gut finde, ist die Möglichkeit via Datenpunkte die Modi, Leuchtstärke und Geschwindigkeit zu ändern ohne das man einen Hardware Knopf drücken muss.

                                          Das geht bei mir leider nicht.
                                          Ich lasse bloß die Helligkeit mit einem LDR (lichtabhängiger Widerstand, s. Schaltplan) automatisch ein wenig an die Umgebungshelligkeit anpassen.
                                          Mit den Modi/Geschwindigkeit habe ich anfangs auch ein wenig rumgespielt, allerdings läuft meine Laufschrift jetzt nur noch im Modus "von rechts nach links".

                                          Gruß
                                          Jörg

                                          JB_SullivanJ 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          830

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe