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 @losossos last edited by

      @losossos

      schon mal den Rechner durchgestartet?

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

        53c41264-1e47-43e7-977e-e6be5d3b694f-image.png

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

        Für die Funktionserweiterung den unteren Teil ab:

        // _________________________________ Ab hier keine Konfiguration mehr _____________________________________
        

        ersetzten.

        @Kuckuckmann wird noch eine Beschreibung in die Wiki hängen, wie man die dynamischen USERICON im Alias Info nutzt.

        Bin dann erstmal für 14 Tage in der Sonne und wünsche viel Spaß mit den Änderungen 😊

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

          @tt-tom

          Nein den Standard, nicht Advanced.
          Dafür ist meiner Meinung nach das Display dann irgendwie zu klein, für so viel Werte etc.

          T 1 Reply Last reply Reply Quote 0
          • icebear
            icebear last edited by

            @tt-tom said in SONOFF NSPanel mit Lovelace UI:

            Das Panel sollte jetzt ein eigenes WLAN aufbauen.

            @Marc-Berg

            Danke für eure Hinweise, hat jetzt geklappt und ich hab das Panel schonmal im Netz und bin weitergekommen.

            Ich denke das ich alles so wie in den Anleitungen gemacht habe, Script läuft auch ohne Fehlermeldung und alles andere auch nur bekomm ich irgendwie nich das richtige Bild auf den Screen vom Panel. Bei mir sieht es immernoch so aus

            NSPanel.jpg

            Wie gesagt keine Fehlermeldungen, MQTT scheint auch einwandfrei zulaufen, jedefalls wenn ich die Button am Panel drücke dann seh ich wie 'OFF' und 'On' geschaltet wird.

            Unter 0_userdata.0.NSPanel.1.ActivePage seh ich auch die von mir im DEV Panel angelegte erste Seite

            NSPanel_1.png

            Wo ist mein Fehler?

            Armilar 1 Reply Last reply Reply Quote 0
            • L
              losossos last edited by

              @armilar said in SONOFF NSPanel mit Lovelace UI:

              schon mal den Rechner durchgestartet?

              Hat nix gebracht. Gleiches Verhalten..
              Hostsystem ist ein Rpi 3b
              CPU: 17,53 %
              RAM: 26,7 %
              Betriebszeit: 0h
              Verfügbar: 5.0.12
              Installiert: 5.0.12
              Ereignisse: ⇥9 / ↦13
              Plattform: linux
              Betriebssystem: linux
              Architektur: arm
              CPUs: 4
              Geschwindigkeit: 1400 MHz
              Modell: ARMv7 Processor rev 4 (v7l)
              RAM: 922.3 MB
              System-Betriebszeit: 00:02:05
              Node.js: v16.20.1
              time: 1693655341920
              timeOffset: -120
              NPM: 8.19.4
              Adapter-Anzahl: 586
              Datenträgergröße: 14.3 GB
              Freier Festplattenspeicher: 7.7 GB
              Aktive Instanzen: 8
              Pfad: /opt/iobroker/
              Betriebszeit: 00:20:45
              aktiv: true
              _nodeCurrent: --
              _nodeNewest: 16.20.2
              _nodeNewestNext: 18.17.1
              _npmCurrent: --
              _npmNewest: 8.19.4
              _npmNewestNext: 9.6.7

              K Armilar 2 Replies Last reply Reply Quote 0
              • Armilar
                Armilar Most Active Forum Testing @icebear last edited by Armilar

                @icebear

                Das ist das ist die Stock-Firmware...

                Sofern du die Punkte aus der Anleitung:
                https://github.com/joBr99/nspanel-lovelace-ui/wiki/iobroker---Basisinstallation#3-berry-treiber-installieren
                mit dem Berry Driver:
                https://raw.githubusercontent.com/joBr99/nspanel-lovelace-ui/main/tasmota/autoexec.be

                gemacht hast, solltest du jetzt das TFT flashen. Tasmota-Konsole und folgenden Befehl eingeben und abwarten...

                FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v4.2.1.tft
                

                Einfach weiter der Anleitung in der Wiki folgen...

                Alternativ (auch wenn schon etwas älter):
                https://www.youtube.com/watch?v=ZPLJk2ZLo_8

                icebear 1 Reply Last reply Reply Quote 0
                • K
                  Kuckuckmann @losossos last edited by

                  @losossos

                  hast Du mal die Datum & Uhr zeit auf dem Host System kontrolliert?

                  Wir haben auch einen kleinen Tipp in der Wiki [hier]

                  LG

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

                    @armilar said in SONOFF NSPanel mit Lovelace UI:

                    solltest du jetzt das TFT flashen. Tasmota-Konsole und folgenden Befehl eingeben und abwarten...

                    Danke dafür, jetzt funktionierts.

                    Ich hatte das zwar gemacht mit dem 'Flash Nextion....' aber ich glaub da war ich zu schnell und hab das zu früh gemacht.
                    Ich hatte sowas schon vermutet.

                    Der Samstag ist gerettet 😁

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

                      @losossos

                      Glaube zwar noch nicht, dass es damit zusammenhängt, aber du solltest mal ein Update machen:

                      nodeJS auf 18.17.1
                      npm auf 9.6.7

                      falls da noch Buster oder Bullseye läuft, dann auf Bookworm erhöhen und regelmäßig:

                      sudo apt-get update
                      sudo apt-get dist-upgrade
                      sudo reboot
                      

                      durchführen...

                      Veraltete Softwarestände bringen dich langfristig nicht vorwärts...

                      EDIT: Besser gleich auf Bookworm:
                      https://forum.iobroker.net/topic/65655/upgrade-von-debian-11-bullseye-auf-12-bookworm

                      1 Reply Last reply Reply Quote 0
                      • icebear
                        icebear last edited by

                        Erstes Panel läuft

                        NSPanel.png

                        Danke an alle die mir geholfen haben und mit Rat und Tat zur Seite standen.

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

                          @icebear

                          Sieht doch hübsch aus...

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

                            @tomsport2022 Beim Standard hast du 4 Entitäten zur Verfügung. Diese werden auch unter bottomScreensaverentity konfiguriert.

                            1 Reply Last reply Reply Quote 0
                            • L
                              losossos last edited by

                              @armilar said in SONOFF NSPanel mit Lovelace UI:

                              Glaube zwar noch nicht, dass es damit zusammenhängt, aber du solltest mal ein Update machen:

                              Wie du schon richtig vermutet hast...
                              System ist hochgezogen, hat aber keine Auswirkung
                              @Kuckuckmann Zeit auf'm RPI wird übrigens regelmäßig via NTP aktualisiert

                              Plattform: linux
                              Betriebssystem: linux
                              Architektur: arm
                              CPUs: 4
                              Geschwindigkeit: 1400 MHz
                              Modell: ARMv7 Processor rev 4 (v7l)
                              RAM: 922.3 MB
                              System-Betriebszeit: 00:01:50
                              Node.js: v18.17.1
                              time: 1693672380793
                              timeOffset: -120
                              NPM: 9.6.7
                              Adapter-Anzahl: 586
                              Datenträgergröße: 14.3 GB
                              Freier Festplattenspeicher: 6.9 GB
                              Aktive Instanzen: 10
                              Pfad: /opt/iobroker/
                              Betriebszeit: 00:01:38
                              aktiv: 
                              

                              Wie gesagt auf dem anderen NSpanel (Script ist bis auf Aliase indentisch) hab ich das Problem nicht.

                              Gargano Armilar 2 Replies Last reply Reply Quote 0
                              • Gargano
                                Gargano @losossos last edited by

                                @losossos würde mich mal interessieren wieviel freien Speicher Du noch hast bei 1gb RAM. Steht bei den Instanzen oben. Alternativ mit top oder htop in der Konsole schauen

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

                                  @losossos

                                  9d475f04-e46b-4d74-8c3b-d5efcc6835d1-image.png

                                  Den solltest du mal anhaken und das Script starten. Danach mal das Log senden. In der Regel findet man dann zumindest die Stelle an der dieser Fehler auftritt...

                                  1 Reply Last reply Reply Quote 1
                                  • L
                                    losossos @Gargano last edited by

                                    @gargano said in SONOFF NSPanel mit Lovelace UI:

                                    würde mich mal interessieren wieviel freien Speicher Du noch hast

                                    8b94fbe3-ba1a-4eeb-9c75-f3f2fb3b84cd-grafik.png

                                    (läuft aber alles flüssig und ohne Probleme)

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

                                      @losossos

                                      ich glaube des geht um diese Schedule

                                      let scheduleSwichScreensaver = schedule('*/' + getState(NSPanel_Path + 'ScreensaverInfo.entityChangeTime').val +  ' * * * * *', () => {
                                      

                                      kannst du mal bitte den Datenpunkt 0_userdata.0..... ScreensaverInfo.entityChangeTime zeigen inkl. Inhalt

                                      PS: log Meldungen bitte kein Screenshot, sonder kopieren und in die Codetags </> einfügen. Damit lässt sich dann besser arbeiten, danke.
                                      code-tags.gif

                                      L 1 Reply Last reply Reply Quote 1
                                      • L
                                        losossos @TT-Tom last edited by

                                        @tt-tom
                                        @Armilar

                                        yippi, genau so ist es!

                                        Danke für den Tip mit der ausführlichen Protokollausgabe:

                                        21:30:22.655 info javascript.0 (1597) script.js.common.NSPanelTS_2_ts: schedule(cron=* * * * )
                                        21:30:22.656 info javascript.0 (1597) script.js.common.NSPanelTS_2_ts: getState(id=0_userdata.0.NSPanel.2.ScreensaverInfo.entityChangeTime, timerId=undefined) => {"val":null,"ack":true}
                                        21:30:22.658 error javascript.0 (1597) script.js.common.NSPanelTS_2_ts: schedule(cron=
                                        /null * * * * *): cannot create schedule

                                        stimmt tatsächlich, hier müßte im Datenpunkt eigenltich ne 60 stehen. (die fehlt aber)

                                        Komisch, das die aber beim compiliren nicht gesetzt wurden.

                                        Na egal, Fehler auf jeden Fall gefunden, jetzt sind alle 7 crons da!

                                        18970bf7-a512-4e70-92e2-6c82a632fe80-grafik.png

                                        Besten Dank und schönen Abend noch.

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

                                          @losossos Viel Spass noch und denke bitte an die "Codetags". Screenshots nur, wenn sich Ausgaben nicht kopieren lassen.

                                          1 Reply Last reply Reply Quote 1
                                          • L
                                            losossos @tomsport2022 last edited by

                                            @tomsport2022

                                            moinsen, genau sowas ich hab das über ein kleines Blockly-Script gelöst. Ich kann so auch Infos an meine KNX-HMIs übergeben kann.
                                            Anbei das Script: (allerdings in Textform, das es als Blockly (hier) viel Platz einnimmt)

                                            var Stati_an_HMIs_senden, Durchlauf, Status_Titel, Statuswert;
                                            
                                            
                                            Stati_an_HMIs_senden = schedule('*/5 * * * * *', async () => {
                                              if (Durchlauf < 1 || Durchlauf > 9) {
                                                Durchlauf = 1;
                                              }
                                              if (Durchlauf == 1) {
                                                Status_Titel = 'PV-Erzeugung ';
                                                Statuswert = String(Math.round((getState('senec.0.ENERGY.GUI_INVERTER_POWER').val / 1000) * 10) / 10);
                                                Statuswert += 'kW';
                                              } else if (Durchlauf == 2) {
                                                Status_Titel = 'Akkustand-PV ';
                                                Statuswert = String(Math.round(getState('senec.0.ENERGY.GUI_BAT_DATA_FUEL_CHARGE').val * 100) / 100);
                                                Statuswert += '%';
                                              } else if (Durchlauf == 3) {
                                                Status_Titel = 'Haus-Verbrauch  ';
                                                Statuswert = String(Math.round((getState('senec.0.ENERGY.GUI_HOUSE_POW').val / 1000) * 100) / 100);
                                                Statuswert += 'kW';
                                              } else if (Durchlauf == 4) {
                                                Status_Titel = 'Tagesertrag PV';
                                                Statuswert = String(getState('senec.0._calc.LIVE_PV_GEN.today').val);
                                                Statuswert += 'kWh';
                                              } else if (Durchlauf == 5) {
                                                Status_Titel = 'Tagesverbrauch';
                                                Statuswert = String(getState('senec.0._calc.LIVE_HOUSE_CONS.today').val);
                                                Statuswert += 'kWh';
                                              } else if (Durchlauf == 6) {
                                                Status_Titel = 'Kamin-Temp.';
                                                Statuswert = String(getState('openknx.0.Heizen.Temperatur_(IST).IST-Temperatur_Kamin').val);
                                                Statuswert += '°C';
                                              }
                                              console.log(([Durchlauf,'\r\n',Status_Titel,'\r\n',Statuswert].join('')));   /* damit man sieht ob's läuft */
                                              Durchlauf = (typeof Durchlauf === 'number' ? Durchlauf : 0) + 1;
                                              setState('openknx.0.Meldung_&_Alarm.Systemstatus.Titel_PV-Anlage' /* Titel PV-Anlage */, Status_Titel);
                                              setState('openknx.0.Meldung_&_Alarm.Systemstatus.Werte_PV-Anlage' /* Werte PV-Anlage */, Statuswert);
                                              if (Durchlauf <= 6) {
                                                setState('0_userdata.0.NSPanel.1.ScreensaverInfo.popupNotifyHeading' /* 0_userdata.0.NSPanel.1.ScreensaverInfo.popupNotifyHeading */, Status_Titel);
                                                setState('0_userdata.0.NSPanel.1.ScreensaverInfo.popupNotifyText' /* 0_userdata.0.NSPanel.1.ScreensaverInfo.popupNotifyText */, Statuswert);
                                                setState('0_userdata.0.NSPanel.2.ScreensaverInfo.popupNotifyHeading' /* 0_userdata.0.NSPanel.2.ScreensaverInfo.popupNotifyHeading */, Status_Titel);
                                                setState('0_userdata.0.NSPanel.2.ScreensaverInfo.popupNotifyText' /* 0_userdata.0.NSPanel.2.ScreensaverInfo.popupNotifyText */, Statuswert);
                                              } else {
                                                setState('0_userdata.0.NSPanel.1.ScreensaverInfo.popupNotifyHeading' /* 0_userdata.0.NSPanel.1.ScreensaverInfo.popupNotifyHeading */, '');
                                                setState('0_userdata.0.NSPanel.1.ScreensaverInfo.popupNotifyText' /* 0_userdata.0.NSPanel.1.ScreensaverInfo.popupNotifyText */, '');
                                                setState('0_userdata.0.NSPanel.2.ScreensaverInfo.popupNotifyHeading' /* 0_userdata.0.NSPanel.2.ScreensaverInfo.popupNotifyHeading */, '');
                                                setState('0_userdata.0.NSPanel.2.ScreensaverInfo.popupNotifyText' /* 0_userdata.0.NSPanel.2.ScreensaverInfo.popupNotifyText */, '');
                                              }
                                            });
                                            

                                            Zur Erklärung:
                                            Du erzeugst Dir einen Cronjob mit nem festgelegtem Zeitintervall.
                                            Hierdrin brauchst Du dann eine Zählvariable, die dir in jedem Durchlauf um eins erhöht wird.
                                            Nun mußt Du den einzelnen Durchläufen nur noch die zu übergebenden Daten(punkte) zuweisen.

                                            Kleiner Tipp: wenn Du den Zähler etwas höher setzt als die eigentlichen Elemente die Du anzeigen möchtest, wird Dir für die Restzeit des Intervalls die vom NSPanelscript vorbelegten Wetterinfos (oder was halt eingestellt war) angezeigt.
                                            Dazu mußt du aber (siehe meine letzte IF, Else) an den Datenpunkten ScreensaverInfo.popupNotifyHeading und ScreensaverInfo.popupNotifyText den Inhalt löschen.

                                            K T 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.0k
                                            Online

                                            31.6k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

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