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

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

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

      @wuschl

      Das Skript kümmert sich nicht darum, ob der MQTT da ist oder nicht. Es geht davon aus, dass der MQTT in der Reihenfolge vor dem JS da ist...

      W 1 Reply Last reply Reply Quote 0
      • W
        Wuschl @Armilar last edited by

        @armilar der ioBroker startet aber die Instanzen der Reihe nach oder? Dann kommt JS vor MQTT 😠

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

          @wuschl

          // Mit Start auf Updates checken
          get_locales();
          setState(config.panelSendTopic, 'pageType~pageStartup');
          get_tasmota_status0();
          get_panel_update_data();
          check_updates();
          setTimeout(async function () {
              setState(config.panelSendTopic, 'pageType~pageStartup');
          }, 60000);
          

          Gleiche Stelle wie eben nur jetzt noch ein zeitversetztes Startup (eine Minute später)

          Mal sehen, ob der das packt

          W 1 Reply Last reply Reply Quote 0
          • W
            Wuschl @Armilar last edited by

            @armilar said in SONOFF NSPanel mit Lovelace UI:

            setTimeout(async function () {

            Jep👍 funktioniert

            ich habe mal beobachtet wie der Start verläuft, wenn du die Uhrzeit anschaust, es ist über 1 Minute zwischen den Starts

            mqtt.0
            	2022-12-29 22:09:24.112	info	Client [DVES_0E3BFC] subscribes on "cmnd/NS-Panel-Garage_0E3BFC/#" with regex /^cmnd\.NS-Panel-Garage_0E3BFC(\..*)?/
            
            javascript.0
            	2022-12-29 22:08:03.555	info	script.js.Ns-Panels.Garage-3_7_3: compiling TypeScript source...
            
            Armilar 1 Reply Last reply Reply Quote 0
            • Armilar
              Armilar Most Active Forum Testing @Wuschl last edited by Armilar

              @wuschl

              Versuch den mal von einer Minute (60000ms) runter zu schrauben. Z.B. auf 15000ms

              EDIT: bei einer Minute lagen wir dann schon richtig...

              Und vegleiche kurz die MQTT Einstellungen. Das sind meine:
              a7397e92-369a-4930-947c-69389b086adb-image.png

              W 1 Reply Last reply Reply Quote 0
              • W
                Wuschl @Armilar last edited by

                @armilar bei den MQTT Einstellungen ist bei mir ein Haken bei "Sende auch Zustände" noch gesetzt. Sonst ist alles gleich.
                dann belasse ich es bei 60000, wenns funktioniert.👍

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

                  @armilar

                  22:19:00.013	warn	javascript.0 (16857) at SendToPanel (script.js.common.NSPanelTS_ts:2432:13)
                  22:19:00.013	warn	javascript.0 (16857) at SendTime (script.js.common.NSPanelTS_ts:2600:9)
                  22:19:00.013	warn	javascript.0 (16857) at Object.<anonymous> (script.js.common.NSPanelTS_ts:1515:9)
                  22:19:00.015	info	javascript.0 (16857) script.js.common.NSPanelTS_ts: setForeignState(id=mqtt.0.SmartHome.NSPanel_1.cmnd.CustomSend, state={"val":"time~22:19","ack":false,"ts":1672348740014,"q":0,"from":"system.adapter.javascript.0","lc":1672348740014,"c":"script.js.common.NSPanelTS_ts"})
                  22:19:00.015	info	javascript.0 (16857) script.js.common.NSPanelTS_ts: getState(id=alias.0.Recklinghausen.ICON, timerId=undefined) => {"val":38,"ack":true,"ts":1672347901286,"q":0,"from":"system.adapter.accuweather.0","user":"system.user.admin","lc":1672340698212}
                  22:19:00.015	info	javascript.0 (16857) script.js.common.NSPanelTS_ts: getState(id=alias.0.Recklinghausen.TEMP, timerId=undefined) => {"val":7.3,"ack":true,"ts":1672347901287,"q":0,"from":"system.adapter.accuweather.0","user":"system.user.admin","lc":1672347901287}
                  22:19:00.015	info	javascript.0 (16857) script.js.common.NSPanelTS_ts: getState(id=accuweather.0.Daily.Day1.Day.PrecipitationProbability, timerId=undefined) => {"val":81,"ack":true,"ts":1672340700584,"q":0,"from":"system.adapter.accuweather.0","user":"system.user.admin","lc":1672303497603}
                  22:19:00.016	info	javascript.0 (16857) script.js.common.NSPanelTS_ts: getState(id=accuweather.0.Current.WindSpeed, timerId=undefined) => {"val":26.5,"ack":true,"ts":1672347901288,"q":0,"from":"system.adapter.accuweather.0","user":"system.user.admin","lc":1672347901288}
                  22:19:00.016	info	javascript.0 (16857) script.js.common.NSPanelTS_ts: getState(id=accuweather.0.Current.UVIndex, timerId=undefined) => {"val":0,"ack":true,"ts":1672347901289,"q":0,"from":"system.adapter.accuweather.0","user":"system.user.admin","lc":1672322700304}
                  22:19:00.016	info	javascript.0 (16857) script.js.common.NSPanelTS_ts: getState(id=accuweather.0.Current.RelativeHumidity, timerId=undefined) => {"val":71,"ack":true,"ts":1672347901288,"q":0,"from":"system.adapter.accuweather.0","user":"system.user.admin","lc":1672347901288}
                  22:19:00.016	info	javascript.0 (16857) script.js.common.NSPanelTS_ts: getState(id=accuweather.0.Daily.Day1.Day.PrecipitationProbability, timerId=undefined) => {"val":81,"ack":true,"ts":1672340700584,"q":0,"from":"system.adapter.accuweather.0","user":"system.user.admin","lc":1672303497603}
                  22:19:00.016	info	javascript.0 (16857) script.js.common.NSPanelTS_ts: getState(id=accuweather.0.Daily.Day1.Day.PrecipitationProbability, timerId=undefined) => {"val":81,"ack":true,"ts":1672340700584,"q":0,"from":"system.adapter.accuweather.0","user":"system.user.admin","lc":1672303497603}
                  22:19:00.016	info	javascript.0 (16857) script.js.common.NSPanelTS_ts: getState(id=accuweather.0.Current.WindSpeed, timerId=undefined) => {"val":26.5,"ack":true,"ts":1672347901288,"q":0,"from":"system.adapter.accuweather.0","user":"system.user.admin","lc":1672347901288}
                  22:19:00.016	info	javascript.0 (16857) script.js.common.NSPanelTS_ts: getState(id=accuweather.0.Current.WindSpeed, timerId=undefined) => {"val":26.5,"ack":true,"ts":1672347901288,"q":0,"from":"system.adapter.accuweather.0","user":"system.user.admin","lc":1672347901288}
                  22:19:00.016	info	javascript.0 (16857) script.js.common.NSPanelTS_ts: getState(id=accuweather.0.Current.UVIndex, timerId=undefined) => {"val":0,"ack":true,"ts":1672347901289,"q":0,"from":"system.adapter.accuweather.0","user":"system.user.admin","lc":1672322700304}
                  22:19:00.017	info	javascript.0 (16857) script.js.common.NSPanelTS_ts: getState(id=accuweather.0.Current.UVIndex, timerId=undefined) => {"val":0,"ack":true,"ts":1672347901289,"q":0,"from":"system.adapter.accuweather.0","user":"system.user.admin","lc":1672322700304}
                  22:19:00.017	info	javascript.0 (16857) script.js.common.NSPanelTS_ts: getState(id=accuweather.0.Current.RelativeHumidity, timerId=undefined) => {"val":71,"ack":true,"ts":1672347901288,"q":0,"from":"system.adapter.accuweather.0","user":"system.user.admin","lc":1672347901288}
                  22:19:00.017	info	javascript.0 (16857) script.js.common.NSPanelTS_ts: getState(id=accuweather.0.Current.RelativeHumidity, timerId=undefined) => {"val":71,"ack":true,"ts":1672347901288,"q":0,"from":"system.adapter.accuweather.0","user":"system.user.admin","lc":1672347901288}
                  22:19:00.017	info	javascript.0 (16857) script.js.common.NSPanelTS_ts: getState(id=mqtt.0.SmartHome.NSPanel_1.stat.POWER1, timerId=undefined) => {"val":"OFF","ack":true,"ts":1672310670039,"q":0,"from":"system.adapter.mqtt.0","user":"system.user.admin","lc":1672310669949}
                  22:19:00.017	info	javascript.0 (16857) script.js.common.NSPanelTS_ts: getState(id=mqtt.0.SmartHome.NSPanel_1.stat.POWER1, timerId=undefined) => {"val":"OFF","ack":true,"ts":1672310670039,"q":0,"from":"system.adapter.mqtt.0","user":"system.user.admin","lc":1672310669949}
                  22:19:00.017	info	javascript.0 (16857) script.js.common.NSPanelTS_ts: getState(id=mqtt.0.SmartHome.NSPanel_1.stat.POWER2, timerId=undefined) => {"val":"OFF","ack":true,"ts":1672333707248,"q":0,"from":"system.adapter.mqtt.0","user":"system.user.admin","lc":1672333707127}
                  22:19:00.017	info	javascript.0 (16857) script.js.common.NSPanelTS_ts: getState(id=mqtt.0.SmartHome.NSPanel_1.stat.POWER2, timerId=undefined) => {"val":"OFF","ack":true,"ts":1672333707248,"q":0,"from":"system.adapter.mqtt.0","user":"system.user.admin","lc":1672333707127}
                  22:19:00.019	warn	javascript.0 (16857) at SendToPanel (script.js.common.NSPanelTS_ts:2432:13)
                  22:19:00.019	warn	javascript.0 (16857) at HandleScreensaverColors (script.js.common.NSPanelTS_ts:6251:9)
                  22:19:00.019	warn	javascript.0 (16857) at HandleScreensaverUpdate (script.js.common.NSPanelTS_ts:6165:13)
                  22:19:00.019	warn	javascript.0 (16857) at Object.<anonymous> (script.js.common.NSPanelTS_ts:1516:9)
                  22:19:00.020	info	javascript.0 (16857) script.js.common.NSPanelTS_ts: setForeignState(id=mqtt.0.SmartHome.NSPanel_1.cmnd.CustomSend, state={"val":"color~0~65535~65535~65535~19017~65535~65535~65535~65535~65535~64750~42639~26095~42639~65535~65535~65535~65535~65535~65535~65535~65535","ack":false,"ts":1672348740020,"q":0,"from":"system.adapter.javascript.0","lc":1672348740020,"c":"script.js.common.NSPanelTS_ts"})
                  22:19:00.020	info	javascript.0 (16857) script.js.common.NSPanelTS_ts: getState(id=0_userdata.0.NSPanel.1.Config.MRIcons.alternateMRIconSize.1, timerId=undefined) => {"val":false,"ack":true,"ts":1671973226792,"q":0,"c":"script.js.common.NSPanelTS_ts","from":"system.adapter.javascript.0","user":"system.user.admin","lc":1671973226792}
                  22:19:00.020	info	javascript.0 (16857) script.js.common.NSPanelTS_ts: getState(id=0_userdata.0.NSPanel.1.Config.MRIcons.alternateMRIconSize.2, timerId=undefined) => {"val":false,"ack":true,"ts":1671973227354,"q":0,"c":"script.js.common.NSPanelTS_ts","from":"system.adapter.javascript.0","user":"system.user.admin","lc":1671973227354}
                  22:19:00.022	warn	javascript.0 (16857) at SendToPanel (script.js.common.NSPanelTS_ts:2432:13)
                  22:19:00.022	warn	javascript.0 (16857) at HandleScreensaverUpdate (script.js.common.NSPanelTS_ts:6181:13)
                  22:19:00.022	warn	javascript.0 (16857) at Object.<anonymous> (script.js.common.NSPanelTS_ts:1516:9)
                  22:19:00.023	info	javascript.0 (16857) script.js.common.NSPanelTS_ts: setForeignState(id=mqtt.0.SmartHome.NSPanel_1.cmnd.CustomSend, state={"val":"weatherUpdate~~7.3 °C~Regen~~81 %~Wind~~26.5 km/h~UV~~0 ~Luft~~71 %~~~~17299~~17299~~~","ack":false,"ts":1672348740023,"q":0,"from":"system.adapter.javascript.0","lc":1672348740023,"c":"script.js.common.NSPanelTS_ts"})
                  22:19:30.008	info	javascript.0 (16857) script.js.common.NSPanelTS_ts: setForeignState(id=0_userdata.0.NSPanel.1.ScreensaverInfo.weatherForecast, state={"val":false,"ack":false,"ts":1672348770007,"q":0,"from":"system.adapter.javascript.0","lc":1672233690009,"c":"script.js.common.NSPanelTS_ts"})
                  
                  Armilar 1 Reply Last reply Reply Quote 0
                  • Armilar
                    Armilar Most Active Forum Testing @Wuschl last edited by Armilar

                    @wuschl

                    Ich versuche mal herauszubekommen, wann der Start vom MQTT ist und zögere das Startup hinaus. Kann ja eigentlich nicht schaden...

                    EDIT: aber heute nicht mehr 😉

                    W 1 Reply Last reply Reply Quote 0
                    • W
                      Wuschl @Armilar last edited by

                      @armilar 😊 war jedenfalls von Erfolg gekrönt👍 Danke Dir

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

                        @wuschl

                        Wie immer gerne 😉

                        1 Reply Last reply Reply Quote 0
                        • K
                          Kernal @Armilar last edited by

                          @armilar IMG_0844.jpg

                          Funktioniert 🙂 Vielen Vielen Dank für das schnelle Anpassen 😉

                          Wegen meiner dritten Frage mit einem weitere Symbol auf dem Screensaver bzgl. der Temperatur vom eingebauten Sender, hast du mir nicht zufällig ein Lösungsansatz ?

                          Gruss Claudio

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

                            @kernal

                            nee, kann leider keine Icons machen wo in der HMI keine sind. Da müsstest du einen Feature Request (Issue) bei @joBr99 machen.

                            Alternativ einen der unteren Icons opfern und die Sensor-Temperatur vom NSPanel einsetzen.

                            z.B. der

                            firstScreensaverEntity: { ScreensaverEntity: 'accuweather.0.Hourly.h0.PrecipitationProbability', ScreensaverEntityIcon: 'weather-pouring', ScreensaverEntityText: 'Regen', ScreensaverEntityUnitText: '%', ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 100} },
                            

                            statt accuweather den Datenpunkt: 0_userdata.0.NSPanel.1.Sensor.ANALOG.Temperature

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

                              @armilar said in SONOFF NSPanel mit Lovelace UI:

                              Alternativ einen der unteren Icons opfern und die Sensor-Temperatur vom NSPanel einsetzen.

                              Entweder das oder eines der Icons links oder rechts von dem Strich in der Mitte mit der Temperatur ersetzen (wenn das unter ioBroker geht)

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

                                @tomduke

                                Wenn man die Warnungen sieht, dann fällt mir auf, dass die schon bei einer einfachen Funktion, wie z.B. dem Senden der Zeit ausgelöst werden.

                                Welche nodeJS Version ist installiert?

                                kurz in der Linux-Console

                                node -v
                                

                                ausführen. Dein JS-Adapter muss ja neu sein, da die Aliase angelegt werden...

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

                                  @armilar

                                  Ich würde dennoch mal die Farbdefinitionen für den Screensaver checken. Ich glaube die Vermutung dass da eine Farbdefinition fehlt, ist gar nicht so abwägig.

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

                                    @kuckuckmann

                                    22:19:00.013	warn	javascript.0 (16857) at SendTime (script.js.common.NSPanelTS_ts:2600:9)
                                    

                                    Aber warum sollte beim Senden der Zeit eine Warnung ausgelöst werden?

                                    function SendTime(): void {
                                        try {
                                            const d = new Date();
                                            const hr = (d.getHours() < 10 ? '0' : '') + d.getHours();
                                            const min = (d.getMinutes() < 10 ? '0' : '') + d.getMinutes();
                                    
                                            SendToPanel(<Payload>{ payload: 'time~' + hr + ':' + min });
                                        } catch (err) {
                                            console.warn('function SendTime: ' + err.message);
                                        }
                                    }
                                    

                                    Ich denke das hat einen anderen Hintergrund

                                    C 1 Reply Last reply Reply Quote 0
                                    • C
                                      c3b @Armilar last edited by

                                      @armilar Hi Leutz

                                      Ich schon wieder. Bin gerade an der Subpage Guest_Wifi. Ich habe einen Alias angelegt. Diesen muss ich ja im Script anpassen.
                                      Was soll den in den Alias rein? Ich denke hier ist das Passwort hinterlegt. Ist das dann eine Info mit dem Aktuellwert? Ich habe keine Ahnung. Gibt es hierzu schon etwas zum nachlesen? Auf github ist zwar die cardqr beschrieben, verstehe ich aber nicht wirklich.

                                      Ist der QR-Code dann nur ein icon oder kann man den real abscannen?
                                      Ist dann ja eigendlich überflüssig, da er ja rechts daneben angezeigt wird. Nehme ich jedenfalls an.

                                      LG aus dem Sauerland
                                      Jörg

                                      1 Reply Last reply Reply Quote 0
                                      • W
                                        watcherkb last edited by watcherkb

                                        Ich habe ein Problem mit den MQTT Einstellungen. Ich möchte die Hardwarebuttons per Rule nutzen. Die Objektstruktur sieht für mich aber nicht korrekt aus. Wo liegt mein Fehler?
                                        Folgende Settings habe ich:

                                        Rule2 on Button1#state do Publish NSPanel/%topic%/%prefix%/RESULT {"CustomRecv":"event,button1"} endon on Button2#state do Publish NSPanel/%topic%/%prefix%/RESULT {"CustomRecv":"event,button2"} endon
                                        
                                        Rule2 1
                                        
                                        21:51:59.833 MQT: NSPanel/nspanel_1/stat/RESULT = {"CustomSend":"Done"}
                                        21:51:59.938 MQT: NSPanel/nspanel_1/stat/RESULT = {"CustomSend":"Done"}
                                        21:52:00.045 MQT: NSPanel/nspanel_1/stat/RESULT = {"CustomSend":"Done"}
                                        21:52:06.513 RUL: BUTTON1#STATE performs "Publish NSPanel/nspanel_1/%prefix%/RESULT {"CustomRecv":"event,button1"}"
                                        21:52:06.521 MQT: NSPanel/nspanel_1/%prefix%/RESULT = {"CustomRecv":"event,button1"}
                                        21:52:20.767 RUL: BUTTON2#STATE performs "Publish NSPanel/nspanel_1/%prefix%/RESULT {"CustomRecv":"event,button2"}"
                                        21:52:20.774 MQT: NSPanel/nspanel_1/%prefix%/RESULT = {"CustomRecv":"event,button2"}
                                        21:52:29.946 MQT: NSPanel/nspanel_1/stat/RESULT = {"CustomSend":"Done"}
                                        21:52:30.055 MQT: NSPanel/nspanel_1/stat/RESULT = {"CustomSend":"Done"}
                                        

                                        2022-12-30 21_45_23-Tasmota - Configure MQTT und 9 weitere Seiten - Geschäftlich – Microsoft​ Edge.png

                                        de904c66-ca1c-4180-8ee2-4746bfb81ae9-image.png

                                        T Armilar 2 Replies Last reply Reply Quote 0
                                        • T
                                          TT-Tom last edited by

                                          @c3b

                                          Hast du die Wiki zur QR Page schon gelesen QR Page wlan

                                          Hier ein Link zur Ansicht der Page

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

                                            @watcherkb

                                            Hier im Wiki kannst du das nochmal nachlesen. Du hast ein Fehler in den Rules

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.0k
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

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