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.
    • Armilar
      Armilar Most Active Forum Testing @Neuschwansteini last edited by

      @ilovegym

      Super - sobald etwas zum Testen da ist, bist du dabei...

      Der NSPanel-Lovelace-UI - Adapter bekommt natürlich sein eigenes Wiki 😉

      1 Reply Last reply Reply Quote 3
      • theknut
        theknut last edited by

        @emd habs nicht getestet, aber sollte so passen. Montag bis Freitag 7 Uhr schaltet er es an und 7:30 Uhr wieder aus. Wenn du es jeden Tag willst, dann 1-5 durch * ersetzen.

        schedule('0 7 * * 1-5', () => {
            setState(`${NSPanel_Path}ScreensaverInfo.activeDimmodeBrightness`, 80);
            setState(`${NSPanel_Path}PageNavi`, JSON.stringify({
                    pagetype: 'page',
                    pageId: 3 // index in config pages
                }));
        });
        
        schedule('30 7 * * 1-5', () => {
            setState(`${NSPanel_Path}ScreensaverInfo.activeDimmodeBrightness`, -1);
        });
        
        E 1 Reply Last reply Reply Quote 1
        • theknut
          theknut @Armilar last edited by

          @ticaki @TT-Tom @Kuckuckmann @Armilar
          Top! Ihr steckt da so viel rein und das läuft wirklich alles so gut. Ich habe kürzlich erst das Panel angeguckt und gedacht "Mensch, das Ding ist immer an, da stürzt nichts ab, man kann es erweitern und alles mögliche damit verwirklichen. Ich bin begeistert!" Vielen vielen Dank!

          Leute nehmt das mal zum Anlass den Devs ein paar Almosen zukommen zu lassen. Paypal bekommt man auf DM-Anfrage beim Dev!

          PS.: Bitte tut euch einen gefallen und macht viele automatisierte Tests. Das Ding ist so groß geworden, da weiß man nie, ob man was kaputt gemacht hat. Bitte bei Gelegenheit mir auch mal einen Task im Github zuweisen, ich kann auch was übernehmen, wenn ich dazu komme. Wichtig ist nur, dass das Modell weitestgehend vom Adapter getrennt ist und die rein logischen Funktionen im Modell gut einzeln testbar sind.

          Armilar T 2 Replies Last reply Reply Quote 5
          • Armilar
            Armilar Most Active Forum Testing @theknut last edited by Armilar

            @theknut sagte in SONOFF NSPanel mit Lovelace UI:

            PS.: Bitte tut euch einen gefallen und macht viele automatisierte Tests. Das Ding ist so groß geworden, da weiß man nie, ob man was kaputt gemacht hat. Bitte bei Gelegenheit mir auch mal einen Task im Github zuweisen, ich kann auch was übernehmen, wenn ich dazu komme. Wichtig ist nur, dass das Modell weitestgehend vom Adapter getrennt ist und die rein logischen Funktionen im Modell gut einzeln testbar sind.

            Der Code wird komplett geschreddert und wird mit dem NSPanelTs.ts Script am Ende nicht mehr viel zu tun haben. Das Skript ist jetzt über 2,5 Jahre gewachsen und hat Strukturen, die zu Einbahnstraßen führen. Mit dem Wissen von heute, hätte ich vieles in der Vergangenheit anders gemacht... Wenn wir die Flexibilität ausbauen wollen, dann ist dieser Umbau ebenfalls erforderlich - aber letztendlich sehr viel flexibler...

            Bitte bei Gelegenheit mir auch mal einen Task im Github zuweisen

            You're Welcome

            1 Reply Last reply Reply Quote 1
            • R
              RDW1955 last edited by

              Hallo,

              ich bin hier noch relativ neu, also entschuldigung wenn ich eine Anfängerfrage stelle.
              Es laufen bei mir zur Zeit 4 NSPanel. bei 2 tritt der Fehler auf, das der balken zur Einstellung der Helligkeit (Tag) nicht angezeigt wird. Allee Panel haben den gleichen Softwarstand. Wie finde ich den Fehler ?

              20240214_190146.jpg

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

                @theknut

                Um die Komplexität zu veranschaulichen, so sieht meine aktuelle testkonfiguration aus um 7 Seiten zu testen:

                https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/blob/main/src/lib/config.ts

                Ohne dev-server ist es aktuell auch nicht testbar, wenn man den code nicht versteht. Da kommt später mal die Möglichkeit das mit einem Skript per sendTo zu konfigurieren um es zu testen. Als letztes fange ich dann an react zu lernen und mache mich an den admin - aber das wird dauern.

                theknut Rene55 2 Replies Last reply Reply Quote 1
                • T
                  TT-Tom @RDW1955 last edited by

                  @rdw1955

                  Prüfe mal, ob bei den beiden Panel, die Alias richtig angelegt wurden
                  alias.0.nspanel.X.Dimmode.brightnessDay

                  R 1 Reply Last reply Reply Quote 1
                  • R
                    RDW1955 @TT-Tom last edited by

                    @tt-tom

                    das war ein Treffer, bei beiden fehlen die Alias.
                    Von Hand anlegen ?
                    Gruß

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

                      @rdw1955

                      prüfe bitte auch, ob unter Userdata der Datenpunkt vorhanden ist

                      0_userdata.0.NSPanel.x.NSPanel_Dimmode_brightnessDay

                      Wenn vorhanden löschen, auf jedenFall muss das Script noch einmal gestartet werden. Dann sollten sie dasein.

                      R 1 Reply Last reply Reply Quote 1
                      • R
                        RDW1955 @TT-Tom last edited by

                        @tt-tom
                        Danke das war es.
                        Sehr gute Hilfe und schnell.

                        Gruß und schönen Abend

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

                          @emd

                          hier das neue File zum Testen
                          https://github.com/tt-tom17/MyScripts/blob/Fahrplan/Sonoff_NSPanel/Fahrplan_to_NSPanelbeta.ts

                          Es kann jetzt die Daten von Routen und Haltestellen / Anzeigetafeln auswerten. Das Script kann nur die bereitgestellten Daten vom Adapter auswerten.

                          1 Reply Last reply Reply Quote 2
                          • theknut
                            theknut @ticaki last edited by

                            @ticaki ja, das tatsächliche Rendering wirst du nicht testen können und ein großer Teil wird untestbar bleiben. Da ist so eine Demoseite schon nicht schlecht die man einfach schnell starten und guckt, ob die Werte passen. Das ist auch gut.
                            Mir ging es (wie auch schon auf Telegram besprochen) darum die ganze Logik weitestgehend von ioBroker zu trennen und einzeln testbar zu machen. Dann nehmen dir die Tests schon mal einiges ab.

                            1 Reply Last reply Reply Quote 0
                            • Rene55
                              Rene55 @ticaki last edited by

                              @ticaki Mir wird heute eine neue Tasmotaversion (13.4.0) angeboten. Einfach installieren ist nicht - ellenlange Fehlermeldung. Ich habe auch im Script gelesen: Tasmota > 13.0.0 ist ggfs. eine Umpartitionierung erforderlich. Nach der Beschreibung ist meine Partition offensichtlich richtig. Was tun?

                              Rene55 1 Reply Last reply Reply Quote 0
                              • Rene55
                                Rene55 @Rene55 last edited by

                                @rene55 Ich antworte mir mal selbst: Stromlos machen und nochmal probieren ==> funktioniert!

                                1 Reply Last reply Reply Quote 3
                                • E
                                  eMd @theknut last edited by eMd

                                  @theknut

                                  also ich habe mal ein wenig rumgespielt, egal ob ich -1 oder 80 eingebe, es springt immer wieder nach 5 sekunden in den Bildschirmschonermodus.

                                  habe ich da irgendwo einen fehler drin? habe es jetzt über die objekte ausprobiert per hand, also erst 80, dann pagenavi und trotzdem verschwindet die seite wieder...

                                  mfg
                                  eMd

                                  Update:
                                  Habe nun activedimmmode rausgenommen und trigger 0_userdata.0.NSPanel.2.ScreensaverInfo.Trigger_Dimmode mit true und false an, das funktioniert einwandfrei...

                                  D 1 Reply Last reply Reply Quote 0
                                  • D
                                    Doggie @eMd last edited by Doggie

                                    Hallo,
                                    nach einer Pause bin ich mal wieder an meinem NSPanel.
                                    Mein Problem: Seiten items werden nicht angezeigt, nur die Überschrift erscheint auf einer leeren Seite.

                                    let Gasverbrauch: PageType =        		
                                    {
                                        'type': 'cardGrid',
                                        'heading': 'Gasverbrauch' ,
                                        'useColor':  true,
                                        'items': [
                                    		  { id: 'alias.0.EG.Panel1.Gaszähler.Verbrauch_Heute.ACTUAL', name: 'Verbauch Heute', offColor: MSRed, onColor: MSGreen, useValue: true, colorScale: {'val_min': -20, 'val_max': 40, 'val_best': 20} },
                                            { id: 'alias.0.EG.Panel1.Gaszähler.Verbrauch_Gestern.ACTUAL ', name: 'Verbrauch Gestern', offColor: MSYellow, onColor: MSYellow , useValue: true, colorScale: {'val_min': 0, 'val_max': 100, 'val_best': 65} },
                                            { id: 'alias.0.EG.Panel1.Gaszähler.Kosten_Heute.ACTUAL', name: 'Kosten Heute', offColor: MSRed, onColor: MSGreen, useValue: true, colorScale: {'val_min': -20, 'val_max': 40, 'val_best': 20} },
                                            { id: 'alias.0.EG.Panel1.Gaszähler.Kosten_Gestern.ACTUAL', name: 'Kosten Gestern', offColor: White , onColor: White, useValue: true, colorScale: {'val_min': 0, 'val_max': 12} },
                                            { id: 'alias.0.EG.Panel1.Gaszähler.Verbrauch_Monat.ACTUAL', name: 'Verbrauch Monat', offColor: White , onColor: White, useValue: true, colorScale: {'val_min': 0, 'val_max': 9} },
                                            { id: 'alias.0.EG.Panel1.Gaszähler.Kosten_Monat.ACTUAL', name: 'Kosten Monat', offColor: White , onColor: White, useValue: true, colorScale: {'val_min': 950, 'val_max': 1050, 'val_best': 1013} },
                                        ]};
                                    

                                    Ich bin mir nicht sicher, ob noch irgendwo der Pfad zu den Datenpunkten angegeben werden muss.
                                    Wo ist der Fehler? Kann mir jemand auf die Sprünge helfen?
                                    Das Script selbst zeigt keine Fehler.

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

                                      @doggie sagte in SONOFF NSPanel mit Lovelace UI:

                                      .ACTUAL

                                      Alle .ACTUAL dürfen nicht im PageItem sein...

                                      let Gasverbrauch: PageType =        		
                                      {
                                          'type': 'cardGrid',
                                          'heading': 'Gasverbrauch' ,
                                          'useColor':  true,
                                          'items': [
                                              { id: 'alias.0.EG.Panel1.Gaszähler.Verbrauch_Heute', name: 'Verbauch Heute', offColor: MSRed, onColor: MSGreen, useValue: true, colorScale: {'val_min': -20, 'val_max': 40, 'val_best': 20} },
                                              { id: 'alias.0.EG.Panel1.Gaszähler.Verbrauch_Gestern', name: 'Verbrauch Gestern', offColor: MSYellow, onColor: MSYellow , useValue: true, colorScale: {'val_min': 0, 'val_max': 100, 'val_best': 65} },
                                              { id: 'alias.0.EG.Panel1.Gaszähler.Kosten_Heute', name: 'Kosten Heute', offColor: MSRed, onColor: MSGreen, useValue: true, colorScale: {'val_min': -20, 'val_max': 40, 'val_best': 20} },
                                              { id: 'alias.0.EG.Panel1.Gaszähler.Kosten_Gestern', name: 'Kosten Gestern', offColor: White , onColor: White, useValue: true, colorScale: {'val_min': 0, 'val_max': 12} },
                                              { id: 'alias.0.EG.Panel1.Gaszähler.Verbrauch_Monat', name: 'Verbrauch Monat', offColor: White , onColor: White, useValue: true, colorScale: {'val_min': 0, 'val_max': 9} },
                                              { id: 'alias.0.EG.Panel1.Gaszähler.Kosten_Monat', name: 'Kosten Monat', offColor: White , onColor: White, useValue: true, colorScale: {'val_min': 950, 'val_max': 1050, 'val_best': 1013} },
                                          ]};
                                      

                                      Leerzeichen im String sind auch nicht von Vorteil

                                      'alias.0.EG.Panel1.Gaszähler.Verbrauch_Gestern.ACTUAL '
                                      
                                      D 1 Reply Last reply Reply Quote 2
                                      • D
                                        Doggie @Armilar last edited by

                                        @armilar Vielen Dank! Und schon ist alles gut.

                                        1 Reply Last reply Reply Quote 1
                                        • M
                                          mading last edited by mading

                                          Wie empfohlen, bin ich nun auf die neuste Version des NSPanel gegangen und habe zwei Anliegen:

                                          Der Lademodus Text unten wird nicht angezeigt: So sah es unter der alten Version aus:
                                          7f3a2006-194f-4e2e-a6ef-f63be8614865-grafik.png

                                          "Sofort" kommt aus dem DP 0_userdata.0.EigeneDatenpunkte.openWB.LadeModusText

                                          // bottomScreensaverEntity 5 (for Alternative and Advanced Screensaver)
                                                  {
                                                     ScreensaverEntity: '0_userdata.0.EigeneDatenpunkte.openWB.LadeModusText',
                                                      ScreensaverEntityFactor: 1,
                                                      ScreensaverEntityDecimalPlaces: 0,
                                                      ScreensaverEntityIconOn: 'electric-switch-closed',
                                                      ScreensaverEntityIconOff: null,
                                                      ScreensaverEntityText: "Modus",
                                                      ScreensaverEntityUnitText: null,
                                                      //ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 12}
                                                  },
                                          

                                          Wenn ich das so speichere, zeigt er keinerlei Icons mehr an (nur noch Uhrzeit/ Datum).

                                          Für mein Fusswärmer habe ich wie empfohlen die neue Card Grid Deskription genommen:

                                          let Fusswaermer = <PageGrid>
                                          
                                          {
                                          
                                              'type': 'cardGrid',
                                          
                                              'heading': 'Fußwärmer',
                                          
                                              'useColor': true,
                                          
                                              'items': [
                                          
                                                  <PageItem>{ id: 'alias.0.NSPanel_1.Fusswaermer', icon: 'heating-coil', name: 'Fusswaermer' },
                                          
                                              ]
                                          
                                          };
                                          

                                          unten bei den Pages noch "Fusswaermer," hinzugefügt. Die Seite bleibt aber leer.

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

                                            @mading
                                            Bekommst Du Fehlermeldungen??

                                            Der Seitenaufbau sieht jetzt so aus.

                                            let name: PageType =
                                            {
                                                'type': 'cardType',
                                                'heading': 'Seiten Überschrift',
                                                'useColor': true,
                                                'items': []
                                            };  
                                            

                                            Das hier wird auch nicht mehr genutzt.

                                            <PageItem>

                                            nur noch

                                            { id: 'alias.0.NSPanel_1.Fusswaermer', icon: 'heating-coil', name: 'Fusswaermer' }
                                            
                                            M 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            761
                                            Online

                                            31.6k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            lovelace ui nspanel sonoff
                                            260
                                            7128
                                            4509607
                                            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