Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Hardware
    4. SONOFF NSPanel mit Lovelace UI

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    SONOFF NSPanel mit Lovelace UI

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

      Es wurde ja schon viel über die Genauigkeit des NTC Temp Sensors geschrieben.
      Jedenfalls ist der nicht sehr genau. Da ich den NSPanel für die Steuerung der Heizung verwenden will, benötige ich genauere Werte.

      Rausgemessen habe ich jetzt folgendes :
      NTC hat folgende Werte : R0 = 10kOhm, B = 3950 ( Ist wohl von ITead bestätigt)
      Pullup ist 6,8k ? (Habe ich bei ITead angefagt, Antwort kommt erst nach Chinese new year)
      Über einen Low pass Filter (490 Ohm und einen Kondensator) geht es dann zum ADC Eingang des Esp32
      Abgesehen davon ist der ADC vom Esp32 selbst ungenau.
      Docu Analog to digital converter
      Abhilfe wäre eine Kalibrierung oder Verwendung eines anderen Temp-Sensors.

      Nun meine Frage :
      Kann ich anstelle des NTC ein DS18B20 anschließen ? Und wie muß die Konfiguration aussehen ?

      Ausprobiert habe ich es schon und bei den Template Parameters bei GPIO38 dann DS18B20 eingetragen.
      Funktioniert hat es allerdings nicht.
      Hardware habe ich umgebaut und den Kondensator entfernt.

      VG Werner

      BananaJoe 1 Reply Last reply Reply Quote 0
      • BananaJoe
        BananaJoe Most Active @Gargano last edited by

        @gargano sagte in SONOFF NSPanel mit Lovelace UI:

        Hardware habe ich umgebaut und den Kondensator entfernt.

        Du hast das so gemacht wie Tasmota das haben will:
        https://tasmota.github.io/docs/DS18x20/
        also mit dem Pullup-Widerstand?

        Und ich lese hier nur immer mit (ohne selbst ein NSPanel zu haben), das hier trifft auf die verwendete Firmware zu?
        701c4843-ca5b-4a08-92e6-edd37d9d77b8-image.png
        Also die Unterstützung ist in der Firmware drin?

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

          @bananajoe
          Ja mit Pullup.
          Ich bin mir aber nicht sicher, ob die OneWire DS18B20 Unterstützung in der speziellen NSPanel Konfiguration drin ist. Auswählbar ist sie auf jeden Fall.

          Das kann aber der Entwickler sicher beantworten. Evtl. @Armilar

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

            @gargano Wenn's auswählbar ist, dann ist es auch mit in dem Build drin. Im Zweifelsfall funktioniert aber auch die normale tasmota32 binary, muss nicht die Nspanel Version sein.

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

              @gargano

              Hast du schon die Wiki an dieser Stelle gelesen?

              https://github.com/joBr99/nspanel-lovelace-ui/wiki/NSPanel-Tasmota-FAQ#21--interner-raum-temperatursensor

              Wenn der einmal kalibriert ist, dann liefert der eigentlich ganz ordentliche Werte.

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

                @armilar Vielen Dank, daran hats gelegen!

                1 Reply Last reply Reply Quote 0
                • M
                  Mayan last edited by

                  Hallo

                  Gibt es die Möglichkeit den Namen in einer Infozeile aus einem Alias zu beziehen?
                  Es soll in einer Zeile z.B. „nächste Ferien Winterferien“ stehen.
                  Das „ nächste Ferien“ soll sich dann in „ aktuelle Ferien“ ändern.

                  <PageItem>{ id: "alias.0.Allgemein.Ferien.FerienText", icon: "calendar-cursor" , name: " ", onColor: White, offColor: White},
                          <PageItem>{ id: "alias.0.Allgemein.Ferien.FerienName", icon: "calendar-star" , name: " ", onColor: White, offColor: White},
                          <PageItem>{ id: "alias.0.Allgemein.Ferien.FerienAnfang",icon: "calendar-arrow-left" , name: "Anfang", onColor: White, offColor: White},
                          <PageItem>{ id: "alias.0.Allgemein.Ferien.FerienEnde", icon: "calendar-arrow-right" , name : "Ende", onColor: White, offColor: White} 
                  
                  Armilar 1 Reply Last reply Reply Quote 0
                  • Armilar
                    Armilar Most Active Forum Testing @Mayan last edited by Armilar

                    @mayan

                    Gibt es die Möglichkeit den Namen in einer Infozeile aus einem Alias zu beziehen?

                    ja - aus dem info-Alias

                    Es soll in einer Zeile z.B. „nächste Ferien Winterferien“ stehen.
                    Das „ nächste Ferien“ soll sich dann in „ aktuelle Ferien“ ändern.

                    Ich gehe davon aus, dass der Text dann wie folgt getrennt ist:
                    Icon - Name (= aktuelle Ferien oder nächste Ferien) - Wert (Winterferien)

                    <PageItem>{ id: "alias.0.Allgemein.Ferien.FerienName", icon: "calendar-star" , name: getState('Hier der Datenpunkt mit dem Namen').val, onColor: White, offColor: White},
                    

                    EDIT: Habe es mehrfach verändert, bin aber auch erst später auf die einfachste Lösung gekommen 😊

                    33578359-156f-40ab-b842-e4bfa7d08ba4-image.png

                    Also einfach statt

                    name: ' '
                    

                    folgendes:

                    name: getState('Hier der Datenpunkt mit dem Namen').val
                    

                    verwenden

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

                      kurze Info:

                      Das Release 3.9.0 verzögert sich noch ein paar Tage auf voraussichtlich: 03.02.2023

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

                        Release 49 / v3.9.0 Preview 1:

                        In den kommenden Tagen stelle ich die bereits dokumentierten Erweiterungen für das nächste Release vor:

                        das erweiterte Service-Menü:

                        c26b7518-a547-4903-aedb-1dd379fe8c48-Nextion_Editor_jc3M2TasjY.gif

                        Es wurden diverse Parameter aus der TS-Script-Config in ioBroker-Datenpunkte verlagert. Diese lassen sich neben bereits vorhandenen Datenpunkten jetzt direkt im Service-Menü des jeweiligen NSPanel's steuern. Die erforderlichen Datenpunkte, Alias-Channel und Alias-States legt das TS-Script automatisch an. Somit sollte bei TS-Script-Ausführung das Menü ohne zusätzlichen Aufwand verfügbar sein.

                        Link zur Wiki:
                        https://github.com/joBr99/nspanel-lovelace-ui/wiki/NSPanel-Service-Menü

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

                          @armilar
                          das mit der Parmeterübergabe dynamisch getState() ist ja mal cool, damit geht dann ja auch sowas bei Page-Grid/-Entities:

                                  'items': [
                                  <PageItem>{ id: "alias.0.NSPanel.Rollos.Büro", icon: "window-shutter", name: "Büro: " + getState('alias.0.NSPanel.Rollos.Büro.ACTUAL').val + "%", ...
                          

                          funkt super, leider nur 1x nach Scriptstart (oder liegt das noch an der der Version 3.8.1)

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

                            @egal

                            guter Hinweis: Ich baue da für die 3.9 noch einen Trigger ein... Ansonsten wird der Wert nicht neu gelesen...

                            Armilar 1 Reply Last reply Reply Quote 1
                            • Gargano
                              Gargano last edited by

                              Hat das schon mal jemand gehabt ?
                              Ich habe etwas rumexperimentiert mit dem NTC Temperaturfühler.

                              Plötzlich nach erneutem Einschalten : Display dunkel , keine WLAN Verbindung mehr, nix geht mehr.
                              Dem Herzschlag nahe ...

                              Nach erneuter Installation durch den Webinstaller und USB-Seriell Adapter kam wieder WLAN und nach kompletter Installation des NSPanel lief es wie vorher.

                              Kann mir nicht erklären wieso.

                              Gruß
                              Werner

                              Armilar 1 Reply Last reply Reply Quote 0
                              • M
                                Mayan last edited by

                                Das neue Service-Menü (ab 3.9.0) sieht super aus!
                                Ist eine Passwortabfrage (Zahlencode) vor dem Service-Menü möglich?
                                Damit nicht jeder darin etwas verstellen kann.

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

                                  @mayan sagte in SONOFF NSPanel mit Lovelace UI:

                                  Das neue Service-Menü (ab 3.9.0) sieht super aus!
                                  Ist eine Passwortabfrage (Zahlencode) vor dem Service-Menü möglich?
                                  Damit nicht jeder darin etwas verstellen kann.

                                  Leider nicht. Das einzige wäre eine cardAlarm davorzuschalten und dann erst bei positiver Rückmeldung die Serviceseite einschalten... Gibt es viele Hacker bei euch Zuhause? 😉

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

                                    @gargano

                                    Ich experimentiere auch viel am NSPanel (das Schreibtisch- und Testpanel) herum, aber das einzige was dabei irgendwann mal (schon ewig lange her) mal hatte, war das der Berry nicht wollte. Habs dann ebenfalls geflashed und bemerkt, ich hätte nur einen neuen Driver installieren müssen 😊

                                    Nein, Ausfall gab es bislang bei allen Panels noch nie...

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

                                      @egal

                                      das mit der Parmeterübergabe dynamisch getState() ist ja mal cool, damit geht dann ja auch >sowas bei Page-Grid/-Entities:

                                       <PageItem>{ id: "alias.0.NSPanel.Rollos.Büro", icon: "window-shutter", name: "Büro: " + >getState('alias.0.NSPanel.Rollos.Büro.ACTUAL').val + "%", ...
                                      

                                      funkt super, leider nur 1x nach Scriptstart (oder liegt das noch an der der Version 3.8.1)

                                      Wenn du magst kannst du das mal testen:

                                      Habe es etwas abgewandelt, damit das Script nicht bei jedem Item herumrechnen muss:

                                      In der function CreateEntity folgenden Part suchen:

                                                  // Fallback if no name is given
                                                  name = pageItem.name !== undefined ? pageItem.name : o.common.name.de;
                                      

                                      und durch den ersetzen:

                                                  // Fallback if no name is given
                                                  name = pageItem.name !== undefined ? pageItem.name : o.common.name.de;
                                                  
                                                  // If name is used with changing values and unit
                                                  if (name.indexOf('getState(') != -1) {
                                                      let prefix = pageItem.prefixName !== undefined ? pageItem.prefixName : '';
                                                      let suffix = pageItem.suffixName !== undefined ? pageItem.suffixName : '';
                                                      let dpName: string = name.slice(10, name.length -6);
                                                      name = getState(dpName).val;
                                                      name = prefix + name + suffix;
                                                      RegisterEntityWatcher(dpName);
                                                  }
                                      

                                      type PageItem wie folgt erweitern:

                                      type PageItem = {
                                          ...
                                          ...
                                          prefixName: (string | undefined),
                                          suffixName: (string | undefined),
                                      

                                      Jetzt kannst du ebenfalls folgende Situation zusammenbauen und die aktualisiert sich dann auch:

                                      • prefixName: 'Büro: '
                                      • name: Datenpunkt als String
                                      • suffixName: '%'

                                      Als PageItem also:

                                      <PageItem>{ id: 'alias.0.NSPanel.Rollos.Büro', icon: 'window-shutter', prefixName: 'Büro: ', name: "getState('alias.0.NSPanel.Rollos.Büro.ACTUAL').val", suffixName: '%', ...
                                      

                                      Dann sollte es gehen. Falls erfolgreich, bleibt es im Script...

                                      @mayan : sollte dann auch für deine Ferienkalender funktionieren...

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

                                        @armilar
                                        super, danke,
                                        funktioniert bisher sehr gut 👍

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

                                          @egal

                                          klasse, ich beschreibe das dann mal in der Wiki:

                                          Damit prefix und suffix auch für andere Aliase genutzt werden können, habe ich die nochmal aus der Bedingung heraus genommen:

                                                      // Fallback if no name is given
                                                      name = pageItem.name !== undefined ? pageItem.name : o.common.name.de;
                                                      let prefix = pageItem.prefixName !== undefined ? pageItem.prefixName : '';
                                                      let suffix = pageItem.suffixName !== undefined ? pageItem.suffixName : '';
                                          
                                                      // If name is used with changing values
                                                      if (name.indexOf('getState(') != -1) {
                                                          let dpName: string = name.slice(10, name.length -6);
                                                          name = getState(dpName).val;
                                                          RegisterEntityWatcher(dpName);
                                                      }
                                                      name = prefix + name + suffix;
                                          
                                          
                                          Armilar 1 Reply Last reply Reply Quote 1
                                          • Armilar
                                            Armilar Most Active Forum Testing @Armilar last edited by Armilar

                                            @greenman0702

                                            Habe eben deinen Post im Nirvarna der Anfragen gefunden und Antworte jetzt mal von hier 😉
                                            (ursprünglicher Post unter: https://forum.iobroker.net/topic/62448/fehlerhafte-seiten-im-nspanel)

                                            RPi4B, 4GB RAM
                                            iobroker admin v6.3.5
                                            Node.js: 16.19.0
                                            NPM 8.19.3
                                            Javascript Adapter 6.1.4
                                            MQTT 4.0.7
                                            Tasmota 12.3.1 (deutsche Version)
                                            Hallo zusammen!
                                            Ich habe hier im Forum bereits nach einschlägigen Begriffen gesucht, bin jedoch erfolglos geblieben. Wahrscheinlich ist mein Problem zu speziell. Die aus meiner Laiensicht wesentlichen Versionen / Eckdaten habe ich oben hinterlegt.
                                            Zum Problem:
                                            Ich habe das NSPanel nach Anleitung von Matthias Kleine (hausautomatiserung.com) eingerichtet.
                                            Nach anfänglicher Euphorie (der Screensaver funktioniert einwandfrei mit den vorgesehenen Wetterdaten) habe ich jedoch das Problem, dass die einzelnen Seiten fehlerhaft dargestellt werden (Siehe Foto).
                                            Im Erklärvideo lassen sich die verschiedenen Seiten auch ohne entsprechend verknüpfte Geräte durchblättern- soweit komme ich erst gar nicht.
                                            Ich vermute einen JavaScript-Fehler, kann aber andere Quellen auch nicht ausschließen.
                                            Es würde mich wirklich freuen, wenn ich einen kleinen Tipp bekommen könnte, woran es liegt.
                                            20230126_172441734_iOS.heic
                                            20230126_184843435_iOS.heic
                                            Beste Grüße vom Niederrhein,
                                            Fabian

                                            Zunächst ist es in der Tat sinnvoller die Bilder oder den Code direkt einzufügen. Aber das machen wir dann beim nächsten mal:

                                            Du hast den Link von Matthias für das "FlashNextion" benutzt. Der ist richtig und der ist falsch. Warum ist der "richtig"? Du hast in jedem Fall die brandneueste Version (Developer-Version) der HMI installiert (HMI 49). Warum ist die falsch? Das Script in der v3.8.3 ist auf die HMI 48 (aktuelle HMI Release stable) abgestimmt. In der Regel ist das nicht so problematisch. Es sind aber in fast jeder Seite (und dieses mal sogar im Screensaver) Änderungen in der Nextion HMI entstanden und die müssen auch im Script korrekt übersetzt werden.

                                            Also mit einfachen Worten. Wenn du ein:

                                            FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v3.8.3.tft
                                            

                                            durchführst, dann hast du das passende Script zur aktuellen HMI stable

                                            Dann sollte das Panel auch alles so anzeigen, wie es sein soll...

                                            LG
                                            Armilar

                                            Steht aber auch im Script-Header oder in der Wiki 😊

                                            Falls es dennoch Probleme geben sollte, dann einfach nochmal antworten (kein eigenes Thema aufmachen)

                                            EDIT:

                                            FlashNextion http://nspanel.pky.eu/lui.tft
                                            

                                            ist die aus dem Video von Matthias - und das ist die "falsche" Nextion-HMI Version

                                            EDIT2:
                                            Hier ist der Link zur ioBroker NSPanel Wiki:
                                            https://github.com/joBr99/nspanel-lovelace-ui/wiki
                                            Du findest im Forum Antworten, aber hier steht die Lösung...

                                            EDIT3:
                                            Bevor ich es vergesse.Herzlich willkommen bei den NSPanel'ern und viel Spaß mit deinem neuen Panel

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            876
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

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