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

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    SONOFF NSPanel mit Lovelace UI

    This topic has been deleted. Only users with topic management privileges can see it.
    • Matzebhv
      Matzebhv last edited by

      Moin, ich wieder mit meinem neu aufgesetzten System 🙂

      Habe die Chance genutzt und sowohl die Firmware als auch die Scripte auf aktuellen Stand zu bringen.

      Das Panel funktioniert einwandfrei, allerdings wird das Log vollgeschrieben mit:

      script.js.NSPanel.Panel1: error with reading senor-data: Cannot read properties of undefined (reading 'Temperature')

      Ich kann den Fehler absolut nicht finden.

      Tasmota, Firmware, Script und iOBroker aktuell.

      Gruß
      Matze

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

        @matzebhv sagte in SONOFF NSPanel mit Lovelace UI:

        Moin, ich wieder mit meinem neu aufgesetzten System 🙂

        Habe die Chance genutzt und sowohl die Firmware als auch die Scripte auf aktuellen Stand zu bringen.

        Das Panel funktioniert einwandfrei, allerdings wird das Log vollgeschrieben mit:

        script.js.NSPanel.Panel1: error with reading senor-data: Cannot read properties of undefined (reading 'Temperature')

        Ich kann den Fehler absolut nicht finden.

        Tasmota, Firmware, Script und iOBroker aktuell.

        Gruß
        Matze

        Benutzt du eine Emulation oder das echte Panel?

        Erste Vermutung: Der interne Sensor ist nicht im Tasmota-Template...

        Hintergrund, es werden die internen Sensordaten (der benannte ist der Temperatursensor) ausgelesen und in Datenpunkte unter 0_userdata.0. geschrieben. Bei meiner Emu (die hat ja keine externen Sensoren) ist der Fehler völlig normal. Beim Original Panel allerdings nicht.

        Nachfolgende Funktion (fast am Ende des TS-Scripts vor den Color-Funktionen) findest du folgende Funktion:

        //------------------Begin Read Internal Sensor Data
        on({ id: config.panelRecvTopic.substring(0, config.panelRecvTopic.length - 'RESULT'.length) + 'SENSOR' }, async (obj) => {
            try {
                const Tasmota_Sensor = JSON.parse(obj.state.val);
        
                await createStateAsync(NSPanel_Path + 'Sensor.Time', <iobJS.StateCommon>{ type: 'string' });
                await createStateAsync(NSPanel_Path + 'Sensor.TempUnit', <iobJS.StateCommon>{ type: 'string' });
                await createStateAsync(NSPanel_Path + 'Sensor.ANALOG.Temperature', <iobJS.StateCommon>{ type: 'number', 'unit': '°C' });
                await createStateAsync(NSPanel_Path + 'Sensor.ESP32.Temperature', <iobJS.StateCommon>{ type: 'number', 'unit': '°C' });
        
                await setStateAsync(NSPanel_Path + 'Sensor.Time', <iobJS.State>{ val: Tasmota_Sensor.Time, ack: true });
                await setStateAsync(NSPanel_Path + 'Sensor.TempUnit', <iobJS.State>{ val: '°' + Tasmota_Sensor.TempUnit, ack: true });
                //await setStateAsync(NSPanel_Path + 'Sensor.ANALOG.Temperature', <iobJS.State>{ val: parseFloat(Tasmota_Sensor.ANALOG.Temperature1), ack: true });
                await setStateAsync(NSPanel_Path + 'Sensor.ESP32.Temperature', <iobJS.State>{ val: parseFloat(Tasmota_Sensor.ESP32.Temperature), ack: true });
            } catch (err) {
                console.warn('error with reading senor-data: '+ err.message);
            }
        });
        //------------------End Read Internal Sensor Data
        

        Kommentiere den vorletzten setStateAsync mal aus. Falls danach immer noch, den ESP32 Sensor eine Zeile danach.

        Dann melden 😉

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

          @armilar Meld 🙂

          Nein, ich benutze ein voll echtes Panel. Die Daten sind auch gerade unter 0_userdata.0.NSPanel.1.Sensor.ANALOG.Temperature angekommen -> 23.2

          Ich habe das trotzdem mal auskommentiert, hat leider nicht geholfen.

          //------------------Begin Read Internal Sensor Data
          on({ id: config.panelRecvTopic.substring(0, config.panelRecvTopic.length - 'RESULT'.length) + 'SENSOR' }, async (obj) => {
              try {
                  const Tasmota_Sensor = JSON.parse(obj.state.val);
          
                  await createStateAsync(NSPanel_Path + 'Sensor.Time', <iobJS.StateCommon>{ type: 'string' });
                  await createStateAsync(NSPanel_Path + 'Sensor.TempUnit', <iobJS.StateCommon>{ type: 'string' });
                  await createStateAsync(NSPanel_Path + 'Sensor.ANALOG.Temperature', <iobJS.StateCommon>{ type: 'number', 'unit': '°C' });
                  await createStateAsync(NSPanel_Path + 'Sensor.ESP32.Temperature', <iobJS.StateCommon>{ type: 'number', 'unit': '°C' });
          
                  await setStateAsync(NSPanel_Path + 'Sensor.Time', <iobJS.State>{ val: Tasmota_Sensor.Time, ack: true });
                  await setStateAsync(NSPanel_Path + 'Sensor.TempUnit', <iobJS.State>{ val: '°' + Tasmota_Sensor.TempUnit, ack: true });
                  //await setStateAsync(NSPanel_Path + 'Sensor.ANALOG.Temperature', <iobJS.State>{ val: parseFloat(Tasmota_Sensor.ANALOG.Temperature1), ack: true });
                  await setStateAsync(NSPanel_Path + 'Sensor.ESP32.Temperature', <iobJS.State>{ val: parseFloat(Tasmota_Sensor.ESP32.Temperature), ack: true });
              } catch (err) {
                  console.warn('error with reading senor-data: '+ err.message);
              }
          });
          //------------------End Read Internal Sensor Data
          

          -> script.js.NSPanel.Panel1: error with reading senor-data: Cannot read properties of undefined (reading 'Temperature')

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

            @matzebhv sagte in SONOFF NSPanel mit Lovelace UI:

            @armilar Meld 🙂

            Nein, ich benutze ein voll echtes Panel. Die Daten sind auch gerade unter 0_userdata.0.NSPanel.1.Sensor.ANALOG.Temperature angekommen -> 23.2

            Ich habe das trotzdem mal auskommentiert, hat leider nicht geholfen.

            //------------------Begin Read Internal Sensor Data
            on({ id: config.panelRecvTopic.substring(0, config.panelRecvTopic.length - 'RESULT'.length) + 'SENSOR' }, async (obj) => {
                try {
                    const Tasmota_Sensor = JSON.parse(obj.state.val);
            
                    await createStateAsync(NSPanel_Path + 'Sensor.Time', <iobJS.StateCommon>{ type: 'string' });
                    await createStateAsync(NSPanel_Path + 'Sensor.TempUnit', <iobJS.StateCommon>{ type: 'string' });
                    await createStateAsync(NSPanel_Path + 'Sensor.ANALOG.Temperature', <iobJS.StateCommon>{ type: 'number', 'unit': '°C' });
                    await createStateAsync(NSPanel_Path + 'Sensor.ESP32.Temperature', <iobJS.StateCommon>{ type: 'number', 'unit': '°C' });
            
                    await setStateAsync(NSPanel_Path + 'Sensor.Time', <iobJS.State>{ val: Tasmota_Sensor.Time, ack: true });
                    await setStateAsync(NSPanel_Path + 'Sensor.TempUnit', <iobJS.State>{ val: '°' + Tasmota_Sensor.TempUnit, ack: true });
                    //await setStateAsync(NSPanel_Path + 'Sensor.ANALOG.Temperature', <iobJS.State>{ val: parseFloat(Tasmota_Sensor.ANALOG.Temperature1), ack: true });
                    await setStateAsync(NSPanel_Path + 'Sensor.ESP32.Temperature', <iobJS.State>{ val: parseFloat(Tasmota_Sensor.ESP32.Temperature), ack: true });
                } catch (err) {
                    console.warn('error with reading senor-data: '+ err.message);
                }
            });
            //------------------End Read Internal Sensor Data
            

            -> script.js.NSPanel.Panel1: error with reading senor-data: Cannot read properties of undefined (reading 'Temperature')

            Kommando zurück...

            Hatte das ebenfalls eben. Tasmota-Update. Das Panel ist im Safe-Boot. Geh mal unter der IP ins Tasmota und starte kurz das Panel durch. Dann sollte es wieder gehen

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

              im Tasmota 12.2.0 ist ein Bug

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

                @armilar sagte in SONOFF NSPanel mit Lovelace UI:

                im Tasmota 12.2.0 Updater ist ein Bug - Der zieht die 12.0.2 Version.

                Hmm, angezeigt auf dem Panel wird die aktuelle Version -> Tasmota 12.2.0 by Theo Arends

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

                  @armilar Soll ich mal ein Downgrade versuchen? Oder ein Update von Hand?

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

                    @matzebhv sagte in SONOFF NSPanel mit Lovelace UI:

                    @armilar Soll ich mal ein Downgrade versuchen? Oder ein Update von Hand?

                    Okay, dann sollte es okay sein. Der Fehler ist in der tasmota32-DE.bin.

                    tasmota32-nspanel.bin ist okay

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

                      @armilar eigentlich noch ein wenig anders. Update auf die nspanel.bin 12.2.0 von heute ( die war vorher schon drauf ) -> Fehler vorhanden
                      Downgrade auf die nspanel.bin 12.1.1 -> Fehler weg.

                      Vielleicht hilft dir das.

                      Gruß
                      Matze

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

                        @matzebhv sagte in SONOFF NSPanel mit Lovelace UI:

                        @armilar eigentlich noch ein wenig anders. Update auf die nspanel.bin 12.2.0 von heute ( die war vorher schon drauf ) -> Fehler vorhanden
                        Downgrade auf die nspanel.bin 12.1.1 -> Fehler weg.

                        Vielleicht hilft dir das.

                        Gruß
                        Matze

                        Ist so... Im 12.2.0 (Patrick) wird der ESP-Sensor nicht mehr ausgelesen.

                        Bitte für alle die ein 0_userdata.0.NSPanel.X.NSPanel_autoUpdate = true haben, bitte auf false setzen.

                        Dann Downgrade auf 12.1.1 (Patricia)

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

                          @armilar

                          Change-Log Tasmota 12.2.0

                          • Command SetOption146 1 to enable display of ESP32 internal temperature

                          Achtung: Änderung in Tasmota ESP32

                          Also, falls folgende Warnung im Log auftritt:

                          script.js.NSPanel.Panel1: error with reading senor-data: Cannot read properties of undefined (reading 'Temperature')
                          

                          dann in der Tasmota Console

                          SetOption146 1
                          

                          eingeben.

                          Dann wird die ESP-Temperatur wieder gelesen.

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

                            Hallo, ich habe die manuellen Taster als Garagenöffner konfiguriert.
                            Ich möchte gerne diese Zeilen so anpassen daß der Status des Garagentors mit 2 verschiedenen Icon angezeigt wird. Also "Garage offen" und Garage geschlossen"

                            mrIcon1ScreensaverEntity: { ScreensaverEntity: 'mqtt.0.stat.tasmota_0E3BFC.POWER1', ScreensaverEntityIcon: 'garage-variant', ScreensaverEntityOnColor: On, ScreensaverEntityOffColor: Off  },
                                mrIcon2ScreensaverEntity: { ScreensaverEntity: 'mqtt.0.stat.tasmota_0E3BFC.POWER2', ScreensaverEntityIcon: 'gate', ScreensaverEntityOnColor: On, ScreensaverEntityOffColor: Off  },
                            

                            ist das möglich?

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

                              @wuschl sagte in SONOFF NSPanel mit Lovelace UI:

                              Ich möchte gerne diese Zeilen so anpassen daß der Status des Garagentors mit 2 verschiedenen Icon angezeigt wird. Also "Garage offen" und Garage geschlossen"

                              Ja, überhaupt kein Problem - sollte funktionieren...

                              VG

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

                                @armilar Super, was muss ich in den Zeilen ändern? Ich suche seit gestern Abend und bekomme es einfach nicht gebacken. Wahrscheinlich sehe ich den Wald vor lauter Bäumen nicht mehr.

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

                                  @wuschl

                                  Sorry. hatte dich so verstanden, dass es schon bis auf die Icons funktionieren würde.

                                  Zunächst einmal müssen deine Buttons zu Switches werden:
                                  https://github.com/joBr99/nspanel-lovelace-ui/wiki/NSPanel-Tasmota-FAQ#14--switchmode
                                  ansonsten kennen die nur an und aus und müssten gegenseitig verriegelt werden. Danach solltest du mit dem richtigen Switchmode auch Taster haben.

                                  Mit SetOption114 1 entkoppelst du nun die physischen Relais von den Tastern

                                  Die beiden Zeilen mrIcon1/2ScreensaverEntity von dir greifen nur entsprechende Zustände des POWER1 und POWER2 ab. Wird wahrscheinlich danach Switch1 und Switch2 sein. Musste eben unter mqtt.0. nachsehen wo die sind und entsprechend in den beiden Zeilen mrIcon1/2ScreensaverEntity umändern.

                                  Den Garagentoraktor steuerst du dann über ein externes Blockly, JS oder TS in dem du Switch1 und Switch2 triggerst und entsprechend deinen Garagentoraktor informierst.

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

                                    @wuschl

                                    Falls davon schon etwas umgesetzt ist, dann schreibe kurz was bereits umgesetzt ist.

                                    Ansonsten evtl. ein kleiner Auszug der Datenpunkte im mqtt.0.

                                    Viele Wege führen nach Rom. Du hast aber noch nichts zur Umsetzung gesagt 😉

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

                                      @armilar Missverständnis. Die Taster funktionieren schon. Nur möchte ich die Icons im Screenserver mit dem Datenpunkten zum Zustand der beiden Garagentore benutzen. Also Garagentor offen, Icon "Garage-Offen", Garagentor geschlossen, Icon "Garage-geschlossen".
                                      Im jetzigen Zustand ändert nur das Icon die Farbe.

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

                                        @wuschl

                                        Ach so... nee, da ist aktuell kein Icon-Wechsel in den beiden Buttons drin. Müsste noch implementiert werden. Ist aber auch kein Hexenwerk. Kommt demnächst.

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

                                          @wuschl

                                          Wäre evtl. auch zur Darstellung von Fenstern, Türen, Schössern, etc. sehr interessant.

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

                                            @armilar Okay, dankeschön. Dann waren die Stunden suchen bis jetzt umsonst, dann werde ich warten.
                                            Andere Frage, ich habe 4 Seiten mit Beleuchtung, WLAN, Thermostat... alles hinbekommen. Nur mit den Rolläden bin ich gescheitert, da findet man auch nirgendwo ein Beispiel wie man das einsetzt. Welche Page muss man programmieren um das popupShutter zu bekommen?

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            768
                                            Online

                                            31.7k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            lovelace ui nspanel sonoff
                                            265
                                            7291
                                            4999212
                                            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