Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. NSPanel SONOFF Typescript schleift (TFT Firmware)-(erledigt)

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    NSPanel SONOFF Typescript schleift (TFT Firmware)-(erledigt)

    This topic has been deleted. Only users with topic management privileges can see it.
    • C
      CäptnBlaubär last edited by CäptnBlaubär

      Nach mehrfachen Durchspielen des NSPanel flash/updatevorgangs,
      nach den vorliegenden Anleitungen,
      bleibt bei Ausführung des TypeScript v4.3.3.25 zur Steuerung des SONOFF NSPanel mit dem ioBroker
      die Ausführung des Script in sich immer wiederholenden INFO Zeilen:
      javascript.0 (3264) script.js.VIS.NSPanel.Buero: Desired TFT Firmware: 53 / v4.3.3
      javascript.0 (3264) script.js.VIS.NSPanel.Buero: Installed TFT Firmware: 53 / v4.3.3
      hängen.
      MQTT-Port-check meldet ok, Adapter-Instance meldet den eingestellten Port
      die in dem Script vorausgesetzten Versionen TFT 53 / v4.3.3 / BerryDriver 9 / Tasmota 13.3.0
      werden in den Datenpunkten bestätigt.
      Das NSPanel selbst zeigt immer noch die 'Waiting for Content'.
      Vielleicht gibt's ja eine Idee zum Fest, wie ich den Knoten lösen kann.
      Für Anregungen, Lösungsvorschläge schon mal vielen Dank im Voraus.

      Armilar 1 Reply Last reply Reply Quote 1
      • Armilar
        Armilar Most Active Forum Testing @CäptnBlaubär last edited by Armilar

        @cäptnblaubär

        Ohne das ich nun weitere Infos bekommen habe, tippe ich auf den CustomSend, der vom MQTT-Broker nicht abonniert wurde.

        https://github.com/joBr99/nspanel-lovelace-ui/wiki/NSPanel-Starthilfe-FAQ#waiting-for-content---es-geht-nicht-weiter

        Ich würde zunächst mal wie folgt loslegen:

        • Check den MQTT-Adapter: "Nur bei Änderungen publizieren" darf nicht gesetzt sein

        • Check die folgenden Parameter, ob sie auch wirklich inkl. Pfad so heißen wie im MQTT-Adapter:
          ccd4f3de-770c-4da6-8fdc-240fc828f28f-image.png

        • Nutze die Variante 3 (MQTT-Explorer) zum Anlegen des CustomSend in der Basis-Anleitung

        C 1 Reply Last reply Reply Quote 1
        • C
          CäptnBlaubär @Armilar last edited by CäptnBlaubär

          @armilar
          Danke der schnellen Reaktion.
          Leider bringen alle 3 'CustomSend' Anlegevarianten nicht das erwartete Ergebnis.
          Habe extra für deas NSPanel eine eigene mqtt-Instanz angelegt, in welcher genau die Angabe wie im Leitfaden gemacht wurden.
          Um vielleicht die Ursachenforschung zu erleichtern:NSPanelBuero.jpg MQTT Explorer.jpg

          sowie die Meldungen der Tasmota-Console bei CustomSend-Variante 2:

          18:06:36.590 CMD: CustomSend time~12:00
          18:06:36.613 MQT: SmartHome/NSPanelBuero/stat/RESULT = {"CustomSend":"Done"}
          18:06:37.047 MQT: SmartHome/NSPanelBuero/tele/RESULT = {"CustomRecv":"event,startup,53,eu"}
          18:06:43.042 MQT: SmartHome/NSPanelBuero/tele/RESULT = {"CustomRecv":"event,startup,53,eu"}
          18:06:48.941 MQT: SmartHome/NSPanelBuero/tele/RESULT = {"CustomRecv":"event,startup,53,eu"}
          18:06:49.887 MQT: SmartHome/NSPanelBuero/tele/STATE = {"Time":"2023-12-26T18:06:49","Uptime":"0T00:05:11","UptimeSec":311,"Heap":132,"SleepMode":"Dynamic","Sleep":0,"LoadAvg":999,"MqttCount":1,"Berry":{"HeapUsed":16,"Objects":219},"POWER1":"OFF","POWER2":"OFF","Wifi":{"AP":1,"SSId":"WLANDaheim","BSSId":"3C:37:12:29:23:38","Channel":1,"Mode":"11n","RSSI":64,"Signal":-68,"LinkCount":1,"Downtime":"0T00:00:05"}}
          18:06:49.934 MQT: SmartHome/NSPanelBuero/tele/SENSOR = {"Time":"2023-12-26T18:06:49","ANALOG":{"Temperature1":22.5},"ESP32":{"Temperature":53.3},"TempUnit":"C"}
          18:06:54.941 MQT: SmartHome/NSPanelBuero/tele/RESULT = {"CustomRecv":"event,startup,53,eu"}
          18:07:00.841 MQT: SmartHome/NSPanelBuero/tele/RESULT = {"CustomRecv":"event,startup,53,eu"}

          Falls noch mehr Infos hilfreich wären, bitte kurz nennen was relevant wäre.
          Vielen Dank im Voraus.
          VG

          Armilar T 2 Replies Last reply Reply Quote 0
          • Armilar
            Armilar Most Active Forum Testing @CäptnBlaubär last edited by

            @cäptnblaubär

            Dann zeige bitte mal die Datenpunkte aus der MQTT-Instanz

            • tele-, stat- und cmnd-Objekte unter mqtt.X
            • Screenshots deiner MQTT-Instanz

            Du brauchst lokale IP-Adressen nicht maskieren. Solange du hier keine WAN-IP mit Zugangsdaten deines Routers reinschreibest, wird wohl keiner etwas mit der IP des NSPanels oder deines ioBroker's etwas anfangen können...

            C 1 Reply Last reply Reply Quote 0
            • T
              ticaki Developer @CäptnBlaubär last edited by

              @cäptnblaubär
              Hab das ebenfalls vor 2 Tagen eingerichtet(und geht nach anfänglichen dummen Fehlern :)). Hast du den Pfad im Skript auf die entsprechende mqtt instanze angepasst? Wird auf dem nspanel, wait for content angezeigt? Bei mir war der große Fehler - das ich ganz oben im mqtt Adapter noch iobroker als prefix stehen hatte.

              1 Reply Last reply Reply Quote 2
              • C
                CäptnBlaubär @Armilar last edited by

                @armilar
                hoffe ich habe es richtig verstanden:
                NSPanel-ts-Script.jpg mqtt.1.jpg mqtt.1.Datenpunkte.jpg

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

                  @cäptnblaubär

                  Setzte mal im MQTT Adapter die IP auf. 0.0.0.0

                  Und dann versuche den CustomSend anzulegen.

                  C 1 Reply Last reply Reply Quote 1
                  • C
                    CäptnBlaubär @TT-Tom last edited by CäptnBlaubär

                    @tt-tom
                    CustomSend hat nun geklappt, jedoch im TS-Script keine Verbesserung und auch nicht auf der NSPanel-Anzeige (waiting for Content)
                    mqtt Explorer2.jpg LOG-TS-Script.jpg

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

                      @cäptnblaubär
                      Von Codezeilen oder Meldungen aus dem Log bitte keine Screenshot machen, sondern kopieren und in die Codetags </> einfügen. Lässt sich besser lesen und mit arbeiten.

                      Hast du für die Tasmota Oberfläche ein Passwort vergeben?!

                      Ist der CustomSend auch im Broker angekommen??

                      Edit: nochmal zum MQTT Adapter in den MQTT Einstellungen steht bei dir mqtt.1 das muss mqtt.1.* sein. Habe ich jetzt erst erkannt.

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

                        @tt-tom sagte in NSPanel SONOFF Typescript schleift (TFT Firmware):

                        mqtt.1.*

                        Gutes Auge 😊

                        d57e5538-b6d6-4d66-832d-8e0ba90b7cf2-image.png

                        muss natürlich mqtt.1.* sein.

                        C 1 Reply Last reply Reply Quote 0
                        • C
                          CäptnBlaubär @Armilar last edited by

                          @armilar
                          juhu - was so ein kleiner stern doch bewirkt- passt ja auch zu Weihnachten.
                          Danke an alle Beteiligten-hatte die Hoffnung das hinzukriegen schon fast aufgegeben.

                          Noch eine letzte Frage zum Verständnis des Ganzen:
                          Habe von den NSPanelen 2 Stk.
                          Läßt sich über Backups das 1. Panel auf das 2. klonen-natürlich mit anschliessener Anpassung von IP,mqtt, 2. ts-script
                          oder muss ich das flash-Verfahren, tasmota, berry, etc nochmal durchziehen ?

                          VG und ein angenehmes Restjahr

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

                            @cäptnblaubär

                            Tasmota ließe sich über Backup klonen, jedoch muss es ja initial geflashed werden. Den Berry-Treiber und das FlashNextion bekommst du damit ebenfalls nicht.

                            Ich denke mal, jetzt wo der mqtt.1. funktioniert, dürfte das ein Kinderspiel werden...

                            • Tasmota Flashen und konfigurieren,
                            • Berry-Driver installieren
                            • Panel-Flashen
                            • Script klonen und Parameter anpassen

                            Dann sollte es schon unter der gleichen mqtt.1.-Instanz und unter der geleichen JS-Adapter-Instanz laufen. Ich mache das ganze mittlerweile komplett in weniger als 10 Minuten 😊

                            Du kannst das gleiche Script benutzen, hast aber dann natürlich andere Kommunikationsstrings und der NSPanel_Path muss natürlich ebenfalls angepasst werden.

                            Viel Spaß noch mit den NSPaneln...
                            ... und Fragen gerne im Support-Thread unter:
                            https://forum.iobroker.net/topic/58170/sonoff-nspanel-mit-lovelace-ui/5000
                            stellen

                            VG

                            C 1 Reply Last reply Reply Quote 0
                            • C
                              CäptnBlaubär @Armilar last edited by

                              @armilar
                              Schade-wo es doch immer heisst: Kein Backup-kein Mitleid.
                              Ein Komplettbackup des Panels ist dann somit nicht möglich.

                              Liesse sich denn eine Screen-Konfiguration übertragen.
                              Fang erst an mich da rein zu granulieren.
                              Gibt's eventuell einen Leitfaden zum längshangeln ?
                              VG

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

                                @cäptnblaubär

                                Ja du kannst auch das gleiche Script auf zwei Paneln betreiben... Muss halt nur das NSPanelTs.ts Script geklont werden...

                                • Und nein, FlashNextion kannst du jederzeit oder bei Bedarf durchführen
                                • Berry ebenfalls
                                • Für Tasmota lässt sich ja ein Backup machen

                                Ich wüsste auch nicht, wofür Backups von TFT und Berry gut wären. Ändern sich zwar nicht permanent, jedoch sind die mit 2 Befehlen in kürzester Zeit auf dem NSPanel... Dein Backup ist quasi Github...

                                Alles was du zur Konfiguration der Navigation, Screensaver, Cards, Aliase, PageItems benötigst ist alles in der sehr umfangreichen Wiki enthalten:
                                https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                EDIT: Ich denke das 2. Panel wird sehr viel schneller laufen...

                                C 1 Reply Last reply Reply Quote 0
                                • C
                                  CäptnBlaubär @Armilar last edited by

                                  @armilar
                                  Alles bis hierhin soweit verstanden und Danke nochmal für den feiertäglichen Einsatz.

                                  War halt nur so eine Idee mit dem Backup, wenn mann sich mal verbastelt hat,
                                  um wieder auf den Ursprung aufzusetzen.
                                  Dann eben halt so, wie von Dir beschrieben.

                                  Ein friedliches Restjahr, Guten Rutsch 🎉
                                  und VG

                                  Armilar 1 Reply Last reply Reply Quote 1
                                  • Armilar
                                    Armilar Most Active Forum Testing @CäptnBlaubär last edited by

                                    @cäptnblaubär

                                    Das verbasteln kann eigentlich nur im NSPanelTs.ts passieren. Ich habe dafür im JS-Script Adapter einen Archiv-Ordner. Neue Dinge werden bei mir immer in einem Script-Klon erweitert.

                                    Könnte also bei Bedarf sogar bis zur Version 2.9.0 zurück. Ich hänge immer die aktuelle Versionsnummer an den Script-Namen

                                    Ebenfalls noch viel Spaß beim Basteln, und einen guten Rutsch

                                    VG
                                    Armilar

                                    T 1 Reply Last reply Reply Quote 0
                                    • T
                                      ticaki Developer @Armilar last edited by

                                      @armilar

                                      Eine Frage, wollte mir mal eine page erstellen, die bleibt aber bis auf die Überschrift leer: Aliase sind erstellt mit ACTUAL und SET beides common.type = 'number'

                                      code in Auszügen:

                                       pages: [
                                              SensorGrid,
                                              NSPanel_Service, //Auto-Alias Service Page       
                                              //Unlock_Service            //Auto-Alias Service Page (Service Pages used with cardUnlock)
                                          ],
                                      
                                      let SensorGrid = <PageGrid>{
                                          'type': 'cardGrid',
                                          'heading': 'Temperatur Innen',
                                          'useColor': true,
                                          'items': [
                                              <PageItem>{ id: 'alias.0.NSPanel.1.System.Temperatur.Wohnzimmer', name: 'Wohnz', offColor: MSRed, onColor: MSGreen, useValue: true, colorScale: {'val_min': -20, 'val_max': 40, 'val_best': 22} },
                                              <PageItem>{ id: 'alias.0.NSPanel.1.System.Temperatur.Kueche', name: 'Küche', offColor: MSYellow, onColor: MSYellow , useValue: true, colorScale: {'val_min': -20, 'val_max': 40, 'val_best': 22} },
                                              <PageItem>{ id: 'alias.0.NSPanel.1.System.Temperatur.Bad', name: 'Bad', offColor: MSRed, onColor: MSGreen, useValue: true, colorScale: {'val_min': -20, 'val_max': 40, 'val_best': 22} },
                                              <PageItem>{ id: 'alias.0.NSPanel.1.System.Temperatur.Sarah', name: 'Sarah', offColor: White , onColor: White, useValue: true, colorScale: {'val_min': -20, 'val_max': 40, 'val_best': 22} },
                                              <PageItem>{ id: 'alias.0.NSPanel.1.System.Temperatur.Schlafzimmer', name: 'Schlafz', offColor: White , onColor: White, useValue: true, colorScale: {'val_min': -20, 'val_max': 40, 'val_best': 19} },
                                              <PageItem>{ id: 'alias.0.NSPanel.1.System.Temperatur.Ankleidezimmer', name: 'Ankleid', offColor: White , onColor: White, useValue: true, colorScale: {'val_min': -20, 'val_max': 40, 'val_best': 20} },
                                          ]};
                                      

                                      Muß ich da vielleicht eine Seite vorschalten? Die Wiki ist recht umfangreich, wenn ich es überlesen habe, entschuldige bitte.

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

                                        @ticaki

                                        Alles gut. Ich denke es liegt bei leeren Seiten eher an der Art wie der Alias erstellt wird.

                                        Ich denke mal die sind 1:1 auf einem Datenpunkt ohne Channel.

                                        Wir kommunizieren grundsätzlich über einen Channel und damit ziehen wir die Logik eines Steuerelementes passend zum Device

                                        b14861bb-945a-4a7c-b8af-03a9fd78a4bc-image.png

                                        wie hier im switch die common.role des Objektes. Darüber wird es dann z.B. das Steuerelement socket, light, info, lock, etc. instanziert und mit Daten gefüttert. (hole etwas aus, da ich weiß das auf der anderen Seite ein Entwickler sitzt)

                                        Wenn der Alias keinen Channel besitzt oder den entsprechenden Aufbau, dann folgt in der function CreateEntity ein "delete" und das Steuerelement wird nicht instanziert.

                                        Am Besten kurz bei der Erstellung der Aliase folgende Seite beachten:
                                        https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-ALIAS-Definitionen
                                        und
                                        https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-ALIAS-Table

                                        hier nochmal eine kurze Übersicht, mit ein paar aufgeklappten Channels
                                        deccb218-8f1b-4d47-8fb2-ac6ea62ca2ee-image.png

                                        T 2 Replies Last reply Reply Quote 0
                                        • T
                                          ticaki Developer @Armilar last edited by

                                          @armilar

                                          Danke, deine Ausführungen + Code haben es gelöst. 👍

                                          Ich hatte die role den States und nicht dem darüber liegenden Folder gegeben. Hab type auf channel geändert und role auf value.temperature und es geht.

                                          1 Reply Last reply Reply Quote 1
                                          • T
                                            ticaki Developer @Armilar last edited by ticaki

                                            @armilar
                                            Was ich vor hatte scheint nicht zu funktionieren und bevor ich weiter versuche frage ich lieber.

                                            IMG_0238.jpeg

                                            Ich wollte eine Seite hinterlegen, die beim klicken auf die Temperaturen die entsprechende Einstellung dazu öffnen. Das scheint nicht zu gehen, gibt dazu auch kein Beispiel und popup gibts lt. Code nicht für thermostat.

                                            Und noch zusätzlich kann ich die kleine Schrift nach oben bekommen. Also das die Beschreibung oberhalb des Wertes steht nicht unterhalb?

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            999
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            blockly javascript template
                                            4
                                            23
                                            1267
                                            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