Navigation

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

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    SONOFF NSPanel mit Lovelace UI

    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      TT-Tom @ticaki last edited by TT-Tom

      @ticaki

      Guten Morgen,

      ja kann ich bestätigen, werden wir anpassen, damit die Logik stimmt.

      folgende Codezeilen müssen in der Function CreateEntity angepasst werden

                              case 'window':
                                  iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : o.common.role == 'door' ? Icons.GetIcon('door-closed') : Icons.GetIcon('window-closed-variant');
                                  iconId2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : o.common.role == 'door' ? Icons.GetIcon('door-open') : Icons.GetIcon('window-open-variant');
       
                                  buttonText = pageItem.buttonText !== undefined ? pageItem.buttonText : existsState(pageItem.id + '.BUTTONTEXT') ? getState(pageItem.id + '.BUTTONTEXT').val : 'PRESS';
                                  if (existsState(pageItem.id + '.COLORDEC')) {
                                      iconColor = getState(pageItem.id + '.COLORDEC').val;
                                  } else {
                                      if (val === true || val === 'true') {
                                          iconColor = GetIconColor(pageItem, true, useColors);
                                      } else {
                                          iconColor = GetIconColor(pageItem, false, useColors);
                                      }
                                  }
                                  if (val === true || val === 'true') { iconId = iconId2 };                       
                                  break;
       
      

      und im zweiten Teil

                      case 'window':
                          type = 'text';
                          let windowState;
       
                          if (existsState(pageItem.id + '.ACTUAL')) {
                              if (getState(pageItem.id + '.ACTUAL').val) {
                                  iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : o.common.role == 'door' ? Icons.GetIcon('door-open') : Icons.GetIcon('window-open-variant');
                                  iconColor = GetIconColor(pageItem, true, useColors);
                                  windowState = findLocale('window', 'opened');
                              } else {
                                  iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : o.common.role == 'door' ? Icons.GetIcon('door-closed') : Icons.GetIcon('window-closed-variant');
                                  iconId = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : iconId;
                                  iconColor = GetIconColor(pageItem, false, useColors);
                                  windowState = findLocale('window', 'closed');
                              }
                          }
       
                          if (Debug) log('CreateEntity Icon role door/window ~' + type + '~' + pageItem.id + '~' + iconId + '~' + iconColor + '~' + name + '~' + windowState, 'info');
                          return '~' + type + '~' + pageItem.id + '~' + iconId + '~' + iconColor + '~' + name + '~' + windowState;
      
      

      Danke für die Info. Ich mach jetzt mal die Augen zu, bis nachher 😴

      T 1 Reply Last reply Reply Quote 2
      • T
        ticaki Developer @TT-Tom last edited by

        @tt-tom

        Danke, kann bestätigen das ACTUAL == true jetzt durchgehend für on* steht

        1 Reply Last reply Reply Quote 0
        • T
          ticaki Developer last edited by

          Noch was, ich hab mir ein Skript geschrieben, das mir die Datenpunkte/Aliase zu Fenster offen erstellt und diese aktualisiert. Wenn das jemand gebrauchen kann https://github.com/ticaki/iobroker-skript-sammlung/blob/main/NS_Panel_Windows.ts

          Ist nicht sehr schön oder benutzerfreundlich. Wenns aber jemand verwenden will, investiere ich da gerne noch mehr Zeit um es "schick" zu machen. Für mich reicht es so. 🙂

          K T 2 Replies Last reply Reply Quote 3
          • K
            Kuckuckmann @ticaki last edited by

            @ticaki
            Hey @ticaki ,

            vielen Dank für das Angebot. Wenn Du es noch bissel schick machst, dann kann ich es gerne mit einer entsprechenden Beschreibung in unsere Wiki im Bereich Skripte und Anleitungen hinzufügen.

            LG

            1 Reply Last reply Reply Quote 2
            • T
              TT-Tom @ticaki last edited by TT-Tom

              @ticaki

              ich habe ein Blockly mal erstellt und Trigger auf ACTUAL mit einem Selektor.

              c5e613b2-ba1f-4b6e-bd6f-48d10cec4ee6-image.png

              <xml xmlns="https://developers.google.com/blockly/xml">
               <variables>
                 <variable id="`3q~tn|]r(LvC{19,zEY">Status_offeneFenster</variable>
                 <variable id="1#Xk,SKr8Zq2_0q?X|J9">offeneFenster</variable>
                 <variable id="9/yJg%I-v6N#IQN8st6m">i</variable>
               </variables>
               <block type="on_ext" id="U::/4wmI3}Z@$SKGvvg=" x="88" y="63">
                 <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                 <field name="CONDITION">ne</field>
                 <field name="ACK_CONDITION"></field>
                 <value name="OID0">
                   <shadow type="field_oid" id="7Ap7C6jIj.Mb{_iqs{{c">
                     <field name="oid">default</field>
                   </shadow>
                   <block type="selector" id="96E5N_xE!C=N626d0a_!">
                     <field name="TEXT">alias.0.Fenster.*.ACTUAL</field>
                   </block>
                 </value>
                 <statement name="STATEMENT">
                   <block type="variables_set" id="o,82sN(nBal}d`S@FhlR">
                     <field name="VAR" id="`3q~tn|]r(LvC{19,zEY">Status_offeneFenster</field>
                     <value name="VALUE">
                       <block type="logic_boolean" id="];3BCyF%j]5d6+iW7SW4">
                         <field name="BOOL">FALSE</field>
                       </block>
                     </value>
                     <next>
                       <block type="variables_set" id="^tJ|0)6.8hOKTt~3bSY9">
                         <field name="VAR" id="1#Xk,SKr8Zq2_0q?X|J9">offeneFenster</field>
                         <value name="VALUE">
                           <block type="math_number" id=")NrEP9EVPkpU]lvaOIow">
                             <field name="NUM">0</field>
                           </block>
                         </value>
                         <next>
                           <block type="controls_forEach" id="zvEO{_Dt/YKLr5SA*4qm">
                             <field name="VAR" id="9/yJg%I-v6N#IQN8st6m">i</field>
                             <value name="LIST">
                               <block type="selector" id="`nXP$958BtmgM?C9iXJ,">
                                 <field name="TEXT">alias.0.Fenster.*.ACTUAL</field>
                               </block>
                             </value>
                             <statement name="DO">
                               <block type="controls_if" id="|Tcfi[X*+Z+I^XU`W}c!">
                                 <value name="IF0">
                                   <block type="get_value_var" id="B+{iQL0J8Uf/auyLg4;o">
                                     <field name="ATTR">val</field>
                                     <value name="OID">
                                       <shadow type="text" id="nv_xNDwj^vZd(VS@iL;U">
                                         <field name="TEXT">i</field>
                                       </shadow>
                                       <block type="variables_get" id="-R.oMz[v.gJ{a/*nGZsC">
                                         <field name="VAR" id="9/yJg%I-v6N#IQN8st6m">i</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                                 <statement name="DO0">
                                   <block type="math_change" id="%GBC0#O-FVUS`64Eg8Li">
                                     <field name="VAR" id="1#Xk,SKr8Zq2_0q?X|J9">offeneFenster</field>
                                     <value name="DELTA">
                                       <shadow type="math_number" id="O`wb$_E?4FjD*66Z.#Gz">
                                         <field name="NUM">1</field>
                                       </shadow>
                                       <block type="math_number" id="Z0%Qp}aXwh|l3tUTm:KU">
                                         <field name="NUM">1</field>
                                       </block>
                                     </value>
                                     <next>
                                       <block type="variables_set" id="-%h(cYD!_^|7$j1?7-a;">
                                         <field name="VAR" id="`3q~tn|]r(LvC{19,zEY">Status_offeneFenster</field>
                                         <value name="VALUE">
                                           <block type="logic_boolean" id="JyKdvLU=OeWD@`O7AQVi">
                                             <field name="BOOL">TRUE</field>
                                           </block>
                                         </value>
                                       </block>
                                     </next>
                                   </block>
                                 </statement>
                               </block>
                             </statement>
                             <next>
                               <block type="update" id="VyzVl0%MBx@R,H+HEEGI">
                                 <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                 <field name="OID">0_userdata.0.NSPanel.Allgemein.Fenster.Anzahl_offene</field>
                                 <field name="WITH_DELAY">FALSE</field>
                                 <value name="VALUE">
                                   <block type="convert_tostring" id="p[AN%(l=kC~8Cq!%kyQy">
                                     <value name="VALUE">
                                       <block type="variables_get" id="d`73i^f,-$v2QCbRQy$g">
                                         <field name="VAR" id="1#Xk,SKr8Zq2_0q?X|J9">offeneFenster</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                                 <next>
                                   <block type="update" id="v2F]Z/TZY!PunG*kfkwO">
                                     <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                     <field name="OID">0_userdata.0.NSPanel.Allgemein.Fenster.Status_offene</field>
                                     <field name="WITH_DELAY">FALSE</field>
                                     <value name="VALUE">
                                       <block type="variables_get" id=",$^vy#7#dLe!?DtT8N|U">
                                         <field name="VAR" id="`3q~tn|]r(LvC{19,zEY">Status_offeneFenster</field>
                                       </block>
                                     </value>
                                     <next>
                                       <block type="debug" id="M({M!_ScK2[_^j=8BB,k">
                                         <field name="Severity">log</field>
                                         <value name="TEXT">
                                           <shadow type="text" id="mzN-~@]E)uw@:W_};^IK">
                                             <field name="TEXT">test</field>
                                           </shadow>
                                           <block type="text_join" id="fj*OT/+j;9m96a+a?y|Z">
                                             <mutation items="3"></mutation>
                                             <value name="ADD0">
                                               <block type="variables_get" id="])A_QS+y+K{m/p[dOVM$">
                                                 <field name="VAR" id="1#Xk,SKr8Zq2_0q?X|J9">offeneFenster</field>
                                               </block>
                                             </value>
                                             <value name="ADD1">
                                               <block type="text" id="XEdD(OQYXlXrVeP1Bw|k">
                                                 <field name="TEXT"> Fenster offen </field>
                                               </block>
                                             </value>
                                             <value name="ADD2">
                                               <block type="on_source" id="]/!CU#MQ~Ci#!Y]o1~BA" disabled="true">
                                                 <field name="ATTR">id</field>
                                               </block>
                                             </value>
                                           </block>
                                         </value>
                                       </block>
                                     </next>
                                   </block>
                                 </next>
                               </block>
                             </next>
                           </block>
                         </next>
                       </block>
                     </next>
                   </block>
                 </statement>
               </block>
              </xml>
              

              die Ordnerstruktur sieht bei mir so aus
              22e26016-ea88-49aa-ad62-bb0ab0feaa39-image.png

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

                @tt-tom

                Das Skript sucht per Selektor die Fenster und baut dann das hier, incl Stockwerk und Räumen.
                Die nimmt es aus der enum id für den raum "enum.rooms.Haus.second_floor" ist das Stockwerk. "enum.rooms.Haus.second_floor.Bad" ist der Raum.
                Den Namen nimmt es auf adapter.0.diesemDatenpunkt. Den Sensoren müssen Räumen und Funktionen zugewiesen sein:Bildschirmfoto 2023-12-30 um 18.24.32.png

                Bildschirmfoto 2023-12-30 um 18.22.17.png

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

                  @ticaki

                  für die User ist es immer gut, wenn das Script alle Arbeit abnimmt und die Config sich in Grenzen hält. Persönlich bin ich eher der Bastler und teste hier intensiv. Schön das du unsere Crew hier so gut unterstützt. Danke nochmal.

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

                    Update - v4.3.3.28

                    3af08d6c-ab02-41a4-af1b-f98d6231d5af-image.png

                    • Durch Änderung des Payload, sollte das Problem mit zu langen Alias Verzeichnissen und daraus resultierenden langen Zeichenketten behoben sein. Es ist trotzdem sinnvoll die Verzeichnisse kurz zuhalten, statt Erdgeschoss -> EG oder Schlafzimmer -> SZ nutzen.
                    • Fix: Die Icons des Fenster-Alias sind von der Logik gedreht
                    • Es wird beim Port-Check berücksichtigt, wenn ein MQTT-Client installiert ist
                    • Fix: Der Fallback, wenn ein Name nicht im Alias vorhanden ist, wurde erweitert

                    Wie kann ich das Update durchführen?

                    Wenn aktuelle Version ab v4.3.3.10, dann unteren Teil des NSPanelTs.ts ab:

                    // ________________ DE: Ab hier keine Konfiguration mehr _______________
                    
                    

                    austauschen

                    https://github.com/joBr99/nspanel-lovelace-ui/blob/main/ioBroker/NsPanelTs.ts

                    Wenn aktuelle Version bis v4.3.3.9, dann Updateaneitung befolgen:
                    https://github.com/joBr99/nspanel-lovelace-ui/wiki/NSPanel-Starthilfe-FAQ#hilfe-bei-update--upgrade

                    🎆 🍾 Wir wünschen euch allen einen guten Rutsch ins neue Jahr 2024 🍾 🎆

                    VG
                    @Armilar, @TT-Tom & @Kuckuckmann 😊

                    D 1 Reply Last reply Reply Quote 4
                    • O
                      OlliGut last edited by OlliGut

                      Hallo zusammen,
                      ich würde gerne meine Bose Soundtouch mit dem NSPanel steuern. Ich habe auf dem IOBroker den Soundtouch Adapter installiert und eine Instanz angelegt. Da es die vorkonfigurierten MediaCards nur für Sonos, Alexa etc gibt. wollte ich einfach eine Standard-MediaCard nutzen.

                      let Bose = <PageMedia>
                      {
                          "type": "cardMedia",
                          "heading": "Bose",
                          "useColor": true,
                          "items": [<PageItem>{   
                                      id: AliasPath + 'Media.Bose', 
                                      adapterPlayerInstance: "bosesoundtouch.0.",
                                      mediaDevice: "192.168.178.32",
                                      speakerList: ["Wohnzimmer"],
                                      colorMediaIcon: colorSpotify,
                                      colorMediaArtist: Yellow,
                                      colorMediaTitle: Yellow,
                                      autoCreateALias : true
                                   }]
                      };
                      

                      Aber schon ein erster Versuch schlägt fehl: "Cannot read properties of undefined (reading 'id')"
                      Was eigentlich logisch ist, weil es den Pfad unter Alias auch nicht gibt; allerdings wird er auch nicht angelegt, obwohl ich das Autoanlegen aktiviert habe.
                      Hat vielleicht jemand so einen Adapter bereits gebaut und könnte mir etwas helfen, oder wie sollte ich vorgehen, wenn ich das selber machen müsste?
                      Für einen Tipp bedanke ich mich im Voraus und wünsche allen schonmal einen guten Rutsch.
                      Gruß Olli

                      T 1 Reply Last reply Reply Quote 0
                      • D
                        DerT Forum Testing @Armilar last edited by

                        Hallo Zusammen,

                        ich hab das ganze mal Testweise bei mir aufgebaut und eine Frage zu den Hardware Buttons.

                        Irgendwie steig ich beim Beispiel nicht ganz durch..

                        //-------EN: Start Settings for Hardware Button, if used in software (Rule2) --------------------------------------
                            // DE: Konfiguration des linken Schalters des NSPanels
                            // EN: Configuration of the left switch of the NSPanel
                            button1: {
                                // DE: Mögliche Werte wenn Rule2 definiert: 'page', 'toggle', 'set' - Wenn nicht definiert --> mode: null
                                // EN: Possible values if Rule2 defined: 'page', 'toggle', 'set' - If not defined --> mode: null
                                mode: 'page',
                                // DE: Zielpage - Verwendet wenn mode = page
                                // EN: Target page - Used if mode = page
                                page: null,
                                // DE: Zielentity - Verwendet wenn mode = set oder toggle
                                // EN: Target entity - Used if mode = set or toggle
                                entity: null,
                                // DE: Zielwert - Verwendet wenn mode = set
                                // EN: Target value - Used if mode = set
                                setValue: null
                            },
                        
                            // DE: Konfiguration des rechten Schalters des NSPanels
                            // EN: Configuration of the right switch of the NSPanel
                            button2: {
                                mode: null,
                                page: null,
                                entity: null,
                                setValue: null
                            },
                        //--------- DE: Ende - Einstellungen für Hardware Button, wenn Sie softwareseitig genutzt werden (Rule2) -------------
                        
                        

                        Gibt es dazu noch irgendwo was im Wiki das ich nicht gefunden habe? Die Regel habe ich eingestellt.
                        Konkret habe ich zwei Szenarien die ich gerne mal testen würde.

                        1. Mit den Buttons durch die Menüs navigieren
                        2. Temperatur an einem Thermostat reduzieren bzw. erhöhen.
                        T 1 Reply Last reply Reply Quote 0
                        • T
                          TT-Tom @DerT last edited by TT-Tom

                          @dert sagte in SONOFF NSPanel mit Lovelace UI:

                          Mit den Buttons durch die Menüs navigieren

                          du kannst mit der Rule1 den Tasten ein Befehl zuweisen. Zum Beispiel Home, das hat die selbe Funktion, wenn im Display auf das Haus drückst.
                          Siehe Beispiel im Wiki.

                          Temperatur an einem Thermostat reduzieren bzw. erhöhen.

                          Du kannst nur auf einen festen Wert setzen.

                              button1: {
                                  mode: 'set',
                                  page: null,
                                  entity: 'alias.0.NSPanel.Thermostat.SET',
                                  setValue: 25
                              },
                          

                          Kannst aber auch gerne ein Issues aufmachen. Thema: Button1 mode: Set -> setValue up/down. Dann schauen wir uns das im neuen Jahr mal an.

                          Schönen Rutsch in neue Jahr

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

                            @DerT

                            Kann auch ein true liefern (links down/rechts up)... ist bloß eine Frage, wie man den Wert später auswertet...

                            Selbst wenn der Wert nur 1 wäre, könnte ein Blockly den Setpoint-Datenpunkt inkrementieren oder dekrementieren.

                            Das Navigationsbeispiel ist hier:

                            https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Navigation#navigation-mit-den-hardware-buttons

                            bzw.:
                            https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker---FAQ-&-Anleitungen#13d-mit-den-hardwarebuttons-vor-und-zurück-navigieren

                            Ich bin dann mal feiern 😉

                            1 Reply Last reply Reply Quote 1
                            • jayjojayson
                              jayjojayson last edited by

                              Hallo, erstmal ein gesundes und glückliches neues Jahr für alle.

                              Ich nutze das neue Script nun auch schon ein bisschen und funktioniert auch alles soweit super, aber ich bekomme einen Fehler einfach nicht weg und weiß nicht woran das liegen kann. Hat einer von euch vielleicht eine Idee?

                              	javascript.0 (5055) script.js.NSPanels.Panel2: error at function HandleScreensaverUpdate: parseFormat is not a function
                              

                              Eigentlich habe ich nichts geändert, bis auf den ScreensaverEntity 4, hier will ich meinen aktuellen Solarertrag anzeigen.

                              Etwas weiter unten in den Einstellungen kann man die beiden virtuellen button im Screen konfigurieren
                              mrIcon1ScreensaverEntity und mrIcon2ScreensaverEntity. Wenn ich dort Datenpunkte hinterlege, zeigt er mir auch gleich Fehler an. Muss man irgendwo Relay.1 und Relay.2 extra setzen?

                              //---- Anfang     Screensaver Einstellungen / Screensaver settings ---------------------
                                  leftScreensaverEntity:
                                      [
                                           // Examples for Advanced-Screensaver: https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Config-Screensaver#entity-status-icons-ab-v400 
                              
                                      ],
                              
                                  bottomScreensaverEntity :  
                                      [
                                          // bottomScreensaverEntity 1
                                          {
                                              ScreensaverEntity: 'accuweather.0.Daily.Day1.Sunrise',
                                              ScreensaverEntityFactor: 1,
                                              ScreensaverEntityDecimalPlaces: 0,
                                              ScreensaverEntityDateFormat: { hour: '2-digit', minute: '2-digit' }, // Description at Wiki-Pages
                                              ScreensaverEntityIconOn: 'weather-sunset-up',
                                              ScreensaverEntityIconOff: null,
                                              ScreensaverEntityText: 'Sonne',
                                              ScreensaverEntityUnitText: '%',
                                              ScreensaverEntityIconColor: MSYellow //{'val_min': 0, 'val_max': 100}
                                          },
                                          // bottomScreensaverEntity 2
                                          {
                                              ScreensaverEntity: 'accuweather.0.Current.WindSpeed',
                                              ScreensaverEntityFactor: (1000/3600),
                                              ScreensaverEntityDecimalPlaces: 1,
                                              ScreensaverEntityIconOn: 'weather-windy',
                                              ScreensaverEntityIconOff: null,
                                              ScreensaverEntityText: "Wind",
                                              ScreensaverEntityUnitText: 'm/s',
                                              ScreensaverEntityIconColor: { 'val_min': 0, 'val_max': 120 }
                                          },
                                          // bottomScreensaverEntity 3
                                          {
                                              ScreensaverEntity: 'accuweather.0.Current.WindGust',
                                              ScreensaverEntityFactor: (1000/3600),
                                              ScreensaverEntityDecimalPlaces: 1,
                                              ScreensaverEntityIconOn: 'weather-tornado',
                                              ScreensaverEntityIconOff: null,
                                              ScreensaverEntityText: 'Böen',
                                              ScreensaverEntityUnitText: 'm/s',
                                              ScreensaverEntityIconColor: { 'val_min': 0, 'val_max': 120 }
                                          },
                                          // bottomScreensaverEntity 4
                                          {
                                              ScreensaverEntity: 'growatt.0.782463.devices.ACJ0B1802L.deviceData.eToday',
                                              ScreensaverEntityFactor: 1,
                                              ScreensaverEntityDecimalPlaces: 0,
                                              ScreensaverEntityIconOn: 'solar-power',
                                              ScreensaverEntityIconOff: null,
                                              ScreensaverEntityText: 'Strom',
                                              ScreensaverEntityUnitText: 'kWh',
                                              ScreensaverEntityIconColor: White
                                          },
                                          // bottomScreensaverEntity 5 (for Alternative and Advanced Screensaver)
                                          {
                                              ScreensaverEntity: 'accuweather.0.Current.RelativeHumidity',
                                              ScreensaverEntityFactor: 1,
                                              ScreensaverEntityDecimalPlaces: 1,
                                              ScreensaverEntityIconOn: 'water-percent',
                                              ScreensaverEntityIconOff: null,
                                              ScreensaverEntityText: 'Feuchte',
                                              ScreensaverEntityUnitText: '%',
                                              ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 100, 'val_best': 65}
                                          },
                                          // bottomScreensaverEntity 6 (for Advanced Screensaver)
                                          {
                                           ScreensaverEntity: NSPanel_Path + 'Relay.1',
                                           ScreensaverEntityIconOn: 'coach-lamp-variant',
                                           ScreensaverEntityText: 'Street',
                                           ScreensaverEntityOnColor: Yellow,
                                           ScreensaverEntityOffColor: White,
                                           ScreensaverEntityOnText: 'Is ON',
                                           ScreensaverEntityOffText: 'Not ON'
                                       },
                               	        // Examples for Advanced-Screensaver: https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Config-Screensaver#entity-status-icons-ab-v400 
                                      ],
                              
                                  indicatorScreensaverEntity:
                                      [
                              		// Examples for Advanced-Screensaver: https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Config-Screensaver#entity-status-icons-ab-v400 
                                      ],
                              
                                      // Status Icon 
                                  mrIcon1ScreensaverEntity: 
                                      { 
                                          ScreensaverEntity: NSPanel_Path + 'Relay.1', 
                                          ScreensaverEntityIconOn: 'lightbulb',
                                          ScreensaverEntityIconOff: null, 
                                          ScreensaverEntityValue: null,
                                          ScreensaverEntityValueDecimalPlace : 0,
                                          ScreensaverEntityValueUnit: null,
                                          ScreensaverEntityOnColor: On, 
                                          ScreensaverEntityOffColor: HMIOff 
                                      },
                                  mrIcon2ScreensaverEntity: 
                                      { 
                                          ScreensaverEntity: NSPanel_Path + 'Relay.2', 
                                          ScreensaverEntityIconOn: 'lightbulb',
                                          ScreensaverEntityIconOff: null, 
                                          ScreensaverEntityValue: null,
                                          ScreensaverEntityValueDecimalPlace : 0,
                                          ScreensaverEntityValueUnit: null, 
                                          ScreensaverEntityOnColor: On, 
                                          ScreensaverEntityOffColor: HMIOff 
                                      },
                              // ------ Ende der Screensaver Einstellungen --------------------
                              
                              T 1 Reply Last reply Reply Quote 0
                              • T
                                TT-Tom @jayjojayson last edited by TT-Tom

                                @jayjojayson
                                Ein gesundes neues Jahr.
                                Das sieht danach aus, das da in der JavaScript Instanz das npm Modul fehlt. Vergleich bitte mal mit der Anweisung im Wiki.

                                1 Reply Last reply Reply Quote 1
                                • jayjojayson
                                  jayjojayson last edited by

                                  @tt-tom Ich habe jetzt noch /opt/iobroker/SkripteJS nachgetragen. Die restlichen Punkte waren schon gesetzt.
                                  Jetzt bekomme ich noch viel mehr Fehler angezeigt und der Screensaver wird gar nicht mehr angezeigt. Die erstellten Seiten aber schon.

                                  Screenshot 2024-01-01 135305.png

                                  Thomas Braun T 2 Replies Last reply Reply Quote 0
                                  • Thomas Braun
                                    Thomas Braun Most Active @jayjojayson last edited by

                                    @jayjojayson Spiegel würde ich immer nach /home/iobroker/skripte oder sowas. Jedenfalls nicht in /opt/

                                    jayjojayson 1 Reply Last reply Reply Quote 0
                                    • jayjojayson
                                      jayjojayson @Thomas Braun last edited by

                                      @thomas-braun sagte in SONOFF NSPanel mit Lovelace UI:

                                      /home/iobroker/skripte

                                      Muss man denn überhaupt spiegeln?

                                      Thomas Braun 1 Reply Last reply Reply Quote 0
                                      • Thomas Braun
                                        Thomas Braun Most Active @jayjojayson last edited by

                                        @jayjojayson

                                        Nein.

                                        1 Reply Last reply Reply Quote 1
                                        • T
                                          ticaki Developer last edited by ticaki

                                          Zu fehlenden NPM-modulen mir hat er auch vorgestern dayjs angemeckert - nach 1 Stunde vergeblichen Fehler beheben, hab ich den Rechner neu gestartet und tadaging wieder.

                                          @Kuckuckmann

                                          Das oben genannte Skript - da drücke ich noch noch vor der Readme und den ganze Konfigurationschecks 😄

                                          Aber das hier ist einfacher:

                                          Mein NSPanel werden wenn ich fertig bin, alle durch BWM aktiviert, daher möchte ich eine Möglichkeit mir wichtiges als Text anzeigen zu lassen und nicht in jedem Skript eine Logik zu haben die das ganze verwaltet.

                                          Verwaltung von Nachrichten für Nspanel Screensaver.

                                          Da schreibt man Nachrichten in die erstellten States und die Verwaltung kümmert sich darum die gegebenenfalls zu rotieren und nach einer vorgegebenen Zeit zu entfernen oder erst nach einer weiteren Nachricht.

                                          Anleitung: https://github.com/ticaki/iobroker-skript-sammlung/blob/main/ScreensaverMessage.md
                                          Skript: https://github.com/ticaki/iobroker-skript-sammlung/blob/main/ScreensaverMessage.ts

                                          @TT-Tom @Armilar
                                          Gibts einen Möglichkeit vom Nspanel über das Menü, den Screensaver zu aktivieren? Oder einen Datenpunkt in dem Datenbaum der das aktiviert?

                                          Wenn ihr mal lust habt könnte ihr da vielleicht buzzer möglich machen?
                                          https://github.com/joBr99/nspanel-lovelace-ui/blob/b1b679701ebeb785abe853fc32fac480c1df2603/docs/notifications.md#notification-on-screensaver

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

                                            @jayjojayson

                                            bitte trage die Module in die obere Zeile. "zusätzliche Module" Siehe die das Wiki nochmal an.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            917
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            lovelace ui nspanel sonoff
                                            260
                                            7128
                                            4469159
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo