Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Hardware
    4. SONOFF NSPanel mit Lovelace UI

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    SONOFF NSPanel mit Lovelace UI

    This topic has been deleted. Only users with topic management privileges can see it.
    • Armilar
      Armilar Most Active Forum Testing last edited by Armilar

      @gregors

      Es gibt kein Script. Vor dem Update hat es immer funktioniert, und ich habe keine Änderungen o.ä. vorgenommen.
      Ich kann den Screensaver doch auch manuell starten, oder?

      Unterschied NSPanel_1 (das mit dem Problem)
      Program Version 13.3.0(nspanel)

      NSPanel_2
      Program Version 14.3.0 (release-nspanel)

      Ich gehe mal nicht davon aus, dass das Problem durch diese alten Tasmota-Versionen entstanden ist... Auf der anderen Seite kann es ja nicht schaden, diese mal auf den neuesten Stand zu bringen...

      Was heißt Screensaver manuell starten? Es gibt hierfür keinen Trigger im Script...

      Technisch gesehen läuft das wie folgt:

      • Mit Startup (Initialisierung) wird das Timeout aus "0_userdata.0.NSPanel.X.Config.Screensaver.timeoutScreensaver" an das NSPanel übergeben und dort temporär zwischengespeichert, bis das Panel entweder stromlos wird oder der Parameter für das Timeout geändert wird.
      • Wird jetzt eine "normale" Card oder ein Popup aufgerufen, dann startet ein interner Timer in dieser Card oder diesem Popup mit diesem Timeout (also alles in der TFT --> HMI)
      • Ist dieser Timeout abgelaufen (wobei ein manuelles bedienen in der jeweiligen Card diesen Timeout immer wieder neu startet), dann wird ein Event per MQTT an den MQTT Datenpunkt mqtt.X...tele.RESULT gesendet (Im Falle der Serviceseiten also ein event,sleepReached,cardEntities, da es sich ja um eine cardEntities handelt)
      • Das NSPanelTs.ts - Skript sendet daraufhin die - Informationen für den Screensaver an das NSPanel und dieses schaltet dann den Screensaver auf.

      Da also der Screensaver beim Neustart aufgeschaltet wird, muss also der Parameter für das Timeout "0_userdata.0.NSPanel.X.Config.Screensaver.timeoutScreensaver" > 0 sein. Daher kann ich in deinem Fall auch nicht nachvollziehen, warum dein NSPanel (und ja auch nur ein NSPanel von 2) nachts auf die Serviceseiten springt. (und darüber hinaus nicht das Timeout aktiviert um zum Screensaver zurückzukehren)

      Hier kann ich nur mit einem entsprechenden Log aus der Zeit des auftretenden Fehlers arbeiten, um dir entsprechende Hilfe zu geben...

      GregorS 1 Reply Last reply Reply Quote 2
      • arteck
        arteck Developer Most Active @GregorS last edited by

        @gregors lass dich mal zum Testen das gleiche Script auf beiden Panels laufen.. es muss sich gleich verhalten

        1 Reply Last reply Reply Quote 2
        • F
          Foradh 0 last edited by Foradh 0

          Hallo zusammen,
          ich habe leider ein Problem mit der aktuellen Display Firmware bei einem von meinen 4 NSPanels.
          Bei 3en ist das Update sauber durchgelaufen. Bei einem kommt es im log gleich zu einer Fehlermeldung, danach läuft das Update bis 99% durch und bleibt dann stehen.

          16:03:25.864 CMD: FlashNextion http://nspanel.de/nspanel-v4.8.0.tft
          16:03:25.873 MQT: NsPanel/Schlafzimmer_9BEC18/stat/RESULT = {"FlashNextion":"Done"}
          16:03:25.894 FLH: host: nspanel.de, port: 80, get: /nspanel-v4.8.0.tft
          16:03:26.267 FLH: Something has gone wrong flashing display firmware [bytes('1AFFFFFF')]
          16:03:26.434 FLH: Send (High Speed) flash start
          16:03:26.806 MQT: NsPanel/Schlafzimmer_9BEC18/tele/RESULT = {"Flashing":{"complete": 0, "time_elapsed": 0}}
          16:03:30.310 FLH: host: nspanel.de, port: 80, get: /nspanel-v4.8.0.tft
          16:03:30.672 MQT: NsPanel/Schlafzimmer_9BEC18/tele/RESULT = {"Flashing":{"complete": 82, "time_elapsed": 4}}
          16:03:33.645 MQT: NsPanel/Schlafzimmer_9BEC18/tele/RESULT = {"Flashing":{"complete": 83, "time_elapsed": 7}}
          16:03:37.953 MQT: NsPanel/Schlafzimmer_9BEC18/tele/RESULT = {"Flashing":{"complete": 84, "time_elapsed": 11}}
          16:03:42.238 MQT: NsPanel/Schlafzimmer_9BEC18/tele/RESULT = {"Flashing":{"complete": 85, "time_elapsed": 15}}
          16:03:46.529 MQT: NsPanel/Schlafzimmer_9BEC18/tele/RESULT = {"Flashing":{"complete": 86, "time_elapsed": 20}}
          16:03:50.706 MQT: NsPanel/Schlafzimmer_9BEC18/tele/RESULT = {"Flashing":{"complete": 87, "time_elapsed": 24}}
          16:03:54.914 MQT: NsPanel/Schlafzimmer_9BEC18/tele/RESULT = {"Flashing":{"complete": 88, "time_elapsed": 28}}
          16:03:59.130 MQT: NsPanel/Schlafzimmer_9BEC18/tele/RESULT = {"Flashing":{"complete": 89, "time_elapsed": 32}}
          

          Hatte jemand das gleiche Problem und einen Tipp für mich wie ich das Problem beseitige. Auch mehrere Neustarts oder stromlos machen und erneutes Flashen bringt keine Abhilfe.

          Update:
          Hat sich gerade doch von alleine gelöst. Warum auch immer hat es nun doch geklappt

          Beste Grüße
          Foradh

          1 Reply Last reply Reply Quote 1
          • GregorS
            GregorS @Armilar last edited by

            @armilar

            Interessanterweise hat es die letzten 2 Tage wieder funktioniert.
            Habe keine Änderungen gemacht.

            1 Reply Last reply Reply Quote 0
            • arteck
              arteck Developer Most Active last edited by

              ich such mir gerade einen ab

              irgendwo hab ich gesehen dass man auf einen icon sonnenauf und untergang legen konnte..
              hat das einer parat

              {
                           
                              ScreensaverEntity: 'javascript.0.variables.astro.sunrise',
                              ScreensaverEntityFactor: 1,
                              ScreensaverEntityDecimalPlaces: 0,
                              ScreensaverEntityDateFormat: {hour: '2-digit', minute: '2-digit'}, // Description at Wiki-Pages
                              ScreensaverEntityIconOn: 'weather-sunset-up',
                              ScreensaverEntityIconOff: null,
                              ScreensaverEntityText: 'Auf',
                              ScreensaverEntityUnitText: '%',
                              ScreensaverEntityIconColor: MSYellow //{'val_min': 0, 'val_max': 100}
                          },
                          // bottomScreensaverEntity 4 
                          {
                        
                              ScreensaverEntity: 'javascript.0.variables.astro.sunset',
                              ScreensaverEntityFactor: 1,
                              ScreensaverEntityDecimalPlaces: 0,
                              ScreensaverEntityDateFormat: {hour: '2-digit', minute: '2-digit'}, // Description at Wiki-Pages
                              ScreensaverEntityIconOn: 'weather-sunset-down',
                              ScreensaverEntityIconOff: null,
                              ScreensaverEntityText: 'Unter',
                              ScreensaverEntityUnitText: '%',
                              ScreensaverEntityIconColor: MSYellow //{'val_min': 0, 'val_max': 100}
                          },
              

              also die 2 in einem

              T Armilar 2 Replies Last reply Reply Quote 0
              • T
                ticaki Developer @arteck last edited by ticaki

                @arteck
                Im Adapter:

                        {
                                type:'template',
                                template: 'text.accuweather.sunriseset',
                                dpInit: 'accuweather.0',
                                modeScr: 'bottom'
                        },
                

                In meiner Skriptkonfiguration zu dem NSPanel-Skript finde ich nichts vergleichbares - denke da mußt du mit einem externen Skript arbeiten.

                EDIT: Dazu bei accuweather
                accuweather.0.Daily.Day0.Sunrise - accuweather.0.Daily.Day0.Sunset - accuweather.0.Daily.Day1.Sunrise - accuweather.0.Daily.Day1.Sunset
                laden gegen < Date.now() prüfen und den ersten >= Date.now() in einen datenpunkt schreiben - in einen weiteren das passende Icon und die im screensaver verwenden. Hoffe der Screensaver unterstützt das laden der icons von einem datenpunkt 🙂

                EDIT2: Ups hab die roles aus dem adapter kopiert gehabt 😄

                EDIT3: Der 4. State ist drin, wenn man sich ausversehen das tageslimit geschrottet hat.

                1 Reply Last reply Reply Quote 0
                • Armilar
                  Armilar Most Active Forum Testing @arteck last edited by Armilar

                  @arteck

                  Im Script ist das 6. Icon für den advanced Screensaver dafür vorgesehen... Macht den Wechsel in der function HandleScreensaverUpdate automatisch siehe:

                                      if (weatherAdapterInstance == 'accuweather.' + weatherAdapterInstanceNumber + '.' && i == 6) {
                                          let nextSunEvent = 0;
                                          let valDateNow = new Date().getTime();
                                          let arraySunEvent: number[] = [];
                  
                                          arraySunEvent[0] = getDateObject(getState('accuweather.' + weatherAdapterInstanceNumber + '.Daily.Day1.Sunrise').val).getTime();
                                          arraySunEvent[1] = getDateObject(getState('accuweather.' + weatherAdapterInstanceNumber + '.Daily.Day1.Sunset').val).getTime();
                                          arraySunEvent[2] = getDateObject(getState('accuweather.' + weatherAdapterInstanceNumber + '.Daily.Day2.Sunrise').val).getTime();
                  
                                          let j = 0;
                                          for (j = 0; j < 3; j++) {
                                              if (arraySunEvent[j] > valDateNow) {
                                                  nextSunEvent = j;
                                                  break;
                                              }
                                          }
                                          let sun = '';
                                          if (j == 1) {
                                              sun = 'weather-sunset-down';
                                          } else {
                                              sun = 'weather-sunset-up';
                                          }
                  
                                          payloadString += '~' + '~' + Icons.GetIcon(sun) + '~' + rgb_dec565(MSYellow) + '~' + 'Sonne' + '~' + formatDate(getDateObject(arraySunEvent[nextSunEvent]), 'hh:mm') + '~';
                                      } else {
                                          payloadString += '~' + '~' + Icons.GetIcon(WeatherIcon) + '~' + WheatherColor + '~' + DayOfWeek + '~' + tempMinMaxString + '~';
                                      }
                  

                  Ist eigentlich nur ein Lückenfüller, da es keine 6 Wetterprognosen je Wetter-Adapter gibt, sondern immer nur 5, aber 6 Icons zur Verfügung stehen...

                  EDIT: nur so zur Info, falls sich jemand fragt, warum da zweimal der Sonnenaufgang berücksichtigt wird... Machen eigentlich fast alle Logiken falsch - aber nach dem letzten Sonnenuntergang folgt nicht der Sonnenuntergang für den aktuellen Tag (Der war ja schon 😉 ), sondern der Sonnenaufgang für den nächsten Tag... 😊

                  1 Reply Last reply Reply Quote 2
                  • N
                    nullfreizeit last edited by

                    Hallo zusammen. Wie bekomme ich das hin das ich bei dem Alias Fenster (Fenster-/Türsensor) beim cardSchedule nicht die Begriffe „Geschlossen“ / „Offen“ sehe sondern „zu“ / „auf“? Leider scheint die Konvertierungsfunktion keinen Einfluss darauf zu haben.

                    Hintergrund: Hab 6 Sensoren und die passen auch wunderbar in die neue Page cardSchedule, aber der Begriff „Geschlossen“ wird abgeschnitten. danke

                    Armilar 1 Reply Last reply Reply Quote 0
                    • Armilar
                      Armilar Most Active Forum Testing @nullfreizeit last edited by Armilar

                      @nullfreizeit

                      Hallo zusammen. Wie bekomme ich das hin das ich bei dem Alias Fenster (Fenster-/Türsensor) beim cardSchedule nicht die Begriffe „Geschlossen“ / „Offen“ sehe sondern „zu“ / „auf“? Leider scheint die Konvertierungsfunktion keinen Einfluss darauf zu haben.
                      Hintergrund: Hab 6 Sensoren und die passen auch wunderbar in die neue Page cardSchedule, aber der Begriff „Geschlossen“ wird abgeschnitten. danke

                      Du meinst die Konvertierungsfunktionen im window-Alias Channel?

                      Bei Türen, Fenstern, Gates wird der wahre Zustand geprüft und entsprechend in die eingestellte Sprache übersetzt...

                      ! ungetestet:
                      Versuche mal das gleiche mit einem info-Alias Channel. Dort brauchst du nur die Icons entsprechend zuweisen. Der Status müsste dann auch über die Konvertierung funktionieren, vorausgesetzt die false/true werden korrekt umgewandelt in auf/zu.

                      N 1 Reply Last reply Reply Quote 0
                      • N
                        nullfreizeit @Armilar last edited by

                        @armilar ja genau - dachte das man auch bei Typ Fenster/Tür die Konvertierung nutzen kann. Alles klar - dann muss ich das mit Info beheben. Danke

                        IMG_6756.jpeg

                        Armilar 1 Reply Last reply Reply Quote 1
                        • Armilar
                          Armilar Most Active Forum Testing @nullfreizeit last edited by Armilar

                          @nullfreizeit

                          Ja, die cardSchedule wurde für lange Bezeichner und kurze Status entwickelt, da sie vorrangig für Anzeigen analog @TT-Tom s Fahrplan-Projekt dienen soll... 😊

                          Der Info - Alias Channel ist aber der flexibelste im NSPanel... Falls weitere Probleme, einfach melden...

                          N 1 Reply Last reply Reply Quote 0
                          • N
                            nullfreizeit @Armilar last edited by

                            @armilar Wie kann ich auch das Icon bei Alias Typ „Info“ austauschen + Farbe? Stehe irgendwie auf dem Schlauch. Danke

                            T 1 Reply Last reply Reply Quote 0
                            • T
                              TT-Tom @nullfreizeit last edited by

                              @nullfreizeit

                              https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-ALIAS-Definitionen#info-channel-info

                              als Parameter im PageItem

                              Armilar 1 Reply Last reply Reply Quote 1
                              • Armilar
                                Armilar Most Active Forum Testing @TT-Tom last edited by Armilar

                                @tt-tom

                                ich sehe grad, dass wir dem info Alias Channel bei boolschen Werten auch noch das icon2 mitgeben könnten... Ich sehe mir das morgen mal an...

                                Der Rest sollte aber mit den PageItem-Parametern: name, icon, offcolor, oncolor bereits gehen

                                N 1 Reply Last reply Reply Quote 0
                                • N
                                  nullfreizeit @Armilar last edited by

                                  @armilar icon2 hat bei mir nicht geklappt, aber vielleicht mache ich was falsch?

                                  Armilar 1 Reply Last reply Reply Quote 0
                                  • Armilar
                                    Armilar Most Active Forum Testing @nullfreizeit last edited by Armilar

                                    @nullfreizeit

                                    nee, sehe ich mir morgen an, weil ich gesehen habe, dass icon2 im Info nicht implementiert ist... Ist aber kein Hexenwerk, da es ein common.type: boolean und ein alias-channel: info ist und uns diese Infos zur Verarbeitung vorliegen...

                                    Kommt ins nächste Update für das NSPanel Script... Kannst die icon2 bereits in die Variable schreiben... Funktionieren dann halt erst mit der nächsten Version...

                                    EDIT:
                                    Wenn dir das zu lange dauert, dann gibt es auch noch die Variante mittels USERICON in einem externen Skript...
                                    https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker---FAQ-&-Anleitungen#24-dynamisches-icon-cardgrid

                                    Sehe da jetzt aber nicht wirklich den Bedarf bei 2 Zuständen je Fenster... (gilt übrigens auch für cardEntities und cardSchedule)

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

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    537
                                    Online

                                    31.9k
                                    Users

                                    80.2k
                                    Topics

                                    1.3m
                                    Posts

                                    lovelace ui nspanel sonoff
                                    266
                                    7333
                                    5081922
                                    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