Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Hardware
  4. SONOFF NSPanel mit Lovelace UI

NEWS

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

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

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

SONOFF NSPanel mit Lovelace UI

SONOFF NSPanel mit Lovelace UI

Scheduled Pinned Locked Moved Hardware
lovelace uinspanelsonoff
7.7k Posts 271 Posters 6.7m Views 253 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • T Offline
    T Offline
    Tom_W
    wrote on last edited by
    #2213

    Hallo zusammen,

    nur eine kurze Frage: Ich habe im Screensaver ja 4 kleine Icons und davor ein großes.
    Woher kommen die Werte von dem großen?
    Dachte immer von alias Wetter.
    Nur passt bei mit der Wert aus alias.0.Wetter.TEMP nicht mit der angezeigten Temperatur am Panel zusammen und nun frage ich mich, woher das Panel einen anderen Wert nimmt.
    Es unterscheidet sich aktuell um 0,3 Grad.

    Weiß das zufällig jemand?

    Gruß

    Tom

    ArmilarA 1 Reply Last reply
    0
    • R ronny130286

      @armilar

      eigentlich ist es bei mir ja so, ich schaltet etwas mit dem MonoButton und gucke nach einem anderen Ausgang.
      Bsp. Küche, ich triggere den Eingang an der SPS und gucke dann auf den Ausgang der mir den aktuellen Zustand gibt.

      Ich sollte vielleicht einfach in der config den DP vom mqtt rausnehmen und dafür dein Ausgang der S7 eintragen, dann sollte es schon weg sein.

      EDIT:

      vielleicht wäre es auch denkbar die ScreensaverEntityValue anzuzeigen auch ohne einen ScreensaverEntity der einen Status anzeigt

      ArmilarA Offline
      ArmilarA Offline
      Armilar
      Most Active Forum Testing
      wrote on last edited by Armilar
      #2214

      @ronny130286 sagte in SONOFF NSPanel mit Lovelace UI:

      vielleicht wäre es auch denkbar die ScreensaverEntityValue anzuzeigen auch ohne einen ScreensaverEntity der einen Status anzeigt

      Da kann auch eine Waschmaschine oder ein Toaster rein 😉

      EDIT:
      Beispiel mit Fenstersensor und Temperatursensor:

      mrIcon2ScreensaverEntity: { ScreensaverEntity: 'deconz.0.Sensors.5.open', 
                                  ScreensaverEntityIconOn: 'heat-wave', 
                                  ScreensaverEntityIconOff: null, 
                                  ScreensaverEntityValue: 'deconz.0.Sensors.65.temperature',
                                  ScreensaverEntityValueDecimalPlace : 1,
                                  ScreensaverEntityValueUnit: '°', 
                                  ScreensaverEntityOnColor: MSRed, 
                                  ScreensaverEntityOffColor: MSGreen },
      

      Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
      https://github.com/joBr99/nspanel-lovelace-ui/wiki

      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

      R 1 Reply Last reply
      0
      • T Tom_W

        Hallo zusammen,

        nur eine kurze Frage: Ich habe im Screensaver ja 4 kleine Icons und davor ein großes.
        Woher kommen die Werte von dem großen?
        Dachte immer von alias Wetter.
        Nur passt bei mit der Wert aus alias.0.Wetter.TEMP nicht mit der angezeigten Temperatur am Panel zusammen und nun frage ich mich, woher das Panel einen anderen Wert nimmt.
        Es unterscheidet sich aktuell um 0,3 Grad.

        Weiß das zufällig jemand?

        Gruß

        Tom

        ArmilarA Offline
        ArmilarA Offline
        Armilar
        Most Active Forum Testing
        wrote on last edited by
        #2215

        @tom_w sagte in SONOFF NSPanel mit Lovelace UI:

        alias.0.Wetter.TEMP

        ist auch so. ICON und TEMP!

        Welcher Datenpunkt ist denn unter TEMP eingetragen? ALIAS und Datenpunkt haben eigentlich immer den gleichen Wert.

        Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
        https://github.com/joBr99/nspanel-lovelace-ui/wiki

        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

        T 1 Reply Last reply
        0
        • ArmilarA Armilar

          @tom_w sagte in SONOFF NSPanel mit Lovelace UI:

          alias.0.Wetter.TEMP

          ist auch so. ICON und TEMP!

          Welcher Datenpunkt ist denn unter TEMP eingetragen? ALIAS und Datenpunkt haben eigentlich immer den gleichen Wert.

          T Offline
          T Offline
          Tom_W
          wrote on last edited by
          #2216

          @armilar Als Datenpunkt habe ich meinen Temperaturfühler eingetragen. Als Icon den Datenpunkt von accuweather.

          Datenpunkt und alias sind identisch, nur Anzeige am Panel zeigt nicht diesen Wert an der im Alias steht.

          Wollte nur wissen ob ich gedanklich schon richtig bin.
          Logge jetzt mal den Wert mit, eventuell springt mein Fühler auch einfach nur rum.

          Danke

          ArmilarA 1 Reply Last reply
          0
          • T Tom_W

            @armilar Als Datenpunkt habe ich meinen Temperaturfühler eingetragen. Als Icon den Datenpunkt von accuweather.

            Datenpunkt und alias sind identisch, nur Anzeige am Panel zeigt nicht diesen Wert an der im Alias steht.

            Wollte nur wissen ob ich gedanklich schon richtig bin.
            Logge jetzt mal den Wert mit, eventuell springt mein Fühler auch einfach nur rum.

            Danke

            ArmilarA Offline
            ArmilarA Offline
            Armilar
            Most Active Forum Testing
            wrote on last edited by
            #2217

            @tom_w

            Kommt auf die Version an. Es gab Situationen, in denen das Updaten der 4 Icons und der Außentemperatur angehalten wurde, wenn nur einmal auf den Screensaver geklickt wurde.

            Sollte aber mit dem bExit-Hotfix ab der v3.9.0.2 behoben sein

            Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
            https://github.com/joBr99/nspanel-lovelace-ui/wiki

            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

            T 1 Reply Last reply
            0
            • ArmilarA Armilar

              @ronny130286 sagte in SONOFF NSPanel mit Lovelace UI:

              vielleicht wäre es auch denkbar die ScreensaverEntityValue anzuzeigen auch ohne einen ScreensaverEntity der einen Status anzeigt

              Da kann auch eine Waschmaschine oder ein Toaster rein 😉

              EDIT:
              Beispiel mit Fenstersensor und Temperatursensor:

              mrIcon2ScreensaverEntity: { ScreensaverEntity: 'deconz.0.Sensors.5.open', 
                                          ScreensaverEntityIconOn: 'heat-wave', 
                                          ScreensaverEntityIconOff: null, 
                                          ScreensaverEntityValue: 'deconz.0.Sensors.65.temperature',
                                          ScreensaverEntityValueDecimalPlace : 1,
                                          ScreensaverEntityValueUnit: '°', 
                                          ScreensaverEntityOnColor: MSRed, 
                                          ScreensaverEntityOffColor: MSGreen },
              
              R Offline
              R Offline
              ronny130286
              wrote on last edited by ronny130286
              #2218

              @armilar

              ich habs mir zurecht gebaut: die Funktion CheckConfigParameters() muss man anpassen, da ansonsten eine Meldung in der Console erscheint => passiert auch sonst imnmer wenn man den wert auf null setzt

              if (existsObject(config.mrIcon1ScreensaverEntity.ScreensaverEntity) == false && config.mrIcon1ScreensaverEntity.ScreensaverEntity != null) {
                          console.warn('mrIcon1ScreensaverEntity data point in the config not available - please adjust');
                      } 
                      if (existsObject(config.mrIcon2ScreensaverEntity.ScreensaverEntity) == false && config.mrIcon2ScreensaverEntity.ScreensaverEntity != null) {
                          console.warn('mrIcon2ScreensaverEntity data point in the config not available - please adjust');
                      } 
              

              und hier die HandleScreensaverStatusIcons() Funktion, damit kann man dann ScreensaverEntityValue anzeigen lassen ohne ScreensaverEntity einzutragen

              function HandleScreensaverStatusIcons() : void {
                  try {
                      let payloadString = '';
                      let hwBtn1Col: any = config.mrIcon1ScreensaverEntity.ScreensaverEntityOffColor;
                      if (config.mrIcon1ScreensaverEntity.ScreensaverEntity != null) {
                          if (typeof (getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val) == 'string') {
                              let hwBtn1: string = getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val;
                              if (hwBtn1 == 'ON') {
                                  hwBtn1Col = config.mrIcon1ScreensaverEntity.ScreensaverEntityOnColor;
                              }
                              if (getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val) {
                                  payloadString += Icons.GetIcon(config.mrIcon1ScreensaverEntity.ScreensaverEntityIconOn);
                              } else {
                                  if (config.mrIcon1ScreensaverEntity.ScreensaverEntityIconOff != null) {
                                      payloadString += Icons.GetIcon(config.mrIcon1ScreensaverEntity.ScreensaverEntityIconOff);
                                  } else {
                                      payloadString += Icons.GetIcon(config.mrIcon1ScreensaverEntity.ScreensaverEntityIconOn);
                                  }
                              } 
                              if (config.mrIcon1ScreensaverEntity.ScreensaverEntityValue != null) {
                                  payloadString += (getState(config.mrIcon1ScreensaverEntity.ScreensaverEntityValue).val).toFixed(config.mrIcon1ScreensaverEntity.ScreensaverEntityValueDecimalPlace);
                                  payloadString += config.mrIcon1ScreensaverEntity.ScreensaverEntityValueUnit;                        
                              }
                              payloadString += '~' + rgb_dec565(hwBtn1Col) + '~';
                          } else if (typeof (getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val) == 'boolean') {
                              let hwBtn1: boolean = getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val;
                              if (hwBtn1) {
                                  hwBtn1Col = config.mrIcon1ScreensaverEntity.ScreensaverEntityOnColor;
                              }
                              if (getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val) {
                                  payloadString += Icons.GetIcon(config.mrIcon1ScreensaverEntity.ScreensaverEntityIconOn);
                              } else {
                                  if (config.mrIcon1ScreensaverEntity.ScreensaverEntityIconOff != null) {
                                      payloadString += Icons.GetIcon(config.mrIcon1ScreensaverEntity.ScreensaverEntityIconOff);
                                  } else {
                                      payloadString += Icons.GetIcon(config.mrIcon1ScreensaverEntity.ScreensaverEntityIconOn);
                                  }
                              } 
                              if (config.mrIcon1ScreensaverEntity.ScreensaverEntityValue != null) {
                                  payloadString += (getState(config.mrIcon1ScreensaverEntity.ScreensaverEntityValue).val).toFixed(config.mrIcon1ScreensaverEntity.ScreensaverEntityValueDecimalPlace);
                                  payloadString += config.mrIcon1ScreensaverEntity.ScreensaverEntityValueUnit;                        
                              }
                              payloadString += '~' + rgb_dec565(hwBtn1Col) + '~';
                          }
                      } else if (config.mrIcon1ScreensaverEntity.ScreensaverEntity == null && config.mrIcon1ScreensaverEntity.ScreensaverEntityValue != null){
                          
                          if(config.mrIcon1ScreensaverEntity.ScreensaverEntityOnColor != null){
                              hwBtn1Col = config.mrIcon1ScreensaverEntity.ScreensaverEntityOnColor;
                          }
                          if(config.mrIcon1ScreensaverEntity.ScreensaverEntityIconOn != null){
                              payloadString += Icons.GetIcon(config.mrIcon1ScreensaverEntity.ScreensaverEntityIconOn);
                          }
                          
                          if (config.mrIcon1ScreensaverEntity.ScreensaverEntityValue != null) {
                              payloadString += (getState(config.mrIcon1ScreensaverEntity.ScreensaverEntityValue).val).toFixed(config.mrIcon1ScreensaverEntity.ScreensaverEntityValueDecimalPlace);
                              payloadString += config.mrIcon1ScreensaverEntity.ScreensaverEntityValueUnit;                        
                          }
                          payloadString += '~' + rgb_dec565(hwBtn1Col) + '~';
                      }
                      else {
                          hwBtn1Col = Black;
                          payloadString += '~~';
                      }
              
                      let hwBtn2Col: any = config.mrIcon2ScreensaverEntity.ScreensaverEntityOffColor;
                      if (config.mrIcon2ScreensaverEntity.ScreensaverEntity != null) {
                          if (typeof (getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val) == 'string') {
                              let hwBtn2: string = getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val;
                              if (hwBtn2 == 'ON') {
                                  hwBtn2Col = config.mrIcon2ScreensaverEntity.ScreensaverEntityOnColor;
                              }
                              if (getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val) {
                                  payloadString += Icons.GetIcon(config.mrIcon2ScreensaverEntity.ScreensaverEntityIconOn);
                              } else {
                                  if (config.mrIcon2ScreensaverEntity.ScreensaverEntityIconOff != null) {
                                      payloadString += Icons.GetIcon(config.mrIcon2ScreensaverEntity.ScreensaverEntityIconOff);
                                  } else {
                                      payloadString += Icons.GetIcon(config.mrIcon2ScreensaverEntity.ScreensaverEntityIconOn);
                                  }
                              } 
                              if (config.mrIcon2ScreensaverEntity.ScreensaverEntityValue != null) {
                                  payloadString += (getState(config.mrIcon2ScreensaverEntity.ScreensaverEntityValue).val).toFixed(config.mrIcon2ScreensaverEntity.ScreensaverEntityValueDecimalPlace);
                                  payloadString += config.mrIcon2ScreensaverEntity.ScreensaverEntityValueUnit;                        
                              }
                              payloadString += '~' + rgb_dec565(hwBtn2Col) + '~';
                          } else if (typeof (getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val) == 'boolean') {
                              let hwBtn2: boolean = getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val;
                              if (hwBtn2) {
                                  hwBtn2Col = config.mrIcon2ScreensaverEntity.ScreensaverEntityOnColor;
                              }
                              if (getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val) {
                                  payloadString += Icons.GetIcon(config.mrIcon2ScreensaverEntity.ScreensaverEntityIconOn);
                              } else {
                                  if (config.mrIcon2ScreensaverEntity.ScreensaverEntityIconOff != null) {
                                      payloadString += Icons.GetIcon(config.mrIcon2ScreensaverEntity.ScreensaverEntityIconOff);
                                  } else {
                                      payloadString += Icons.GetIcon(config.mrIcon2ScreensaverEntity.ScreensaverEntityIconOn);
                                  }
                              } 
                              if (config.mrIcon2ScreensaverEntity.ScreensaverEntityValue != null) {
                                  payloadString += (getState(config.mrIcon2ScreensaverEntity.ScreensaverEntityValue).val).toFixed(config.mrIcon2ScreensaverEntity.ScreensaverEntityValueDecimalPlace);
                                  payloadString += config.mrIcon2ScreensaverEntity.ScreensaverEntityValueUnit;                        
                              }
                              payloadString += '~' + rgb_dec565(hwBtn2Col) + '~';
                          }
                      } else if (config.mrIcon2ScreensaverEntity.ScreensaverEntity == null && config.mrIcon2ScreensaverEntity.ScreensaverEntityValue != null){
                          
                          if(config.mrIcon2ScreensaverEntity.ScreensaverEntityOnColor != null){
                              hwBtn2Col = config.mrIcon2ScreensaverEntity.ScreensaverEntityOnColor;
                          }
              
                          if(config.mrIcon2ScreensaverEntity.ScreensaverEntityIconOn != null){
                              payloadString += Icons.GetIcon(config.mrIcon2ScreensaverEntity.ScreensaverEntityIconOn);
                          }
                          
                          if (config.mrIcon2ScreensaverEntity.ScreensaverEntityValue != null) {
                              payloadString += (getState(config.mrIcon2ScreensaverEntity.ScreensaverEntityValue).val).toFixed(config.mrIcon2ScreensaverEntity.ScreensaverEntityValueDecimalPlace);
                              payloadString += config.mrIcon2ScreensaverEntity.ScreensaverEntityValueUnit;                        
                          }
                          payloadString += '~' + rgb_dec565(hwBtn2Col) + '~';
                      } else {
                          hwBtn2Col = Black;
                          payloadString += '~~';
                      }
              
                      let alternateScreensaverMFRIcon1Size = getState(NSPanel_Path + 'Config.MRIcons.alternateMRIconSize.1').val
                      let alternateScreensaverMFRIcon2Size = getState(NSPanel_Path + 'Config.MRIcons.alternateMRIconSize.2').val
                      //Alternate MRIcon Size
                      if (alternateScreensaverMFRIcon1Size) {
                          payloadString += '1~';
                      } else {
                          payloadString += '~';
                      }
                      if (alternateScreensaverMFRIcon2Size) {
                          payloadString += '1~';
                      } else {
                          payloadString += '~';
                      }
              
                      SendToPanel(<Payload>{ payload: 'statusUpdate~' + payloadString });
              
                  } catch (err) {
                      console.log('HandleScreensaverStatusIcons: ' + err.message);
                  }
              }
              
              1 Reply Last reply
              1
              • ArmilarA Offline
                ArmilarA Offline
                Armilar
                Most Active Forum Testing
                wrote on last edited by
                #2219

                @ronny130286

                Habe es mal in die 4.0.0 übernommen, da es eine sinnvolle Erweiterung für alle ist 😊

                Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                https://github.com/joBr99/nspanel-lovelace-ui/wiki

                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                GarganoG 1 Reply Last reply
                0
                • ArmilarA Armilar

                  @ronny130286

                  Habe es mal in die 4.0.0 übernommen, da es eine sinnvolle Erweiterung für alle ist 😊

                  GarganoG Offline
                  GarganoG Offline
                  Gargano
                  wrote on last edited by
                  #2220

                  @armilar Gibt es die 4.0.0 schon zum Testen ?

                  ArmilarA 1 Reply Last reply
                  0
                  • GarganoG Gargano

                    @armilar Gibt es die 4.0.0 schon zum Testen ?

                    ArmilarA Offline
                    ArmilarA Offline
                    Armilar
                    Most Active Forum Testing
                    wrote on last edited by
                    #2221

                    @gargano

                    Nee, die ist noch nicht öffentlich

                    Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                    https://github.com/joBr99/nspanel-lovelace-ui/wiki

                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                    GarganoG 1 Reply Last reply
                    0
                    • ArmilarA Armilar

                      @gargano

                      Nee, die ist noch nicht öffentlich

                      GarganoG Offline
                      GarganoG Offline
                      Gargano
                      wrote on last edited by
                      #2222

                      @armilar Kannst Du schon absehen, wann Du die öffentlich machen kannst ?
                      Bis jetzt habe ich noch nicht so viel Zeit in den NSPanel investiert, außer den DHT20-I2C anzuschließen.
                      Ich wollte auf die 4.0.0 warten.
                      Aber jetzt ist Wohnzimmer fertig gestrichen und U-Putz Dose für den NS-Panel gesetzt, also alles fertig für den Einsatz.

                      ArmilarA 1 Reply Last reply
                      0
                      • GarganoG Gargano

                        @armilar Kannst Du schon absehen, wann Du die öffentlich machen kannst ?
                        Bis jetzt habe ich noch nicht so viel Zeit in den NSPanel investiert, außer den DHT20-I2C anzuschließen.
                        Ich wollte auf die 4.0.0 warten.
                        Aber jetzt ist Wohnzimmer fertig gestrichen und U-Putz Dose für den NS-Panel gesetzt, also alles fertig für den Einsatz.

                        ArmilarA Offline
                        ArmilarA Offline
                        Armilar
                        Most Active Forum Testing
                        wrote on last edited by Armilar
                        #2223

                        @gargano

                        ich denke in ca. 2 Wochen... Ein paar Features wandern noch rein... und die TFT 4.0.0 muss ja auch noch fertig sein... Ist ja alles aktuell DEV

                        Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                        https://github.com/joBr99/nspanel-lovelace-ui/wiki

                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                        1 Reply Last reply
                        0
                        • ArmilarA Armilar

                          @missi

                          der Datenpunkt "Button" oder auch als Glocke dargestellt, in denn Objekten würde ich gerne als Icon auf das Panel bringen.

                          Geht bestimmt. Mir ist diese Woche meine Glaskugel kaputt gegangen 😉

                          Was für ein Button? wo ist der? in einer App? Falls ja welche?

                          Der Button löst die 100 % Ladung des E Autos aus, wie kann ich den Button als Alies realisieren ?

                          In welchem Adapter? mit welchen Datenpunkten?

                          es ist ja nicht Quasi ein Licht mit true and False?

                          Mit den Datenpunkten wird man es besser verstehen. Momentan weiß ich nicht einmal ob es ein boolscher Wert ist, der einfach nur ein anderes Symbol (Glocke) als eine Lampe braucht oder ob es ein numerischer Wert oder etwas völlig anderes ist?

                          Die Icons kann man ja z.B. bei true/false in einem Alias socket separat mit icon: zuweisen.

                          Also etwas mehr Infos für die Lösung 😊

                          missiM Offline
                          missiM Offline
                          missi
                          wrote on last edited by
                          #2224

                          @armilar ladung.jpg

                          habe in dem Adapter diese Werte, bei Klicken der "Glocke" wird eine 100 % Ladung ausgelöst, für längere Fahrten etz.

                          Akku Stand etz habe ich schon ins Panel bekommen, auf der Auto Card würde diese Option noch nett sein.

                          ArmilarA 1 Reply Last reply
                          0
                          • missiM missi

                            @armilar ladung.jpg

                            habe in dem Adapter diese Werte, bei Klicken der "Glocke" wird eine 100 % Ladung ausgelöst, für längere Fahrten etz.

                            Akku Stand etz habe ich schon ins Panel bekommen, auf der Auto Card würde diese Option noch nett sein.

                            ArmilarA Offline
                            ArmilarA Offline
                            Armilar
                            Most Active Forum Testing
                            wrote on last edited by Armilar
                            #2225

                            @missi

                            Alias Taste draufsetzen...

                            Exemplarisch das PageItem:

                            <PageItem>{ id: 'alias.0.NSPanel_1.ChargeMaxRange', icon: 'alert', name: '100% Ladung', onColor: White, buttonText: 'starten'},
                            

                            Das die Funktion dem Akku nicht gut tut weißt du aber, oder? 😉

                            Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                            https://github.com/joBr99/nspanel-lovelace-ui/wiki

                            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                            D 1 Reply Last reply
                            1
                            • ArmilarA Armilar

                              @missi

                              Alias Taste draufsetzen...

                              Exemplarisch das PageItem:

                              <PageItem>{ id: 'alias.0.NSPanel_1.ChargeMaxRange', icon: 'alert', name: '100% Ladung', onColor: White, buttonText: 'starten'},
                              

                              Das die Funktion dem Akku nicht gut tut weißt du aber, oder? 😉

                              D Offline
                              D Offline
                              DaPeace
                              wrote on last edited by
                              #2226

                              @armilar wie läuft denn das mit dem ICON beim daswetter-adapter? Ich hab hier nur eine ICON-Url als DP oder übersehe ich was? Hab bisher den accuweather verwendet aber das mit der API hat nicht zuverlässig funktioniert. Jetzt habe ich auf dem Display einne großen Kreis mit Ausrufezeichen was sicher nicht ok ist 😕

                              ArmilarA 1 Reply Last reply
                              0
                              • ArmilarA Armilar

                                Sonnenaufgang und Sonnenuntergang im Panel anzeigen

                                Gestern gab es eine Anfrage im Github zur Anzeige des Sonnenuntergangs und des Sonnenaufgangs im NSPanel-Screensaver, statt des Windes oder sonstiger Infos...

                                Das ist grundsätzlich schon mal über die Datenpunkte der Wetteradapter möglich:

                                1. accuweather:

                                  accuweather.0.Daily.Day1.Sunrise
                                  accuweather.0.Daily.Day1.Sunset
                                  
                                2. daswetter:

                                  daswetter.0.NextDaysDetailed.Location_1.Day_1.sun_in
                                  daswetter.0.NextDaysDetailed.Location_1.Day_1.sun_out
                                  
                                3. In z.B. Blockly über Astrofunktionen ermitteln

                                Ihr werdet aber schnell feststellen, dass alle 3 Varianten nur über den gleichen Tag gelten. D.h. wenn Ihr nur wissen wollt, wann ist oder wann war denn heute der Sonnenaufgang und wann ist oder wann war denn der Sonnenuntergang, dann seit ihr bereits am Ziel.

                                Dann nur den Wert zusammen mit 2 Symbolen, z.B.:
                                weather-sunset-up
                                und
                                weather-sunset-up
                                in zwei der 4 möglichen Parameter unter firstScreensaverEntity - fourthScreensaverEntity eintragen und schon sieht man die Sonnenparameter...

                                Wenn ihr allerdings sagt, "was interessiert mich der Sonnenaufgang von vor 6 Stunden", dann wird es etwas kniffeliger, da alle 3 Varianten diese Infos zum nächsten Sonnenaufgang (d.h. in der Zeitspanne ab Sonnenuntergang bis 00:00 Uhr) nicht hergeben.

                                Über einen Trick kann das nächste auftretende Event mit der korrekten Zeit dennoch ermittelt werden:

                                dc6b0c1a-d22f-4111-a935-9e27028f2641-image.png

                                <xml xmlns="https://developers.google.com/blockly/xml">
                                  <variables>
                                    <variable id="lGekM1LmQ*+O~ztvyTc:">weatherAdapter</variable>
                                    <variable id="Xv1p5y_ZlH)(!`r+@M2-">weatherAdapterPath</variable>
                                    <variable id="ovz}S,QCqYs3J.((Fkpv">sunEvents</variable>
                                    <variable id="P#6vyNW5F+sI$Qrr0?h*">index</variable>
                                    <variable id="@5Qnz.4pO[WaGGMl~t:7">actualDateTime</variable>
                                    <variable id="M87_jtL0%axzS#nEf}@8">i</variable>
                                    <variable id="vV)QwBgKYRse|Gs4[[fT">icon</variable>
                                  </variables>
                                  <block type="comment" id="tAg0=MyLBUI#S44Z_+:f" x="-1087" y="-263">
                                    <field name="COMMENT">daswetter oder accuweather</field>
                                    <next>
                                      <block type="variables_set" id="YQ~W/]6j7]GiW;M2o9[r">
                                        <field name="VAR" id="lGekM1LmQ*+O~ztvyTc:">weatherAdapter</field>
                                        <value name="VALUE">
                                          <block type="text" id="u_YZ`*9~|0fRI?YXCj/%">
                                            <field name="TEXT">accuweather</field>
                                          </block>
                                        </value>
                                        <next>
                                          <block type="variables_set" id="Z?=.#aeK1/gFw=42J0o:" disabled="true">
                                            <field name="VAR" id="lGekM1LmQ*+O~ztvyTc:">weatherAdapter</field>
                                            <value name="VALUE">
                                              <block type="text" id="T3[xm$GuP81)^^bN6xX0">
                                                <field name="TEXT">daswetter</field>
                                              </block>
                                            </value>
                                            <next>
                                              <block type="create" id="LQe;P09bd0~(hUFLWqkj">
                                                <field name="NAME">0_userdata.0.Sunevent.next</field>
                                                <value name="VALUE">
                                                  <block type="time_get" id="fm;5H}Iuc`$TS-j$gkg@">
                                                    <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                    <field name="OPTION">hh:mm</field>
                                                  </block>
                                                </value>
                                                <next>
                                                  <block type="create" id="$f98Y1:{]9c8-PcWZ23!">
                                                    <field name="NAME">0_userdata.0.Sunevent.icon</field>
                                                    <value name="VALUE">
                                                      <block type="text" id="-9a[$n}WeQ+X|%@KAUu-">
                                                        <field name="TEXT">weather-sunset-down</field>
                                                      </block>
                                                    </value>
                                                    <next>
                                                      <block type="controls_if" id="aWT)^_,X01O*My5%qRJ{">
                                                        <mutation elseif="1"></mutation>
                                                        <value name="IF0">
                                                          <block type="logic_compare" id="$Mb~iPxz|;qAazg6_fIV">
                                                            <field name="OP">EQ</field>
                                                            <value name="A">
                                                              <block type="variables_get" id="b6C?CY-;)B_L@?.@vKa~">
                                                                <field name="VAR" id="lGekM1LmQ*+O~ztvyTc:">weatherAdapter</field>
                                                              </block>
                                                            </value>
                                                            <value name="B">
                                                              <block type="text" id="+f=YQ9/k@aZ@5$,BLA@e">
                                                                <field name="TEXT">accuweather</field>
                                                              </block>
                                                            </value>
                                                          </block>
                                                        </value>
                                                        <statement name="DO0">
                                                          <block type="variables_set" id=".N1$ZK~J8:gTg-b-]xkM">
                                                            <field name="VAR" id="Xv1p5y_ZlH)(!`r+@M2-">weatherAdapterPath</field>
                                                            <value name="VALUE">
                                                              <block type="text" id="5rPYs{N{Bb;y~9/sZ{EI">
                                                                <field name="TEXT">accuweather.0.Daily.</field>
                                                              </block>
                                                            </value>
                                                            <next>
                                                              <block type="variables_set" id="dnjel3yq(6oygmqQ!dkj">
                                                                <field name="VAR" id="ovz}S,QCqYs3J.((Fkpv">sunEvents</field>
                                                                <value name="VALUE">
                                                                  <block type="lists_create_with" id="`GS-e7_NuO%[Gi$L^G1M">
                                                                    <mutation items="3"></mutation>
                                                                    <value name="ADD0">
                                                                      <block type="convert_from_date" id=",f;2ZyAlw._@P3tT3Tb|">
                                                                        <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                        <field name="OPTION">object</field>
                                                                        <value name="VALUE">
                                                                          <block type="get_value_var" id="/F1?*lb5i^.IP:$5F=LK">
                                                                            <field name="ATTR">val</field>
                                                                            <value name="OID">
                                                                              <shadow type="text" id="!!|bLOmb_b!O#F;z,[G_">
                                                                                <field name="TEXT"></field>
                                                                              </shadow>
                                                                              <block type="text_join" id="6V7[[(izxMt?BX/#E-VY">
                                                                                <mutation items="2"></mutation>
                                                                                <value name="ADD0">
                                                                                  <block type="variables_get" id="l(|D)96pya:zZtC,Bo,5">
                                                                                    <field name="VAR" id="Xv1p5y_ZlH)(!`r+@M2-">weatherAdapterPath</field>
                                                                                  </block>
                                                                                </value>
                                                                                <value name="ADD1">
                                                                                  <block type="text" id="HL[Fg8Lk8vc9cm:J0RQL">
                                                                                    <field name="TEXT">Day1.Sunrise</field>
                                                                                  </block>
                                                                                </value>
                                                                              </block>
                                                                            </value>
                                                                          </block>
                                                                        </value>
                                                                      </block>
                                                                    </value>
                                                                    <value name="ADD1">
                                                                      <block type="convert_from_date" id="`o9IZceriS8T*x|vHjT-">
                                                                        <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                        <field name="OPTION">object</field>
                                                                        <value name="VALUE">
                                                                          <block type="get_value_var" id="qlPvcXBEFIN6Q(])Zf1e">
                                                                            <field name="ATTR">val</field>
                                                                            <value name="OID">
                                                                              <shadow type="text" id="$b77uH(SKw/C:zsy6b]N">
                                                                                <field name="TEXT"></field>
                                                                              </shadow>
                                                                              <block type="text_join" id=";Z{TEONc%`vj2ab$0r-N">
                                                                                <mutation items="2"></mutation>
                                                                                <value name="ADD0">
                                                                                  <block type="variables_get" id="^75~_ZO02c+8M3fLD:@=">
                                                                                    <field name="VAR" id="Xv1p5y_ZlH)(!`r+@M2-">weatherAdapterPath</field>
                                                                                  </block>
                                                                                </value>
                                                                                <value name="ADD1">
                                                                                  <block type="text" id="g!jaz;vh[`?/iH6I)dn4">
                                                                                    <field name="TEXT">Day1.Sunset</field>
                                                                                  </block>
                                                                                </value>
                                                                              </block>
                                                                            </value>
                                                                          </block>
                                                                        </value>
                                                                      </block>
                                                                    </value>
                                                                    <value name="ADD2">
                                                                      <block type="convert_from_date" id="q`kX3qBPbX9#rWrk_gPZ">
                                                                        <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                        <field name="OPTION">object</field>
                                                                        <value name="VALUE">
                                                                          <block type="get_value_var" id="{.t=[v{K;as@4JHH;=)5">
                                                                            <field name="ATTR">val</field>
                                                                            <value name="OID">
                                                                              <shadow type="text" id="dM@45=mm0NJBe+8y0;]w">
                                                                                <field name="TEXT"></field>
                                                                              </shadow>
                                                                              <block type="text_join" id="iyvr3._s~OG$~y(52u]i">
                                                                                <mutation items="2"></mutation>
                                                                                <value name="ADD0">
                                                                                  <block type="variables_get" id="+8k+4nl/L?8#d#JMD(-T">
                                                                                    <field name="VAR" id="Xv1p5y_ZlH)(!`r+@M2-">weatherAdapterPath</field>
                                                                                  </block>
                                                                                </value>
                                                                                <value name="ADD1">
                                                                                  <block type="text" id="s}AkJj4}7Oa],!~M[N;j">
                                                                                    <field name="TEXT">Day2.Sunrise</field>
                                                                                  </block>
                                                                                </value>
                                                                              </block>
                                                                            </value>
                                                                          </block>
                                                                        </value>
                                                                      </block>
                                                                    </value>
                                                                  </block>
                                                                </value>
                                                              </block>
                                                            </next>
                                                          </block>
                                                        </statement>
                                                        <value name="IF1">
                                                          <block type="logic_compare" id="rQU!WF~q(bitAh|M@g(q">
                                                            <field name="OP">EQ</field>
                                                            <value name="A">
                                                              <block type="variables_get" id="Gt+G^3Virtg[[n;5oAv/">
                                                                <field name="VAR" id="lGekM1LmQ*+O~ztvyTc:">weatherAdapter</field>
                                                              </block>
                                                            </value>
                                                            <value name="B">
                                                              <block type="text" id="{K!=g%4{7M#N1CY/|a|~">
                                                                <field name="TEXT">daswetter</field>
                                                              </block>
                                                            </value>
                                                          </block>
                                                        </value>
                                                        <statement name="DO1">
                                                          <block type="variables_set" id="-=_U;)7lZQegY1jdg)cK">
                                                            <field name="VAR" id="Xv1p5y_ZlH)(!`r+@M2-">weatherAdapterPath</field>
                                                            <value name="VALUE">
                                                              <block type="text" id="n8)9D;BD~G8U+^?#_B|P">
                                                                <field name="TEXT">daswetter.0.NextDaysDetailed.Location_1.</field>
                                                              </block>
                                                            </value>
                                                            <next>
                                                              <block type="variables_set" id="X{sXpUN}p#QmbxFmw8fv">
                                                                <field name="VAR" id="ovz}S,QCqYs3J.((Fkpv">sunEvents</field>
                                                                <value name="VALUE">
                                                                  <block type="lists_create_with" id="KGhvO0)OHqNc(0A=1fIv">
                                                                    <mutation items="3"></mutation>
                                                                    <value name="ADD0">
                                                                      <block type="convert_from_date" id="qP;eIvR3D-L6?/0e~AXW">
                                                                        <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                        <field name="OPTION">object</field>
                                                                        <value name="VALUE">
                                                                          <block type="get_value_var" id="P^:@OuzJ|9V+/da%9hXY">
                                                                            <field name="ATTR">val</field>
                                                                            <value name="OID">
                                                                              <shadow type="text" id="%lm`:~Ng5g0ye#u8LpY3">
                                                                                <field name="TEXT"></field>
                                                                              </shadow>
                                                                              <block type="text_join" id="lP*QSKhZ3NyG=nieqAYp">
                                                                                <mutation items="2"></mutation>
                                                                                <value name="ADD0">
                                                                                  <block type="variables_get" id="02;ViSq8#:bNa!aoQCy0">
                                                                                    <field name="VAR" id="Xv1p5y_ZlH)(!`r+@M2-">weatherAdapterPath</field>
                                                                                  </block>
                                                                                </value>
                                                                                <value name="ADD1">
                                                                                  <block type="text" id="`8uIK)lkeXa)uORJ,q!c">
                                                                                    <field name="TEXT">Day_1.sun_in</field>
                                                                                  </block>
                                                                                </value>
                                                                              </block>
                                                                            </value>
                                                                          </block>
                                                                        </value>
                                                                      </block>
                                                                    </value>
                                                                    <value name="ADD1">
                                                                      <block type="convert_from_date" id="(gZ)2;Qk@ba/C75gsU(m">
                                                                        <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                        <field name="OPTION">object</field>
                                                                        <value name="VALUE">
                                                                          <block type="get_value_var" id="Az`4rq*tGHQfkSu6z;@L">
                                                                            <field name="ATTR">val</field>
                                                                            <value name="OID">
                                                                              <shadow type="text" id="lvj~LN:O%tQP$Qv{oRA6">
                                                                                <field name="TEXT"></field>
                                                                              </shadow>
                                                                              <block type="text_join" id="EdueeQ@fX0;$/wF/+%K]">
                                                                                <mutation items="2"></mutation>
                                                                                <value name="ADD0">
                                                                                  <block type="variables_get" id="lY{eT5lh9QBfS;j1cPbo">
                                                                                    <field name="VAR" id="Xv1p5y_ZlH)(!`r+@M2-">weatherAdapterPath</field>
                                                                                  </block>
                                                                                </value>
                                                                                <value name="ADD1">
                                                                                  <block type="text" id="6!Cnq-;oAG0]8jB2fI-*">
                                                                                    <field name="TEXT">Day_1.sun_out</field>
                                                                                  </block>
                                                                                </value>
                                                                              </block>
                                                                            </value>
                                                                          </block>
                                                                        </value>
                                                                      </block>
                                                                    </value>
                                                                    <value name="ADD2">
                                                                      <block type="convert_from_date" id="#6jO_%HDJ*x;|=VR=XC,">
                                                                        <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                        <field name="OPTION">object</field>
                                                                        <value name="VALUE">
                                                                          <block type="get_value_var" id="A!;q:Z6*Z6R*pZ+x.GF0">
                                                                            <field name="ATTR">val</field>
                                                                            <value name="OID">
                                                                              <shadow type="text">
                                                                                <field name="TEXT"></field>
                                                                              </shadow>
                                                                              <block type="text_join" id=",,Lm/%RWi7xv*{rwFt%b">
                                                                                <mutation items="2"></mutation>
                                                                                <value name="ADD0">
                                                                                  <block type="variables_get" id="_rR;kn|US.%R:mRkJ]Dc">
                                                                                    <field name="VAR" id="Xv1p5y_ZlH)(!`r+@M2-">weatherAdapterPath</field>
                                                                                  </block>
                                                                                </value>
                                                                                <value name="ADD1">
                                                                                  <block type="text" id="0ij}w8n2_H7id81iN(Di">
                                                                                    <field name="TEXT">Day_2.sun_in</field>
                                                                                  </block>
                                                                                </value>
                                                                              </block>
                                                                            </value>
                                                                          </block>
                                                                        </value>
                                                                      </block>
                                                                    </value>
                                                                  </block>
                                                                </value>
                                                              </block>
                                                            </next>
                                                          </block>
                                                        </statement>
                                                        <next>
                                                          <block type="schedule" id="ErsW?NofKCD(:Q0`V~Ma">
                                                            <field name="SCHEDULE">* * * * *</field>
                                                            <statement name="STATEMENT">
                                                              <block type="variables_set" id="K.7g^mfGF[8pxWc_@F!(">
                                                                <field name="VAR" id="P#6vyNW5F+sI$Qrr0?h*">index</field>
                                                                <value name="VALUE">
                                                                  <block type="math_number" id="Jp}00bvJvG3NJb$=.Ey_">
                                                                    <field name="NUM">0</field>
                                                                  </block>
                                                                </value>
                                                                <next>
                                                                  <block type="variables_set" id="@DQ2yP;Bfwk)m|BTja24">
                                                                    <field name="VAR" id="@5Qnz.4pO[WaGGMl~t:7">actualDateTime</field>
                                                                    <value name="VALUE">
                                                                      <block type="time_get" id="3C!5:__oTnJHZkT=CdHT">
                                                                        <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                        <field name="OPTION">object</field>
                                                                      </block>
                                                                    </value>
                                                                    <next>
                                                                      <block type="controls_forEach" id="h|7J%UAbmOJ^U%@?Q9E_">
                                                                        <field name="VAR" id="M87_jtL0%axzS#nEf}@8">i</field>
                                                                        <value name="LIST">
                                                                          <block type="variables_get" id="[F{0YG]6%@js31kZ0yCS">
                                                                            <field name="VAR" id="ovz}S,QCqYs3J.((Fkpv">sunEvents</field>
                                                                          </block>
                                                                        </value>
                                                                        <statement name="DO">
                                                                          <block type="math_change" id="k5Wkbq)pJ3rxMf())#LW">
                                                                            <field name="VAR" id="P#6vyNW5F+sI$Qrr0?h*">index</field>
                                                                            <value name="DELTA">
                                                                              <shadow type="math_number" id="Valeu~1_|nc^q`qSXq!j">
                                                                                <field name="NUM">1</field>
                                                                              </shadow>
                                                                            </value>
                                                                            <next>
                                                                              <block type="controls_if" id="W$w0W1#f4(n=}tSWu~Db">
                                                                                <value name="IF0">
                                                                                  <block type="logic_compare" id="S3M3iWnzs]~v?|E!k%S}">
                                                                                    <field name="OP">LT</field>
                                                                                    <value name="A">
                                                                                      <block type="variables_get" id="T+]nVz*-7{N=wNZ]#u$,">
                                                                                        <field name="VAR" id="@5Qnz.4pO[WaGGMl~t:7">actualDateTime</field>
                                                                                      </block>
                                                                                    </value>
                                                                                    <value name="B">
                                                                                      <block type="variables_get" id="Jn@V}yHRDy..QpfoHlNS">
                                                                                        <field name="VAR" id="M87_jtL0%axzS#nEf}@8">i</field>
                                                                                      </block>
                                                                                    </value>
                                                                                  </block>
                                                                                </value>
                                                                                <statement name="DO0">
                                                                                  <block type="controls_flow_statements" id="{kN12BKUd3`*w.r~H3NA">
                                                                                    <field name="FLOW">BREAK</field>
                                                                                  </block>
                                                                                </statement>
                                                                              </block>
                                                                            </next>
                                                                          </block>
                                                                        </statement>
                                                                        <next>
                                                                          <block type="control_ex" id="{Cq0X~RE]fq)Q:*9t1j@">
                                                                            <field name="TYPE">false</field>
                                                                            <field name="CLEAR_RUNNING">FALSE</field>
                                                                            <value name="OID">
                                                                              <shadow type="field_oid" id="kHf`Hf9Pk]W9Cee(4nWQ">
                                                                                <field name="oid">Object ID</field>
                                                                              </shadow>
                                                                              <block type="text" id="gTFZ[557_KhO%}Q3Riao">
                                                                                <field name="TEXT">0_userdata.0.Sunevent.next</field>
                                                                              </block>
                                                                            </value>
                                                                            <value name="VALUE">
                                                                              <shadow type="logic_boolean" id="X4-?Cs.mI+_n:pp^(mSU">
                                                                                <field name="BOOL">TRUE</field>
                                                                              </shadow>
                                                                              <block type="convert_from_date" id="DFWkKAZ=CxL%QJ`va3aU">
                                                                                <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                                <field name="OPTION">hh:mm</field>
                                                                                <value name="VALUE">
                                                                                  <block type="variables_get" id="S=2,(W$!zu=~@Om4W^BI">
                                                                                    <field name="VAR" id="M87_jtL0%axzS#nEf}@8">i</field>
                                                                                  </block>
                                                                                </value>
                                                                              </block>
                                                                            </value>
                                                                            <value name="DELAY_MS">
                                                                              <shadow type="math_number" id="`U*0`cyy(+!x/av];hxs">
                                                                                <field name="NUM">0</field>
                                                                              </shadow>
                                                                            </value>
                                                                            <next>
                                                                              <block type="debug" id=";5aowQ7k1/*[)rn[/*,E">
                                                                                <field name="Severity">log</field>
                                                                                <value name="TEXT">
                                                                                  <shadow type="text" id="8E;^oHb[00iVTwq$?/e}">
                                                                                    <field name="TEXT">test</field>
                                                                                  </shadow>
                                                                                  <block type="variables_get" id="m^Sy9v.}u6FnVn_~~Qmd">
                                                                                    <field name="VAR" id="P#6vyNW5F+sI$Qrr0?h*">index</field>
                                                                                  </block>
                                                                                </value>
                                                                                <next>
                                                                                  <block type="controls_if" id="(Bd^RAxt-HWlq@,Q?J2K">
                                                                                    <mutation else="1"></mutation>
                                                                                    <value name="IF0">
                                                                                      <block type="logic_compare" id="43|7RBEH08AoepX,AkSq">
                                                                                        <field name="OP">EQ</field>
                                                                                        <value name="A">
                                                                                          <block type="variables_get" id="{qmY@S`FE2]4E~3ec}52">
                                                                                            <field name="VAR" id="P#6vyNW5F+sI$Qrr0?h*">index</field>
                                                                                          </block>
                                                                                        </value>
                                                                                        <value name="B">
                                                                                          <block type="math_number" id="LRiZXf)MUC#Y+dRC_,)J">
                                                                                            <field name="NUM">2</field>
                                                                                          </block>
                                                                                        </value>
                                                                                      </block>
                                                                                    </value>
                                                                                    <statement name="DO0">
                                                                                      <block type="variables_set" id="rPqQ-`A{E#0y{7h@?lY^">
                                                                                        <field name="VAR" id="vV)QwBgKYRse|Gs4[[fT">icon</field>
                                                                                        <value name="VALUE">
                                                                                          <block type="text" id="!q.lWsImqxu|0Pk*I;=t">
                                                                                            <field name="TEXT">weather-sunset-down</field>
                                                                                          </block>
                                                                                        </value>
                                                                                      </block>
                                                                                    </statement>
                                                                                    <statement name="ELSE">
                                                                                      <block type="variables_set" id="1m=87T*7*X$4a!U0{/_H">
                                                                                        <field name="VAR" id="vV)QwBgKYRse|Gs4[[fT">icon</field>
                                                                                        <value name="VALUE">
                                                                                          <block type="text" id="36zG[DTfbdr}z02tRcKU">
                                                                                            <field name="TEXT">weather-sunset-up</field>
                                                                                          </block>
                                                                                        </value>
                                                                                      </block>
                                                                                    </statement>
                                                                                    <next>
                                                                                      <block type="control_ex" id="2OVi=tZ}O0b0jI/lRivB">
                                                                                        <field name="TYPE">false</field>
                                                                                        <field name="CLEAR_RUNNING">FALSE</field>
                                                                                        <value name="OID">
                                                                                          <shadow type="field_oid">
                                                                                            <field name="oid">Object ID</field>
                                                                                          </shadow>
                                                                                          <block type="text" id="/,dXm2wWk#mhaC+%[gM]">
                                                                                            <field name="TEXT">0_userdata.0.Sunevent.icon</field>
                                                                                          </block>
                                                                                        </value>
                                                                                        <value name="VALUE">
                                                                                          <shadow type="logic_boolean" id="0=re$F9YZu+U7R)7J--p">
                                                                                            <field name="BOOL">TRUE</field>
                                                                                          </shadow>
                                                                                          <block type="variables_get" id="uM|GIUVV|MHPcc35Tqdz">
                                                                                            <field name="VAR" id="vV)QwBgKYRse|Gs4[[fT">icon</field>
                                                                                          </block>
                                                                                        </value>
                                                                                        <value name="DELAY_MS">
                                                                                          <shadow type="math_number" id="|$7R_dM7IwX.2X8Mx^o7">
                                                                                            <field name="NUM">0</field>
                                                                                          </shadow>
                                                                                        </value>
                                                                                      </block>
                                                                                    </next>
                                                                                  </block>
                                                                                </next>
                                                                              </block>
                                                                            </next>
                                                                          </block>
                                                                        </next>
                                                                      </block>
                                                                    </next>
                                                                  </block>
                                                                </next>
                                                              </block>
                                                            </statement>
                                                          </block>
                                                        </next>
                                                      </block>
                                                    </next>
                                                  </block>
                                                </next>
                                              </block>
                                            </next>
                                          </block>
                                        </next>
                                      </block>
                                    </next>
                                  </block>
                                </xml>
                                

                                Für den Fall, dass jemand Interesse hat...

                                P Offline
                                P Offline
                                PaNoRu84
                                wrote on last edited by PaNoRu84
                                #2227

                                @armilar
                                Ich habe versucht sunrise und sunset zu nutzen, das Panel zeigt dann aber nichts an an der Stelle an.
                                Ich hatte die Vermutung, dass es am DatenFormat ZEIT liegt. Was soll z.B. Decimalstellen für Zeit bewirken.
                                Ich konnte aber nirgendwo finden, wie man einen anderen Datentyp außer Zahl einstellen kann.

                                Kannst du vielleicht eine Beispiel entity posten? 🙂

                                DANKE

                                1 Reply Last reply
                                0
                                • ArmilarA Offline
                                  ArmilarA Offline
                                  Armilar
                                  Most Active Forum Testing
                                  wrote on last edited by
                                  #2228

                                  @panoru84

                                  na klar 😉

                                  Ich denke im Moment schon zu viel in der 4.0.0... da ist das Standard 😂

                                  nachfolgend bis zum nächsten Release:

                                  firstScreensaverEntity:   { ScreensaverEntity: 'accuweather.0.Daily.Day1.Sunrise',
                                                                  ScreensaverEntityFactor: null,
                                                                  ScreensaverEntityDecimalPlaces: null,
                                                                  ScreensaverEntityIcon: 'weather-sunset-up', 
                                                                  ScreensaverEntityText: 'Auf', 
                                                                  ScreensaverEntityUnitText: '', 
                                                                  ScreensaverEntityIconColor: MSYellow 
                                                                },
                                      secondScreensaverEntity:   { ScreensaverEntity: 'accuweather.0.Daily.Day1.Sunset',
                                                                  ScreensaverEntityFactor: null,
                                                                  ScreensaverEntityDecimalPlaces: null,
                                                                  ScreensaverEntityIcon: 'weather-sunset-down', 
                                                                  ScreensaverEntityText: 'Unter', 
                                                                  ScreensaverEntityUnitText: '', 
                                                                  ScreensaverEntityIconColor: MSYellow 
                                                                },
                                  

                                  Damit war es tatsächlich nicht getan 😉

                                  Die bitte auch noch austauschen:

                                  function HandleScreensaverUpdate(): void {
                                      try {
                                          let arrayEntityType = [];
                                          let arrayEntityIntNameEntity = [];
                                          let arrayEntityIcon = [];
                                          let arrayEntityIconColor = [];
                                          let arrayEntityDisplayName = [];
                                          let arrayEntityOptionalValue = [];
                                  
                                          //Create MainIcon
                                          if (screensaverEnabled && config.weatherEntity != null && existsObject(config.weatherEntity)) {
                                              let icon = getState(config.weatherEntity + '.ICON').val;
                                              let temperature =
                                                  existsState(config.weatherEntity + '.ACTUAL') ? getState(config.weatherEntity + '.ACTUAL').val :
                                                      existsState(config.weatherEntity + '.TEMP') ? getState(config.weatherEntity + '.TEMP').val : 'null';
                                              let temperatureUnit = getState(NSPanel_Path + 'Config.temperatureUnit').val;
                                              arrayEntityOptionalValue[0] = temperature + ' ' + temperatureUnit;
                                              if (weatherAdapterInstance == 'daswetter.0.') {
                                                  arrayEntityIcon [0] = Icons.GetIcon(GetDasWetterIcon(parseInt(icon)));
                                                  arrayEntityIconColor[0] = GetDasWetterIconColor(parseInt(icon));
                                              } else if (weatherAdapterInstance == 'accuweather.0.') {
                                                  arrayEntityIcon [0] = Icons.GetIcon(GetAccuWeatherIcon(parseInt(icon)));
                                                  arrayEntityIconColor[0] = GetAccuWeatherIconColor(parseInt(icon));
                                              }
                                  
                                              arrayEntityType[0] = '';
                                              arrayEntityIntNameEntity[0] = '';
                                              arrayEntityDisplayName[0] = '';
                                              arrayEntityOptionalValue[0] = temperature + ' ' + temperatureUnit;
                                  
                                              if (weatherForecast) {
                                                  // AccuWeather Forecast Tag 2 - Tag 5 -- Wenn weatherForecast = true
                                                  for (let i = 2; i < 6; i++) {
                                  
                                                      let TempMin = 0;
                                                      let TempMax = 0;
                                                      let DayOfWeek = 0;
                                                      let WeatherIcon = '0';
                                  
                                                      if (weatherAdapterInstance == 'daswetter.0.') {
                                                          TempMin = getState('daswetter.0.NextDays.Location_1.Day_' + i + '.Minimale_Temperatur_value').val;
                                                          TempMax = getState('daswetter.0.NextDays.Location_1.Day_' + i + '.Maximale_Temperatur_value').val;
                                                          DayOfWeek = (getState('daswetter.0.NextDays.Location_1.Day_' + i + '.Tag_value').val).substring(0,2);
                                                          WeatherIcon = GetDasWetterIcon(getState('daswetter.0.NextDays.Location_1.Day_' + i + '.Wetter_Symbol_id').val);
                                                          vwIconColor[i-1] = GetDasWetterIconColor(getState('daswetter.0.NextDays.Location_1.Day_' + i + '.Wetter_Symbol_id').val);
                                                      } else if (weatherAdapterInstance == 'accuweather.0.') {
                                                          TempMin = getState('accuweather.0.Summary.TempMin_d' + i).val;
                                                          TempMax = getState('accuweather.0.Summary.TempMax_d' + i).val;
                                                          DayOfWeek = getState('accuweather.0.Summary.DayOfWeek_d' + i).val;
                                                          WeatherIcon = GetAccuWeatherIcon(getState('accuweather.0.Summary.WeatherIcon_d' + i).val);
                                                          vwIconColor[i-1] = GetAccuWeatherIconColor(getState('accuweather.0.Summary.WeatherIcon_d' + i).val);
                                                      } 
                                                      let tempMinMaxString: string = '';
                                                      if (weatherScreensaverTempMinMax == 'Min') {
                                                          tempMinMaxString = TempMin + temperatureUnit;
                                                      } else if (weatherScreensaverTempMinMax == 'Max') {
                                                          tempMinMaxString = TempMax + temperatureUnit;
                                                      } else if (weatherScreensaverTempMinMax == 'MinMax') {
                                                          tempMinMaxString = Math.round(TempMin) + '° ' + Math.round(TempMax) + '°';
                                                      }
                                                      arrayEntityType[i-1] = ''; 
                                                      arrayEntityIntNameEntity[i-1] = '';
                                                      arrayEntityIcon[i-1] = Icons.GetIcon(WeatherIcon);
                                                      arrayEntityIconColor[i-1] = vwIconColor[i-1];
                                                      arrayEntityDisplayName[i-1] = DayOfWeek;
                                                      arrayEntityOptionalValue[i-1] = tempMinMaxString;
                                                  }
                                              } else {
                                                  arrayEntityType[1] = '';
                                                  arrayEntityType[2] = '';
                                                  arrayEntityType[3] = '';
                                                  arrayEntityType[4] = ''; 
                                                  arrayEntityIntNameEntity[1] = '';
                                                  arrayEntityIntNameEntity[2] = '';
                                                  arrayEntityIntNameEntity[3] = '';
                                                  arrayEntityIntNameEntity[4] = '';
                                                  if (typeof getState(config.firstScreensaverEntity.ScreensaverEntity).val == 'string') {
                                                      if (!isNaN(Date.parse(getState(config.firstScreensaverEntity.ScreensaverEntity).val))) {
                                                          arrayEntityOptionalValue[1] = formatDate(getDateObject(getState(config.firstScreensaverEntity.ScreensaverEntity).val), 'hh:mm');
                                                      } else {
                                                          arrayEntityOptionalValue[1] = getState(config.firstScreensaverEntity.ScreensaverEntity).val;
                                                      }                
                                                  } else {
                                                      arrayEntityOptionalValue[1] = (getState(config.firstScreensaverEntity.ScreensaverEntity).val * config.firstScreensaverEntity.ScreensaverEntityFactor).toFixed(config.firstScreensaverEntity.ScreensaverEntityDecimalPlaces) + config.firstScreensaverEntity.ScreensaverEntityUnitText;
                                                  }
                                                  if (typeof getState(config.secondScreensaverEntity.ScreensaverEntity).val == 'string') {
                                                      if (!isNaN(Date.parse(getState(config.secondScreensaverEntity.ScreensaverEntity).val))) {
                                                          arrayEntityOptionalValue[2] = formatDate(getDateObject(getState(config.secondScreensaverEntity.ScreensaverEntity).val), 'hh:mm');
                                                      } else {
                                                          arrayEntityOptionalValue[2] = getState(config.secondScreensaverEntity.ScreensaverEntity).val;
                                                      }                
                                                  } else {
                                                      arrayEntityOptionalValue[2] = (getState(config.secondScreensaverEntity.ScreensaverEntity).val * config.secondScreensaverEntity.ScreensaverEntityFactor).toFixed(config.secondScreensaverEntity.ScreensaverEntityDecimalPlaces) + config.secondScreensaverEntity.ScreensaverEntityUnitText;
                                                  }
                                                  if (typeof getState(config.thirdScreensaverEntity.ScreensaverEntity).val == 'string') {
                                                      if (!isNaN(Date.parse(getState(config.thirdScreensaverEntity.ScreensaverEntity).val))) {
                                                          arrayEntityOptionalValue[3] = formatDate(getDateObject(getState(config.thirdScreensaverEntity.ScreensaverEntity).val), 'hh:mm');
                                                      } else {
                                                          arrayEntityOptionalValue[3] = getState(config.thirdScreensaverEntity.ScreensaverEntity).val;
                                                      }                
                                                  } else {
                                                      arrayEntityOptionalValue[3] = (getState(config.thirdScreensaverEntity.ScreensaverEntity).val * config.thirdScreensaverEntity.ScreensaverEntityFactor).toFixed(config.thirdScreensaverEntity.ScreensaverEntityDecimalPlaces) + config.thirdScreensaverEntity.ScreensaverEntityUnitText;
                                                  }
                                                  if (typeof getState(config.fourthScreensaverEntity.ScreensaverEntity).val == 'string') {
                                                      if (!isNaN(Date.parse(getState(config.fourthScreensaverEntity.ScreensaverEntity).val))) {
                                                          arrayEntityOptionalValue[4] = formatDate(getDateObject(getState(config.fourthScreensaverEntity.ScreensaverEntity).val), 'hh:mm');
                                                      } else {
                                                          arrayEntityOptionalValue[4] = getState(config.fourthScreensaverEntity.ScreensaverEntity).val;
                                                      }                
                                                  } else {
                                                      arrayEntityOptionalValue[4] = (getState(config.fourthScreensaverEntity.ScreensaverEntity).val * config.fourthScreensaverEntity.ScreensaverEntityFactor).toFixed(config.fourthScreensaverEntity.ScreensaverEntityDecimalPlaces) + config.fourthScreensaverEntity.ScreensaverEntityUnitText;
                                                  }
                                                  arrayEntityIcon[1] = Icons.GetIcon(config.firstScreensaverEntity.ScreensaverEntityIcon);
                                                  arrayEntityIcon[2] = Icons.GetIcon(config.secondScreensaverEntity.ScreensaverEntityIcon);
                                                  arrayEntityIcon[3] = Icons.GetIcon(config.thirdScreensaverEntity.ScreensaverEntityIcon);
                                                  arrayEntityIcon[4] = Icons.GetIcon(config.fourthScreensaverEntity.ScreensaverEntityIcon);
                                                  arrayEntityDisplayName[1] = config.firstScreensaverEntity.ScreensaverEntityText;
                                                  arrayEntityDisplayName[2] = config.secondScreensaverEntity.ScreensaverEntityText;
                                                  arrayEntityDisplayName[3] = config.thirdScreensaverEntity.ScreensaverEntityText;
                                                  arrayEntityDisplayName[4] = config.fourthScreensaverEntity.ScreensaverEntityText;
                                                  GetScreenSaverEntityColor(config.firstScreensaverEntity, 1, sctF1Icon);
                                                  arrayEntityIconColor[1] = vwIconColor[1];
                                                  GetScreenSaverEntityColor(config.secondScreensaverEntity, 2, sctF2Icon);
                                                  arrayEntityIconColor[2] = vwIconColor[2];
                                                  GetScreenSaverEntityColor(config.thirdScreensaverEntity, 3, sctF3Icon);
                                                  arrayEntityIconColor[3] = vwIconColor[3];
                                                  GetScreenSaverEntityColor(config.fourthScreensaverEntity, 4, sctF4Icon);    
                                                  arrayEntityIconColor[4] = vwIconColor[4];
                                              }
                                  
                                              //AltLayout
                                              if (getState(NSPanel_Path + 'Config.Screensaver.alternativeScreensaverLayout').val) {           
                                                  arrayEntityType[5] = ''; 
                                                  arrayEntityIntNameEntity[5] = '';
                                                  arrayEntityIcon[5] = Icons.GetIcon(config.fourthScreensaverEntity.ScreensaverEntityIcon);
                                                  arrayEntityIconColor[5] = rgb_dec565(White);
                                                  arrayEntityDisplayName[5] = '';
                                                  arrayEntityOptionalValue[5] = getState(config.fourthScreensaverEntity.ScreensaverEntity).val + ' ' + config.fourthScreensaverEntity.ScreensaverEntityUnitText ;
                                              }
                                  
                                              HandleScreensaverColors();
                                  
                                              let payloadString = '';
                                              let max_index = 5;
                                              if (getState(NSPanel_Path + 'Config.Screensaver.alternativeScreensaverLayout').val) {
                                                  max_index = 6;
                                              }
                                              
                                              for (let j = 0; j < max_index; j++) {
                                                  payloadString +=    arrayEntityType[j] + '~' +
                                                                      arrayEntityIntNameEntity[j] + '~' +
                                                                      arrayEntityIcon[j] + '~' +
                                                                      arrayEntityIconColor[j] + '~' +
                                                                      arrayEntityDisplayName[j] + '~' +
                                                                      arrayEntityOptionalValue[j] + '~';
                                              }
                                  
                                              if (Debug) console.log('weatherUpdate~' + payloadString);
                                  
                                              SendToPanel(<Payload>{ payload: 'weatherUpdate~' + payloadString });
                                  
                                              HandleScreensaverStatusIcons();
                                  
                                          }
                                      } catch (err) {
                                          console.log('HandleScreensaverUpdate: ' + err.message);
                                      }
                                  }
                                  

                                  Habe noch kurzfristig eine Änderung gemacht (muss dann wohl 2 Wochen noch halten). Aber erst anfixen und dann nicht liefern geht irgendwie auch nicht 😉 )

                                  Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                                  https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                  1 Reply Last reply
                                  0
                                  • D DaPeace

                                    @armilar wie läuft denn das mit dem ICON beim daswetter-adapter? Ich hab hier nur eine ICON-Url als DP oder übersehe ich was? Hab bisher den accuweather verwendet aber das mit der API hat nicht zuverlässig funktioniert. Jetzt habe ich auf dem Display einne großen Kreis mit Ausrufezeichen was sicher nicht ok ist 😕

                                    ArmilarA Offline
                                    ArmilarA Offline
                                    Armilar
                                    Most Active Forum Testing
                                    wrote on last edited by Armilar
                                    #2229

                                    @DaPeace

                                    gleiches Thema, nur die Datenpunkte austauschen...

                                    ist in der 4.0.0 bereits mit automatischem Wechsel auf das nächste Event enthalten
                                    2ee0d64e-0c35-498b-97d2-fbc57fae7066-image.png

                                    Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                                    https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                    D 1 Reply Last reply
                                    1
                                    • ArmilarA Armilar

                                      @DaPeace

                                      gleiches Thema, nur die Datenpunkte austauschen...

                                      ist in der 4.0.0 bereits mit automatischem Wechsel auf das nächste Event enthalten
                                      2ee0d64e-0c35-498b-97d2-fbc57fae7066-image.png

                                      D Offline
                                      D Offline
                                      DaPeace
                                      wrote on last edited by
                                      #2230

                                      @armilar Das hab ich jetzt bei der 3.9 gemacht und hab eben den Kreis mit Ausrufezeichen als großes Icon.

                                      Folgende Anpassnung:
                                      const weatherAdapterInstance: string = 'daswetter.0.';
                                      weatherEntity: 'alias.0.Wetter', // Dieser Alias wird automatisch für den gewählten Wetter erstellt und kann entsprechend angepasst werden

                                      und entsprechend bei dem Alias die Punkte neu gesetzt und zwar so:
                                      Bild 14.02.23 um 20.21.jpeg

                                      ArmilarA 1 Reply Last reply
                                      0
                                      • D DaPeace

                                        @armilar Das hab ich jetzt bei der 3.9 gemacht und hab eben den Kreis mit Ausrufezeichen als großes Icon.

                                        Folgende Anpassnung:
                                        const weatherAdapterInstance: string = 'daswetter.0.';
                                        weatherEntity: 'alias.0.Wetter', // Dieser Alias wird automatisch für den gewählten Wetter erstellt und kann entsprechend angepasst werden

                                        und entsprechend bei dem Alias die Punkte neu gesetzt und zwar so:
                                        Bild 14.02.23 um 20.21.jpeg

                                        ArmilarA Offline
                                        ArmilarA Offline
                                        Armilar
                                        Most Active Forum Testing
                                        wrote on last edited by Armilar
                                        #2231

                                        @dapeace

                                        Alles richtig soweit. Mit der iconURL kann Skript aber nichts anfangen. Muss der numerische Wert sein...

                                        fde15938-225a-440e-be7b-63ba8f2ff308-image.png

                                        6a5dac9c-bc9b-41cf-b610-88474dbcab24-image.png

                                        Den Rest brauchst du für das Panel nicht füllen, es sei denn du nutzt es auch in anderen Datenpunkten oder anderen Skripten

                                        Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                                        https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                        1 Reply Last reply
                                        0
                                        • ArmilarA Armilar

                                          @tom_w

                                          Kommt auf die Version an. Es gab Situationen, in denen das Updaten der 4 Icons und der Außentemperatur angehalten wurde, wenn nur einmal auf den Screensaver geklickt wurde.

                                          Sollte aber mit dem bExit-Hotfix ab der v3.9.0.2 behoben sein

                                          T Offline
                                          T Offline
                                          Tom_W
                                          wrote on last edited by
                                          #2232

                                          @armilar
                                          Wurde es eigentlich mal geändert mit dem Wetter Alias? Habe gerade festgestellt dass ich zwei Aliase habe, einen in Alias Ordner vom NS Panel (den erinnere ich mich selbst erstellt zu haben) und einen direkt alias.0.wetter.
                                          Ich vermute das war mein Problem. Irgendwie ging an mir vorüber dass er da einen automatisch macht.

                                          Gruß

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          599

                                          Online

                                          32.4k

                                          Users

                                          81.3k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe