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 @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
                                        • T
                                          TT-Tom last edited by TT-Tom

                                          @ticaki

                                          du kannst über den Wert(Icon) auf eine ThermoPage navigieren.

                                          <PageItem>{navigate: true, id: 'alias.0._von ThermoPage', targetPage: 'Name-thermoPage', useValue: true, fontSize: 1}
                                          

                                          Die Schrift über das Icon geht nicht einzustellen.

                                          PS: der offizielle Support Thread ist hier.
                                          https://forum.iobroker.net/topic/58170/sonoff-nspanel-mit-lovelace-ui/5000

                                          T 1 Reply Last reply Reply Quote 1
                                          • T
                                            ticaki Developer @TT-Tom last edited by

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

                                            https://forum.iobroker.net/topic/58170/sonoff-nspanel-mit-lovelace-ui/5000

                                            Danke, link ist gespeichert.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.1k
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            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