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 goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

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

              Woher nimmt der Screensaver die Uhrzeit? Ich bin gestern vom Raspi auf Proxmox umgezogen, seit dem stimmt die Uhrzeit im Display nicht mehr. In der Console wird die richtige Uhrzeit angezeigt.

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

                @wuschl

                Guten Morgen. Vielleicht hilft dir das weiter

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

                  @tt-tom Das hatte ich schon gelesen, aber brachte bei mir keine Änderung. Das komische ist, es stimmt die Uhrzeit eigentlich überall, nur im iobroker werden mir 2 verschiedene angezeigt.

                  	2023-01-28 09:05:03.119	info	Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason
                  dwd.0
                  	2023-01-28 09:05:00.730	info	starting. Version 2.8.3 (non-npm: ioBroker/ioBroker.dwd#643a61b0ad0598752280ac84a9ea9886ae699440) in /opt/iobroker/node_modules/iobroker.dwd, node: v16.19.0, js-controller: 4.0.24
                  host.IOBroker
                  	2023-01-28 09:05:00.068	info	instance system.adapter.dwd.0 started with pid 2237
                  admin.0
                  	2023-01-28 08:04:48.445	info	<== Disconnect system.user.admin from ::ffff:192.168.178.50
                  host.IOBroker
                  	2023-01-28 08:04:43.443	info	Updating repository "stable" under "http://download.iobroker.net/sources-dist.json"
                  admin.0
                  	2023-01-28 08:04:41.681	info	==> Connected system.user.admin from ::ffff:192.168.178.50
                  

                  die Zeit springt von 8:04 auf 9:05

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

                    @wuschl

                    Stimmt die Zeitzone/astro Einstellung im Iobroker,
                    So etwas, dass die Zeit springt, habe ich noch nicht gesehen.

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

                      @tt-tom stimmt alles, es wird mir überall die richtige Zeit angezeigt. Nur in Protokoll passiert dann das. Ich denke ich werde es nochmal neu installieren, da die Vis auch nicht funktioniert nach dem Backup.

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

                        @wuschl

                        Woher nimmt der Screensaver die Uhrzeit? Ich bin gestern vom Raspi auf Proxmox umgezogen, seit dem stimmt die Uhrzeit im Display nicht mehr. In der Console wird die richtige Uhrzeit angezeigt.

                        Aus dem System, auf dem der ioBroker läuft. Wenn es also ohne Virtualisierung (VM/Docker) läuft, dann direkt aus dem Betriebssystem (In deinem Fall dann RaspiOS) des Servers. Wenn jetzt ein Proxmox als VM installiert ist, dann dürfte die Zeiteinstellung der VM wohl der Übeltäter sein. Sollte die Suche einschränken...

                        Da ich aber kein Proxmox einsetzte, kann ich dich dabei leider nicht unterstützen...

                        Sieht für mich aber nach einem Zeitzonen-Problem aus.

                        Kleiner Tipp:
                        0a2961d0-5ba5-40a7-bdc9-8434676fc268-image.png
                        Das muss ebenfalls die korrekte Uhrzeit anzeigen, denn nichts anderes wird im Script genutzt.

                        <xml xmlns="https://developers.google.com/blockly/xml">
                          <block type="schedule" id="6Yu`)QwfE4qpNfmr268P" x="87" y="37">
                            <field name="SCHEDULE">* * * * * *</field>
                            <statement name="STATEMENT">
                              <block type="debug" id="l?5O/}11]yr#/m#;`2FP">
                                <field name="Severity">log</field>
                                <value name="TEXT">
                                  <shadow type="text" id=";K3bqfLSLWG6r5B(k/C{">
                                    <field name="TEXT">test</field>
                                  </shadow>
                                  <block type="time_get" id="(NH7-ko5K-Lstw6QrhtK">
                                    <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                    <field name="OPTION">hh:mm:ss.sss</field>
                                  </block>
                                </value>
                              </block>
                            </statement>
                          </block>
                        </xml>
                        
                        1 Reply Last reply Reply Quote 0
                        • Armilar
                          Armilar Most Active Forum Testing @Wuschl last edited by

                          @wuschl

                          stimmt alles, es wird mir überall die richtige Zeit angezeigt. Nur in Protokoll passiert dann das. Ich denke ich werde es nochmal neu installieren, da die Vis auch nicht funktioniert nach dem Backup.

                          vielleicht hilft das?. Eine Neuinstallation wird sicher das gleiche Ergebnis bringen:

                          https://www.eidenschink.eu/2014/05/uhrzeit-und-zeitzone-proxmox-ubuntu-container-setzen.html

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

                            @armilar Danke, wir sind schon auf dem richtigen Weg. Der Server hat die richtige Uhrzeit, die Container leider die falsche, aber die Zeitzone scheint zu stimmen.

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

                              @wuschl

                              Dann korrigiere die Zeit des Containers oder lasse das den NTP-Server machen. Also Europe/Berlin sollte zumindest die Zeitzone des Containers sein...

                              EDIT: und mache nach den Änderungen zwischendurch einen Neustart. Hat oft auch schon an diesen Kleinigkeiten gehangen.

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

                                @armilar "sudo timedatectl set-timezone Europe/Berlin" das hat funktioniert. Danke

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

                                  @wuschl

                                  "sudo timedatectl set-timezone Europe/Zurich" das hat funktioniert. Danke

                                  Gerne. Sind oft nur Kleinigkeiten 😊 Aber an die Schweiz hatte ich nun auch nicht gedacht 😉

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

                                    @jobr99
                                    "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."

                                    Kann ich mit einem Console-Befehl sehen, ob der Treiber drin ist ?
                                    Ich habe DS18Alias probiert und als Ergebnis dies erhalten

                                    SmartHome/Wohn/stat/RESULT = {"Command":"Unknown"}
                                    

                                    Auch sehe ich auf dem Scope keine Aktivitäten auf dem Data Kanal.
                                    Auch nicht mit dem 'normalen' Tasmota oder dem NSPanel Tasmota.

                                    VG Werner

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

                                      @gargano

                                      Wenn der ds18x20 korrekt am ausgewählten GPIO angeschlossen ist, dann sollte bereits in der Tasmota-Hauptseite der Sensorwert auftauchen.
                                      089f22f5-be28-430c-a3ef-22cc12c5e8ad-image.png
                                      Wenn er da nicht auftaucht, dann kann am MQTT auch nichts ankommen

                                      An welchem GPIO ist denn der Temperatursensor angelötet?
                                      9a9dc1d9-05af-4a0b-8737-67c94b075a41-image.png

                                      GPIO23 wäre doch eigentlich noch frei?

                                      bbab3a74-b085-410c-83bf-699c01e1d893-image.png

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

                                        @armilar sagte in SONOFF NSPanel mit Lovelace UI:

                                        An welchem GPIO ist denn der Temperatursensor angelötet?

                                        Am GPIO38, da wo sonst der NTC ist.

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

                                          @gargano

                                          3e303a00-e92f-40d1-b49f-9f2853a2ce7d-image.png

                                          Und da hast du jetzt den DS18x20 zugewiesen?

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

                                            @armilar Ja, Dazu die Schaltung verändert, also den Kondensator vom Low pass Filter rausgelötet (bis SMD 0201 Baugröße kann ich noch löten) und einen Draht von Data des DS18B20 an den Widerstand gelötet, der direkt zum Pin des ESP32 geht.
                                            Das Scope zeigt auch 3,3 V an, aber kein Traffic.

                                            349f6027-29ba-48fe-af04-9a3ede7b1d39-image.png

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            743
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

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