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

      @tt-tom also ich muss blind sein. Ich finde im ganzen Skript (bis auf die parent-Verweise) keine weitere Id NSPanel_Infos

      b5185ef8-255f-4bfd-b18f-b14eff647382-image.png

      Die Service Page sagt sie will zu NSPanel_Infos navigieren, aber keine weitere Page oder PageItem hat diese Id vergeben bekommen. Und wenn es über den Variablennamen geht, warum geht das dann bei mir nicht? (siehe Code oben)

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

        @tt-tom ok dann hab ich das falsch verstanden. Aber gut, alle Daten sind ja ohnehin in iobroker vorhanden. Dann muss ich dafür noch ein mini Blockly schreiben. Wenn IstTemp < SollTemp dann relais=true und andersrum. Dann sollte es das gewesen sein.
        7936d6ed-f2ca-43c8-9174-2c8c6f2315b4-image.png

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

          @theknut bei navigate :true gibt targetPage: die Page an, also NSPanel_Infos.

          ‹PageItem>‹ navigate: true, id: null, targetPage: 'Erdgeschoss', name: 'Haus'}
          

          Es geht auch über id:

          menuPage.items = [
                  <PageItem>{ navigate: true, id: 'wohnzimmerLicht', icon: 'information-outline'},
                  <PageItem>{ id: AliasPath + 'Config.rebootNSPanel', name: findLocaleServMenu('reboot') ,icon: 'refresh', offColor: MSRed, onColor: MSGreen, buttonText: findLocaleServMenu('start')}
              ];
          

          der Teil der Page config ist falsch.
          Seitenpage fängt immer mit

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

          hier kannst du noch mehr lesen

          hier ein Link zur Navigation

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

            @eierfeile

            es gibt da den PID Adapter, der einen Regler darstellt. Kann dir dazu aber kein Support geben.
            Oder wie du schon angemerkt hast, mit einem kleinen Script die Relais selber steuern.

            D 1 Reply Last reply Reply Quote 1
            • D
              docf last edited by

              @tt-tom
              Hi ich versuche gerade den Countdown Timer auf die Reihe zu bekommen.
              Leider habe ich da ein Problem.

              Ich habe gesehen, dass in den Aliasen zwei Ordner erstellt wurden.
              Countdown und Coutown?

              Im Skript wird auf diesen Ordner verwiesen.

                setObject(dp_alias + '.Coundown', { type: 'channel', common: { role: 'level.timer', name: 'Countdown' }, native: {} });
              
              

              Ich habe den PageItem dann dahingehend angepasst und kann nun meinen Countdown Test sehen.

                     <PageItem>{ id: "alias.0.NSPanel.Countown" , name: "ContdownTimer" , interpolateColor:true },
              

              Ich kann die Zeit einstellen jedoch funktioniert der Countdown nicht.

              Mache ich da etwas falsch oder muss ich da noch etwas ändern?
              Danke dir

              vg

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

                @tt-tom
                Ich habs jetzt hinbekommen ; )
                Nicht elegant aber es funktioniert.

                Beim erstellten Alias Countown habe ich die Objekte State und Actual angelegt und gepasst
                lediglich im Journal bekomme ich noch eine Warnung.

                16.12.2023, 10:44:58.978	[warn ]: javascript.0 (3804)     at script.js.common.Countdown4NsPanel:65:29
                16.12.2023, 10:44:58.978	[warn ]: javascript.0 (3804)     at step (script.js.common.Countdown4NsPanel:33:23)
                16.12.2023, 10:44:58.978	[warn ]: javascript.0 (3804)     at Object.next (script.js.common.Countdown4NsPanel:14:53)
                16.12.2023, 10:44:58.979	[warn ]: javascript.0 (3804)     at script.js.common.Countdown4NsPanel:8:71
                16.12.2023, 10:44:58.979	[warn ]: javascript.0 (3804)     at __awaiter (script.js.common.Countdown4NsPanel:4:12)
                16.12.2023, 10:44:58.979	[warn ]: javascript.0 (3804)     at Object.<anonymous> (script.js.common.Countdown4NsPanel:55:69)
                
                1 Reply Last reply Reply Quote 0
                • Armilar
                  Armilar Most Active Forum Testing @docf last edited by Armilar

                  @docf

                  Sorry - mein Fehler - das externe Countdown-Script war durchgängig mit "Countown" (copy/paste) angelegt. Habe daraus dann "Countdown" gemacht (on the fly) und tatsächlich eine Stelle vergessen...

                  aus

                  setObject(dp_alias + '.Countown', { type: 'channel', common: { role: 'level.timer', name: 'Countdown' }, native: {} });
                  

                  muss

                  setObject(dp_alias + '.Countdown', { type: 'channel', common: { role: 'level.timer', name: 'Countdown' }, native: {} });
                  

                  werden.

                  Lösche mal den Alias und lasse es so erneut anlegen.

                  Habe das Countdown-Script auf github ebenfalls angepasst

                  1 Reply Last reply Reply Quote 1
                  • X
                    xelarep last edited by

                    Hallo zusammen,

                    ich hoffe ich hab das nicht irgendwo übersehen/überlesen: wie unterdrücke ich denn die Update Anzeige von Tasmota?
                    Eigentlich(tm) sind AutoUpdates deaktiviert. Seit ein paar Tagen poppt aber gefühlt täglich die Aufforderung Tasmota FW Update 13.2.0 auf 13.3.0 hoch, was ich bisher auf meinen beiden Geräten dann immer für einen Tag mit "NEIN" unterdrückt bekomme...

                    Alexander

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

                      @xelarep

                      nur mit dem Fix aus der 4.3.3.22

                      siehe Post von gestern:
                      https://forum.iobroker.net/post/1095383

                      Das hat mit Auto-Updates nichts zu tun. Die werden, wenn eingeschaltet ohne Popup durchgeführt.

                      Wenn das Popup ausgeschaltet werden soll, dann nur mit der 4.3.3.22

                      X 1 Reply Last reply Reply Quote 2
                      • X
                        xelarep @Armilar last edited by

                        @armilar ups, nicht weit genug geblättert. Lese nicht so regelmässig mit... Danke!

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

                          Übrigens schaut gerne mal im Nachbar-Thread unter:
                          https://forum.iobroker.net/post/1075497
                          von @Kuckuckmann vorbei

                          Soll eigentlich eine Sammlung von Beispielen werden, was sich alles mit dem NSPanel machen lässt und kann für den einen oder anderen auch Mal als Anregung dienen...

                          Würde mich freuen, wenn mal jemand ein Bildchen (geht ja auch ein Foto und muss nicht mit dem Emulator sein) von einer interessant gestalteten Card hinterlässt.

                          VG
                          Armilar 😊

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

                            Update v4.3.3.23

                            bb1e417a-5ad9-490a-aa45-2f89a80fabd0-image.png

                            7a9a2b19-7fb2-4d82-a831-957426345884-Nextion_Editor_uzGTP8LMhY.gif

                            Mit diesem Update wird die Steuerung der Jalousien-Icons optimiert

                            PageItem-Beispiel an einem Fyrtur-Rollo über den Deconz-Adapter:

                            <PageItem>{ 
                                        id: 'alias.0.Haus.Erdgeschoss.Buero.Aktoren.Fyrtur', 
                                        minValueLevel: 1,       /* Minimale Position beim hochfahren */
                                        maxValueLevel: 79,      /* Maximale Position beim runterfahren */
                                        icon: "blinds-horizontal", 
                                        offColor: HMIOff, 
                                        onColor: HMIOn, 
                                        name: 'IKEA Fyrtur' , 
                                        secondRow: 'Büro Fenster'  /* Zusätzliche Zeile im Popup */ 
                                      },
                            

                            Für die Steuerung werden in diesem Beispiel übrigens lediglich zwei Original-Datenpunkte benutzt (keine Steuerung über externe Skripte und ganz ohne Datenpunkte in 0_userdata). Desweiteren wird in diesem Beispiel die minimale Position des Rollos mit 1% und die maximale Position des Rollos auf 79% definiert:

                            • deconz.0.Lights.27.lift
                            • deconz.0.Lights.27.stop (sollte vorher mindestens einmal auf "true" oder "false" gesetzt werden, da der Datenpunkt default mit null durch den Adapter initialisiert wird)

                            dfeab31c-89de-4829-8ec2-e5b8dd1c9166-image.png

                            Der Alias .OPEN bekommt zusätzlich noch eine Konvertierung für die minimale Position:
                            500751ec-5d63-4da3-9752-d41b57440979-image.png

                            Der Alias .CLOSE bekommt zusätzlich noch eine Konvertierung für die maximale Position:
                            3b8ed7f1-8e9f-4f32-bf84-4054e424c40a-image.png

                            Wie kann ich das Update durchführen?

                            Wenn aktuelle Version ab v4.3.3.10, dann unteren Teil des NSPanelTs.ts ab:
                            f2ca4f3b-1f5c-4312-b3c3-47d90c6a6410-image.png 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

                            VG
                            @TT-Tom & Armilar 😊

                            M 1 Reply Last reply Reply Quote 1
                            • M
                              murki @Armilar last edited by

                              Ich habe mein NSPAnbel mit iobroker/Lovelace soweit am Laufen und vieles sieht auch schon so aus, wie ich mir das vorstelle.
                              Allerdings stehe ich etwas auf dem Schlauch, wie ich über den Aliasmanager und einem CardGrid einen "Szenenwähler" implementiere.
                              Ich habe einen netshenden Datenpunkt mit den Werten 1 bis 6 die für jeweils eine Szene (z.B. aus, Kino, nur Licht, Party, etc.) stehen. Ich will das jetzt als einfaches Grid zum Auswählen auf dem NSPanel haben, wobei das Icon der aktiven Szene natürlich eine andere Farbe haben soll.

                              ich habe jetzt versucht, sechs Aliase als Sockets anzulegen und bei "ACTUAL" den entsprechenden Datenpunkt und als Funktion (val==2) und entsprechend bei "SET" val=2 - allerdings setzt / liest er da nichts?!

                              Vielleicht kann mich jemand mal in die richtige Richtung schubsen, wie man sowas umsetzen könnte, oder hat sogar ein Beispiel.

                              BTW. @admin Dieser Thread sollte eigentlich ein eigenes Unterforum sein; so ist das Ganze recht unübersichtlich.

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

                                @murki

                                mit welcher Version arbeitest du?

                                zeig doch mal was du schon gemacht hast. Von den Datenpunkten die Objektdaten, aus dem Script, die Pageconfig der Seite.

                                M 1 Reply Last reply Reply Quote 1
                                • M
                                  murki @TT-Tom last edited by murki

                                  Aktuell verwende ich noch V4.3.1.5 bei der letzten V4.3.3.9 bekomme ich beim Kompilieren diverse "Error: Cannot find module 'dayjs/locale/xx-xx'" Fehler.

                                  Die Seite ist so definiert:

                                  let NSPanel_Main = <PageGrid2>
                                  {
                                      'type': 'cardGrid2',
                                      'heading': 'Szene',
                                      'useColor': true,
                                      'items': [
                                          <PageItem>{ id: 'alias.0.KG-Kino.Mode.Off', name: 'Aus' ,icon: 'lightbulb-off-outline', onColor: MSRed, offColor:MSYellow },
                                          <PageItem>{ id: 'alias.0.KG-Kino.Mode.Light', name: 'Licht' ,icon: 'lightbulb-on-outline', onColor: MSRed, offColor:MSYellow },
                                          <PageItem>{ id: 'alias.0.KG-Kino.Mode.PC', name: 'PC' ,icon: 'microsoft-windows', onColor: MSRed, offColor:MSYellow },
                                          <PageItem>{ id: 'alias.0.KG-Kino.Mode.Cinema', name: 'Kino' ,icon: 'blinds', onColor: MSRed, offColor:MSYellow },
                                          <PageItem>{ id: 'alias.0.KG-Kino.Mode.Wii', name: 'Wii' ,icon: 'nintendo-wii', onColor: MSRed, offColor:MSYellow },
                                          <PageItem>{ id: 'alias.0.KG-Kino.Mode.Party', name: 'Party' ,icon: 'party-popper', onColor: MSRed, offColor:MSYellow },
                                      ]
                                  };
                                  

                                  Die Aliase sind wie folgt eingerichtet:

                                  alias.png

                                  Merkwürdig ist auch, dass er meckert, wenn ON_SET nicht existiert, obwohl hier steht, das für Socket eigentlich nur SET und ACTUAL relevant sind.
                                  Jedenfalls wird 0_userdata.0.Kinomode.val niemals gesetzt.

                                  Vermutlich ist mein Hauptproblem, dass ich den Alias-Manager noch nicht richtig verstanden habe...

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

                                    @murki

                                    ja - deshalb nutze ich auch den Gerätemanager...

                                    a1cc8217-4659-4a25-9b79-6c1aabd35ed5-image.png

                                    Der hat nur SET und ACTUAL und würde anschließend auch funktionieren...

                                    Du benötigst aber dann noch ein Script, welches die restlichen Schalter ausschaltet.

                                    04630222-4e81-4866-af51-46ab89fbfccd-Nextion_Editor_uqcnU7hgNo.gif

                                    könnte so aussehen

                                    Aktuell verwende ich noch V4.3.1.5 bei der letzten V4.3.3.9 bekomme ich beim Kompilieren diverse "Error: Cannot find module 'dayjs/locale/xx-xx'" Fehler.

                                    die letzte ist die v4.3.3.23 und die Beschreibung für einen Wechsel unter v4.3.3.10 steht immer unter den Versionsankündigungen

                                    EDIT:
                                    Das eigentliche Problem ist, das eigentlich ein Trigger auf die Schalter nie enden würde. Es sei denn, die sind komplett voneinander entkoppelt.

                                    Also schreibe ich über den Alias einen separaten Datenpunkt (Triggerpunkt) an, der dann numerisch 1-6 auswertet.

                                    71b2e73b-e329-48e5-b751-d115eea14282-image.png

                                    ein kleines Blockly setzt dann die Zustände entsprechend und könnte im weiteren Verlauf auch die Szenen steuern
                                    8b020c56-0062-4337-a30b-8d1e99704f5d-image.png

                                    f9840c5c-7caa-47a8-98b6-24f5efdcd534-image.png

                                    Unter Objekte habe ich den Alias so verändert, dass er unterschiedliche Datenpunkte bedient
                                    827a4bae-9839-4fcd-ac72-559c126cbdf7-image.png

                                    Also Schreiben (number) von 1-6 in den Szenentrigger und lesend (boolean) über Szene_1 - Szene_6

                                    EDIT2: Evtl. gibt es ja auch noch andere Ansätze?

                                    EDIT3: Dürfte mit deinen Datenpunkten dann so aussehen:
                                    f549ce30-d041-49b3-9315-934c1a0ddda6-Nextion_Editor_UrMZWUpXWg.gif

                                    M 1 Reply Last reply Reply Quote 2
                                    • M
                                      murki @Armilar last edited by

                                      Hi,

                                      ich habe oben was falsches geschrieben, ich habe die letzte, also 4.3.3.23 probiert, aber schon bei Schritt 5 der Updateanleitung kommt besagter Fehler.

                                      Ich werde nochmal versuchen, über den Gerätemanager zu gehen, vielleicht komme ich damit weiter. Dass ich beim Setzen eines bools die anderen dann deaktivieren muss, ist mir im Prinzip klar, ich hatte gehofft das über einen int umgehen zu können. Das wäre von der Programmlogik sinnvoller, es darf / kann ja nie zwei aktive Szenenen zur gleichen zeit geben undmomentan ist es so in einem Homematic-Skript mit einem Sechsfach-Wandtaster implementiert und ich muss dann wieder schauen, das dieses zwei "Welten" synchron bleiben.

                                      Danke,

                                      murki

                                      M Armilar 2 Replies Last reply Reply Quote 0
                                      • M
                                        murki @murki last edited by

                                        Ich habe die Aliase jetzt nochmal über "Geräte" angelegt und bei "ACTUAL" entsprechend "(val==3)" udn bei "SET" 3 hinterlegt, sodass es mit der Originalvariable direkt auch funktioniert und ich kein zusätzliches Skript benötige. Jetzt habe ich nur noch das Problem, dass die aktive Szene noch die offColor-Farbe hat, obwohl der entsprechende ACTUAL-Datenpunkt korrekt auf true ist.

                                        Bin aber auf jeden fall schon mal viel weiter!

                                        Danke!

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

                                          @murki

                                          Hatte den letzten Post noch endlos erweitert 😊

                                          ich habe oben was falsches geschrieben, ich habe die letzte, also 4.3.3.23 probiert, aber schon bei Schritt 5 der Updateanleitung kommt besagter Fehler.

                                          https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker---Basisinstallation#8--einstellungen-in-js-adapter-instanz

                                          Du hast die Module noch nicht unter npm im JS-Adapter

                                          ist mir im Prinzip klar, ich hatte gehofft das über einen int umgehen zu können. Das wäre von der Programmlogik sinnvoller, es darf / kann ja nie zwei aktive Szenenen zur gleichen zeit geben undmomentan ist es so in einem Homematic-Skript mit einem Sechsfach-Wandtaster implementiert und ich muss dann wieder schauen, das dieses zwei "Welten" synchron bleiben.

                                          Viele Wege führen nach Rom

                                          Der Ansatz wäre über den ALIAS-Typ Taste einfacher gewesen, jedoch ist deine Anforderung, dass das aktive Icon ja eine andere Farbe haben soll...

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

                                            Moin zusammen,

                                            habe gerade von der v4.3.3.16 auf die aktuelle .23 upgedatet. Läuft auch alles. Nur bei den Logs kommt folgende Ausgabe:

                                            08:29:10.334	info	javascript.0 (734649) script.js.NSPanels.Panel_Flur: Updates for NSPanel available
                                            08:29:10.335	info	javascript.0 (734649) script.js.NSPanels.Panel_Flur: registered 30 subscriptions, 7 schedules, 0 messages, 0 logs and 0 file subscriptions
                                            08:29:10.993	info	javascript.0 (734649) script.js.NSPanels.Panel_Flur: Desired TFT Firmware: 53 / v4.3.3
                                            08:29:10.994	info	javascript.0 (734649) script.js.NSPanels.Panel_Flur: Installed TFT Firmware: 53 / v4.3.3
                                            08:29:11.352	info	javascript.0 (734649) script.js.NSPanels.Panel_Flur: Desired TFT Firmware: 53 / v4.3.3
                                            08:29:11.353	info	javascript.0 (734649) script.js.NSPanels.Panel_Flur: Installed TFT Firmware: 53 / v4.3.3
                                            
                                            

                                            Warum steht da "Updates for NSPanel available"?
                                            Ich kann nirgends etwas finden, was ich am Panel updaten könnte?!

                                            Gruß, Bernd

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            658
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

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