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

    • [erledigt] 15. 05. Wartungsarbeiten am ioBroker Forum

    • 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 last edited by TT-Tom

      @wendy2702

      Schade das du auf gibst. Aber jeder muss selber wissen was ihm wichtiger ist.

      Erfordert das Script an dieser Stelle schon irgendeine Config von mir oder sollte das Log fehlerfrei bleiben?

      Ja, das File NSPanelTS.ts ist mit allen Beispielen versehen, die es zur Zeit gibt. Das die Datenpunkte bei euch nicht vorhanden sind, sollte jedem klar sein.

      Einige Grundkonfigurationen sind vor dem ersten Start zumachen. Einen Großteil der Datenpunkte kann das Script schon selber erstellen, ist aber auf einige Angaben des Users angewiesen.

      vielleicht findest du doch nochmal Zeit, Unterstützung wirst du hier immer bekommen.

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

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

        @wendy2702
        Schade das du auf gibst. Aber jeder muss selber wissen was ihm wichtiger ist.

        Wie geschrieben muss ich zuviel Zeit investieren um das für mich zum laufen zu bekommen.

        Habe das Panel jetzt seit 19.01.2023 hier liegen und hatte es in der Zeit gerade mal geschafft den Screensaver anzupassen. Jetzt mit der neuen Version muss ich für mich wieder ziemlich von vorne beginnen und wenn man Beruflich viel Unterwegs ist bleibt kaum Zeit da neben anderen dingen tiefer einzusteigen.

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

        Unterstützung wirst du hier immer bekommen.

        Das weiss ich und bin auch Dankbar dafür.

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

          @marc_d0810 sagte in SONOFF NSPanel mit Lovelace UI:

          MQTT im iOBroker läuft und bekommt anscheinend auch die Werte vom Display gesendet.

          Kannst du bitte mal den Inhalt vom MQTT Datenpunkt NSPanel.cmnd.CustomSend zeigen.

          Skript läuft auch und es tauchen keine Fehler auf.

          Hast du das Script bzw. die Java Instanz mal neu gestartet ?

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

            @marc_d0810

            Kann es sein, dass irgendetwas um 00:30 mit dem Router passiert ist?

            Bekommt das Panel keine Daten mehr, dann bleibt es in der Urzeit stehen. Sieht auch so aus, als würde es keine Daten mehr empfangen. Spricht alles dafür das die IP des Panels sich geändert hat oder MQTT sich weggehängt hat. Also eher eine Kommunikationsgeschichte. Hat das Panel eine statische IP?

            M 1 Reply Last reply Reply Quote 0
            • I
              icemanmw last edited by

              Hallo, ich habe gerade seit langen mal wieder ein Update auf v4.0.4.2 aufgespielt. Soweit alles ok. Vielen Danke dafür !!
              Nur eine Frage, werden die Aliase für den Dimmode nicht mehr automatisch erzeugt ? Die Seite Dimmode (1) ist dementsprechend auch leer bei mir.
              schönen Abend

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

                @icemanmw von welcher Version bist du gekommen? ggf. kannst du die Alias und 0_userdata.0. vom Panel löschen und das Script neu starten, Sie werden dann neu angelegt.

                I 1 Reply Last reply Reply Quote 0
                • I
                  icemanmw @TT-Tom last edited by

                  @tt-tom
                  Hi, hatte Aliase alle vorher gelöscht. Komme von 3.7…
                  Das Bild zeigt die neu erzeugten nachdem 4….gestartet wurde

                  7D76355B-0D0D-4B8D-87B8-EC7BFAA89E4F.jpeg

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

                    @icemanmw

                    Es werden keine Aliase angelegt, wenn die Datenpunkte unter 0_userdata noch existieren.

                    Werde ich demnächst ändern - ist aber im Moment noch so.

                    Also nicht die Aliase entfernen, sondern die Datenpunkte:

                    a0fc3dc6-26be-497a-b1bb-cfcbb9d9448b-image.png

                    I 1 Reply Last reply Reply Quote 0
                    • S
                      Sniker @TT-Tom last edited by

                      @tt-tom

                      Hi, gute Frage... ich werde es mal versuchen.

                      1. zuerst hing ich an der Tasmota Version, wollte das ganze gerne in Deutsch und das ging dann nur mir der tasmota32-de.bin - Matthias hatte im Video gesagt man muss die tasmota32-nspanel.bin nehmen sollte bezüglich HASPmoto - welche Version ist jetzt richtiger!?

                      2. aktuell Frage ich mich für mein nächstes Update, welche Teile ich dann ins neue Script wieder anpassen muss bzw wo rein kopieren muss, das alles läuft. Wenn du 2 Monate nichts dran gemacht hast, fängt man wieder von vorne an.
                        Das hat mir schon gut geholfen:

                        Kurze Upgrade-Empfehlung:

                        • Neues TypeScript anlegen und die Version https://raw.githubusercontent.com/joBr99/nspanel-lovelace-ui/main/ioBroker/NsPanelTs_without_Examples.ts hineinkopieren
                          altes Script deaktivieren (Fallback)
                        • Konfiguration anhand der Variablen aus dem anderen Script übernehmen (Achtung Config hat einen veränderten Aufbau und kann nicht 1:1 übernommen werden, siehe oben!)
                        • Erweiterungen für Advanced Screensaver aus Wiki oder NSPanel.ts (Script mit Beispielen) migrieren
                        • FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v4.0.3.tft
                      3. Ich hatte nach dem Update das Problem das ich nur Fehler im Protokoll hatte das lag an dem falschen Link:

                      ScreensaverEntity: 'accuweather.0.Current.WindDirection', //0_userdata.0.wetter.Windrichtung

                      der Link nach den // war hinterlegt.

                      Ps: Trotzdem Danke an Alle, ihr macht eine Top arbeit

                      T Armilar 2 Replies Last reply Reply Quote 1
                      • T
                        TT-Tom @Sniker last edited by TT-Tom

                        @sniker sagte in SONOFF NSPanel mit Lovelace UI:

                        @tt-tom

                        Hi, gute Frage... ich werde es mal versuchen.

                        1. zuerst hing ich an der Tasmota Version, wollte das ganze gerne in Deutsch und das ging dann nur mir der tasmota32-de.bin - Matthias hatte im Video gesagt man muss die tasmota32-nspanel.bin nehmen sollte bezüglich HASPmoto - welche Version ist jetzt richtiger!?

                        Ehrlich gesagt habe ich persönlich noch kein Unterschied bemerkt, habe auf dem Testtpanel beide Versionen schon laufen gehabt. Werde mich aber mit @Armilar beraten, ob es eine Empfehlung im Wiki / Script geben wird.

                        1. aktuell Frage ich mich für mein nächstes Update, welche Teile ich dann ins neue Script wieder anpassen muss bzw wo rein kopieren muss, das alles läuft. Wenn du 2 Monate nichts dran gemacht hast, fängt man wieder von vorne an.
                          Das hat mir schon gut geholfen:

                          Kurze Upgrade-Empfehlung:

                        • Neues TypeScript anlegen und die Version hinein kopieren
                        https://raw.githubusercontent.com/joBr99/nspanel-lovelace-ui/main/ioBroker/NsPanelTs_without_Examples.ts
                        
                        • altes Script deaktivieren (Fallback)
                        • Konfiguration anhand der Variablen aus dem anderen Script übernehmen (Achtung Config hat einen veränderten Aufbau und kann nicht 1:1 übernommen werden, siehe oben!)
                        • Erweiterungen für Advanced Screensaver aus Wiki oder NSPanel.ts (Script mit Beispielen) migrieren
                        • FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v4.0.3.tft

                        Solche großen Änderungen sind meistens nach einem Breaking Change aus zu führen, darauf wird dann aber explizit mit hingewiesen. hier kannst du die Versionen nachlesen

                        1. Ich hatte nach dem Update das Problem das ich nur Fehler im Protokoll hatte das lag an dem falschen Link:

                        ScreensaverEntity: 'accuweather.0.Current.WindDirection', //0_userdata.0.wetter.Windrichtung

                        der Link nach den // war hinterlegt.

                        okay, ich teste Mal in wie weit wir die Without-ExampleTS von Datenpunkten entschlacken können.

                        Ps: Trotzdem Danke an Alle, ihr macht eine Top arbeit

                        Danke.

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

                          @sniker sagte in SONOFF NSPanel mit Lovelace UI:

                          zuerst hing ich an der Tasmota Version, wollte das ganze gerne in Deutsch und das ging dann nur mir der tasmota32-de.bin - Matthias hatte im Video gesagt man muss die tasmota32-nspanel.bin nehmen sollte bezüglich HASPmoto - welche Version ist jetzt richtiger!?

                          Seit Matthias Video ist natürlich wieder eine Menge passiert, aber es ist in den meisten Punkten noch aktuell. Der Vorteil an Videos ist, dass man einen schönen visuellen Leitfaden hat. Der Nachteil ist, dass einige Änderungen mit der Zeit dann anders sind, als zuvor im Video gezeigt.
                          Die tasmota32-nspanel.bin wurde entwickelt, da das Panel einen PSRAM beinhaltet. Wir haben später jedoch festgestellt, dass es für unseren Betrieb keine signifikanten Unterschiede in den Versionen gibt. Daher auch die freie Auswahl im Script, siehe:

                          // Setzen der bevorzugten Tasmota32-Version
                          const tasmotaOtaVersion: string = 'tasmota32-DE.bin';
                          // Es können ebenfalls andere Versionen verwendet werden wie zum Beispiel:
                          // 'tasmota32-nspanel.bin' oder 'tasmota32.bin' oder 'tasmota32-DE.bin' oder etc.
                          

                          aktuell Frage ich mich für mein nächstes Update, welche Teile ich dann ins neue Script wieder anpassen muss bzw. wo rein kopieren muss, das alles läuft. Wenn du 2 Monate nichts dran gemacht hast, fängt man wieder von vorne an.
                          Das hat mir schon gut geholfen:
                          Kurze Upgrade-Empfehlung:

                          • Neues TypeScript anlegen und die Version https://raw.githubusercontent.com/joBr99/nspanel-lovelace-ui/main/ioBroker/NsPanelTs_without_Examples.ts hineinkopieren
                          • altes Script deaktivieren (Fallback)
                          • Konfiguration anhand der Variablen aus dem anderen Script übernehmen (Achtung Config hat einen veränderten Aufbau und kann nicht 1:1 übernommen werden, siehe oben!)
                          • Erweiterungen für Advanced Screensaver aus Wiki oder NSPanel.ts (Script mit Beispielen) migrieren
                          • FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v4.0.3.tft

                          In den vergangenen Versionen war es so. Durch die Anforderungen, insbesondere im Screensaver und der Navigation, hat sich vieles im Bereich des oberen Konfigurationspart des Scriptes geändert. Diese Änderungen wurden lange verschoben und gesammelt.
                          In der nächsten Zeit sollte damit auch erst einmal wieder Schluss sein, so dass man nicht alle 2 Monate von vorne beginnen muss, sondern lediglich den unteren Teil ersetzen sollte und wieder eine Abwärtskompatibilität entsteht, wenn neue Parameter in das pageItem wandern.

                          Ich hatte nach dem Update das Problem das ich nur Fehler im Protokoll hatte das lag an dem falschen Link:

                          Ja, da ist mir wohl einer meiner Datenpunkte ins Beispiel gerutscht 😊

                          Wird natürlich in folgenden Versionen gegen einen Datenpunkt aus accuweather.0. ersetzt. Danke für den Hinweis.

                          1 Reply Last reply Reply Quote 0
                          • I
                            icemanmw @Armilar last edited by

                            @armilar
                            vielen Dank.... funktioniert alles perfekt. schönen Abend

                            J 1 Reply Last reply Reply Quote 0
                            • J
                              joBr99 @icemanmw last edited by joBr99

                              @icemanmw

                              zuerst hing ich an der Tasmota Version, wollte das ganze gerne in Deutsch und das ging dann nur mir der tasmota32-de.bin - Matthias hatte im Video gesagt man muss die tasmota32-nspanel.bin nehmen sollte bezüglich HASPmoto - welche Version ist jetzt richtiger!?

                              In früheren Versionen brauchte man zwingend die nspanel Version; weil beim flashen mehr zwischengespeichert wurde, bevor es auf das panel gewandert ist, d.h. mehr (PS)RAM gebraucht wurde, aktuell geht beides. (Hab auch ein Panel mit der normalen Version, weil ich da das Shutter zeug von tasmota brauche, welches in der nspanel version nicht vorhanden ist)

                              Ansonsten sollte die folgenden Einschränkungen weiterhin gelten:

                              If using standard Tasmota32 builds: Current implementation of serial in Arduino core has a bug which can boot loop the device on soft reset. Power cycling the device solves the issue. PSRAM is also not supported.

                              https://templates.blakadder.com/sonoff_NSPanel.html

                              1 Reply Last reply Reply Quote 0
                              • D
                                danny_v1 last edited by

                                Hallo, ich habe mich heute mal an die WLED Seite gewagt. Leider mit mäßigem Erfolg, bis auf ein- und ausschalten und Sync ein und aus funktioniert sonst nichts. Ich denke ich habe alles so wie in der Anleitung gemacht.

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

                                  Hi @danny_v1
                                  ich ver suche dir mal zu helfen, habe zwar WLED hier am laufen, aber als RGBSingle.

                                  ich gehe mal davon aus, dass die Datenpunkte (Alias und 0_userdata) alle richtig angelegt sind.

                                  • Kannst du denn auf dem Panel alle Punkte sehen?

                                  • Zeige bitte mal die PageConfig aus dem PanelScript.

                                  • Zeige bitte mal das JS, welches du separat anlegen musst.

                                  D 1 Reply Last reply Reply Quote 0
                                  • M
                                    marc_d0810 @TT-Tom last edited by

                                    Hey Tom,

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

                                    @marc_d0810 sagte in SONOFF NSPanel mit Lovelace UI:

                                    MQTT im iOBroker läuft und bekommt anscheinend auch die Werte vom Display gesendet.

                                    Kannst du bitte mal den Inhalt vom MQTT Datenpunkt NSPanel.cmnd.CustomSend zeigen.
                                    Ja klar:
                                    Bildschirm­foto 2023-03-14 um 19.23.45.png
                                    Und so sieht es in der Tasmota Console aus:
                                    Bildschirm­foto 2023-03-14 um 19.23.35.png

                                    Skript läuft auch und es tauchen keine Fehler auf.

                                    Hast du das Script bzw. die Java Instanz mal neu gestartet ?

                                    Ja wurde alles schon mehrfach neugestartet. 😞

                                    T 1 Reply Last reply Reply Quote 0
                                    • M
                                      marc_d0810 @Armilar last edited by

                                      @armilar said in SONOFF NSPanel mit Lovelace UI:

                                      @marc_d0810

                                      Kann es sein, dass irgendetwas um 00:30 mit dem Router passiert ist?

                                      Bekommt das Panel keine Daten mehr, dann bleibt es in der Urzeit stehen. Sieht auch so aus, als würde es keine Daten mehr empfangen. Spricht alles dafür das die IP des Panels sich geändert hat oder MQTT sich weggehängt hat. Also eher eine Kommunikationsgeschichte. Hat das Panel eine statische IP?

                                      Hey,
                                      also am Router konnte ich nichts in den Logs sehen.
                                      Das Panel hat eine statische IP.
                                      Daten werden ja anscheinend per MQTT hin und her gesendet, aber das war es dann auch.

                                      1 Reply Last reply Reply Quote 0
                                      • D
                                        danny_v1 @TT-Tom last edited by

                                        @tt-tom Ja auf dem Panel sehe ich alles.

                                        Hier die PageConfig

                                        let WLED_Bad= <PageGrid>
                                                                {
                                                                    "type": "cardGrid",
                                                                    "heading": "WLED",
                                                                    "useColor": true,
                                                                    "subPage": true,
                                                                    "parent": Bad,
                                                                    "items": [
                                                                        <PageItem>{ id: "alias.0.Bad.BadWLED.Power", name: "Power", icon: "power", onColor: Blue, offColor: HMIOff},
                                                                        <PageItem>{ id: "alias.0.Bad.BadWLED.Synch", name: "Sync", icon: "sync", onColor: Blue, offColor: White},
                                                                        <PageItem>{ id: "alias.0.Bad.BadWLED.Timer", name: "Timer", icon: "moon-waxing-crescent", onColor: Blue, offColor: White},
                                                                        <PageItem>{ id: "alias.0.Bad.BadWLED.Presets", icon: "heart-outline", name: "Presets", onColor: White, modeList: ['Rainbow', 'Lake']},
                                                                        <PageItem>{ id: "alias.0.Bad.BadWLED.Colors", icon: "palette", name: "Colors", onColor: White,
                                                                                    modeList: ['Default', '* Color 1', '* Color Gradient', '* Colors 1&2', '* Colors Only', '* Random Cycle', 'Analogus','April Night', 'Aqua Flash', 'Atlantica', 'Aurora', 'Beach', 'Beech', 'Blink Red', 'Breeze', 'C9', 'C9 New', 'Candy', 'Candy2', 'Cloud', 'Cyane', 'Departure', 'Drywet', 'Fairy Reaf', 'Fire', 'Forest', 'etc']},
                                                                        <PageItem>{ id: "alias.0.Bad.BadWLED.Effects", icon: "emoticon-outline", name: "Effects", onColor: White,
                                                                                    modeList: ['Solid', 'Android', 'Aurora', 'Blends', 'Blink', 'Blink Rainbow', 'Bouncing Balls','Bpm', 'Breathe', 'Candle', 'Candle Multi', 'Candy Cane', 'Chase', 'Chase 1', 'Chase 2', 'Chase 3', 'Chase Flash', 'Chase Flash Rnd', 'Chase Rainbow', 'Chase Random', 'Chunchun', 'Colorful', 'Colorloop', 'Colortwinkles', 'Colorwaves', 'Dancing Shadows', 'etc']},
                                                                        //<PageItem>{ id: "alias.0.NSPanel_1.WLED.Example.Segments", icon: "layers", name: "Segments", onColor: White, modeList: ['Segment 0', 'Add Segment']},
                                                                    ]
                                                                };
                                        
                                        

                                        und hier das JS Skript

                                        // Pfad zum WLED-Modul
                                        const wledPath = 'wled.0.ecfabcc58b7f.';
                                        
                                        // Pfad zu 0_userdata Datenpunkten
                                        const userdataPath = '0_userdata.0.BadWLED.';
                                        
                                        // WLED Effektliste als Konstante (Favoriten)
                                        // Listen müssen gleiche Werte wie im Panel haben
                                        
                                        const presetList =    ['Rainbow', 'Lake'];
                                                
                                        const colorsList =    ['Default', '* Color 1', '* Color Gradient', '* Colors 1&2', '* Colors Only', '* Random Cycle', 'Analogus','April Night', 'Aqua Flash', 'Atlantica', 'Aurora', 
                                                                'Beach', 'Beech', 'Blink Red', 'Breeze', 'C9', 'C9 New', 'Candy', 'Candy2', 'Cloud', 
                                                                'Cyane', 'Departure', 'Drywet', 'Fairy Reaf', 'Fire', 'Forest', 'etc'
                                                            ];
                                                
                                        const effectsList =   ['Solid', 'Android', 'Aurora', 'Blends', 'Blink', 'Blink Rainbow', 'Bouncing Balls','Bpm', 'Breathe', 'Candle', 'Candle Multi', 
                                                            'Candy Cane', 'Chase', 'Chase 1', 'Chase 2', 'Chase 3', 'Chase Flash', 'Chase Flash Rnd', 'Chase Rainbow', 'Chase Random', 
                                                            'Chunchun', 'Colorful', 'Colorloop', 'Colortwinkles', 'Colorwaves', 'Dancing Shadows', 'etc'
                                                            ];
                                        
                                        on({id: userdataPath + 'Presets', change: "ne"}, async function (obj) {
                                            console.log(wledPath + 'ps' + ' = ' + obj.state.val);
                                            setState(wledPath + 'ps', obj.state.val)
                                        });
                                        
                                        // Trigger auf NSPanel Colors
                                        on({id: userdataPath + 'Colors', change: "ne"}, async function (obj) {
                                            let wledObj = getObject(wledPath + 'seg.0.pal');
                                            let tempStringColor = colorsList[obj.state.val]
                                        
                                            for (let i = 1; i < 71; i++) {
                                                if (wledObj.common.states[i] == undefined) {
                                                    break;
                                                }
                                                if (wledObj.common.states[i] == tempStringColor) {
                                                    console.log(i + ' - ' + wledObj.common.states[i]);
                                                    setState(wledPath + 'seg.0.pal', i)
                                                    break;
                                                }
                                            }
                                        });
                                        
                                        // Trigger auf NSPanel Effekte
                                        on({id: userdataPath + 'Effects', change: "ne"}, async function (obj) {
                                            let wledObj = getObject(wledPath + 'seg.0.fx');
                                            let tempStringEffect = effectsList[obj.state.val]
                                        
                                            for (let i = 1; i < 118; i++) {
                                                if (wledObj.common.states[i] == undefined) {
                                                    break;
                                                }
                                                if (wledObj.common.states[i] == tempStringEffect) {
                                                    console.log(i + ' - ' + wledObj.common.states[i]);
                                                    setState(wledPath + 'seg.0.fx', i)
                                                    break;
                                                }
                                            }
                                        });
                                        

                                        Danke schon mal für die Hilfe!!!

                                        D T 2 Replies Last reply Reply Quote 0
                                        • D
                                          danny_v1 @danny_v1 last edited by

                                          Und gleich noch eine Frage, gibt es eine Möglichkeit eine Zeichenkette oder JSON anzuzeigen als Info oder änliches?

                                          Ich möchte z.B. anzeigen wie viele Fenster offen sind und wenn ich dann auf einen Button klicke (so wie im Service Menü der "mehr..." Button auf eine Seite navigieren, die mir als Liste die geöffneten Fenster anzeigt.

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

                                            @danny_v1
                                            Es gibt eine Möglichkeit hier mal nachlesen

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            778
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

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