Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Alphatest NSPanel-lovelace-ui v0.1.1

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Alphatest NSPanel-lovelace-ui v0.1.1

    This topic has been deleted. Only users with topic management privileges can see it.
    • H
      Hansi1234 @Max_yeah last edited by

      @max_yeah kurz ot: z.B.?

      M 1 Reply Last reply Reply Quote 0
      • M
        Max_yeah @Hansi1234 last edited by Max_yeah

        @hansi1234 said in Alphatest NSPanel-lovelace-ui v0.1.1:

        @max_yeah kurz ot: z.B.?

        naja Geräte die ich im Haus habe (die zum Teil nicht smart sind) die ich dann damit steure oder deren Zustand anzeige. Aber auch Smarte Geräte die aktuell nur ich einstellen oder ablesen kann weil nur ich die App auf dem Handy hab. Zum Teil hat es auch nicht wirklich was mit dem Panel zu tun. Weil die Logic ja nicht auf dem Panel läuft. Das Panel dient dann nur als Anzeige oder als Alternative trigger methode zur Alexa.

        Hier ein paar Beispiele.


        Ein Beispiel ist, wir haben im Haus eine Lüftungsanlage. Die hatte bis zum Einzug nur einen Manuellen Drehschallter. Den hab ich dann erstmal gegen ein smart Relay getauscht. Das konnte ich dann schon über eine Alexa Routine steuern. War also noch relativ dumm. Jetzt dachte ich es wäre cool dafür auch so art Scenen zu erstellen. Das die Lüftung zb. Nachts im sommer bisschen mehr gas gibt um frische kühle luft ins Haus zu bringen, natürlich nur sofern die außen Temperatur < Innen Temperatur ist.
        Dafür bräuchte man erstmal das Panel nicht, jedoch wäre es eben auch für andere Hausbewohner außer mir interessant welche Scene gereade läuft und diese eventuell zu ändern.

        Anderes Beispiel ist, wir haben eine NAS für Datensicherungen. Diese geht aber automatisch in den Sleep Mode (ich will nicht das sie die ganze Zeit die Platten aktiv sind.
        Drum hab ich mir jetzt einen Button ins panel gemacht das einen WOL(Wake On Lan) Befehl sendet. Damit muss ich nicht extra ins Büro laufen wenn ich die NAS aufwecken will.

        Ich kann unseren Staubsauger Robotter, dessen App verküpung natürlich nur auf meinem Handy läuft, über das Panel starten. Das soll in zukunft noch ausgebaut werden, mit Werten über den Robbi sowie meldungen die er bringt bezüglich Verbrauchsgütern.
        Das würde zum Teil natürlich auch über die Alexa gehen. Jedoch will ich eig bisschen weg von der sprachsteuerung, zumindest solange sie noch so "Dumm" ist und nur feste befehle befolgen kann. Mit der neuen Alexa+ könnte sich das natürlich ändern. Der Punkt ist das wenn man nicht den genauen Sprachbefehl kennt, dann kann man es nicht steuern. Auf dem Panel kamm man einfach danach suchen.

        Die Anzeige der Solar Leistung ist warscheinlich üblich, die PowerCard liefert da einen super Überblick. Was in Zukunft dazu kommen soll, sobald wir ein eAuto haben, wird sein, das wir über das Panel steuern und einstellen können wann das Auto mit Solarstrom geladen werden soll. Und noch weiter wenn es mal soweit ist das man einen dynamischen Stromtarif hat.

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

          Kurz gemeldet

          ab 0.1.5:
          Wenn das Skript angepasst wird, muss zu jedem Bildschirmschonerelement noch die Eigenschaft type: "script" hinzugefügt werden.

          0.1.5 ist ein bissle buggy, nix wirklich schlimmes aber lohnt nicht sich die fehler anzugucken

          0.1.6 wird heute kommen und das ist dann schon deutlich besser

          Neuschwansteini 1 Reply Last reply Reply Quote 1
          • Neuschwansteini
            Neuschwansteini @ticaki last edited by

            @ticaki

            freut mich, dass ihr so dran bleibt!
            Bin mit meinem Testpanel wieder zurueck zum Script, mich hatte es ja erstmal nur interessiert, was muss ich am Panel aendern, was am iobroker..

            Dann warte ich mal, bis ein "feuer frei fuer Beta tests" kommt.. 🙂

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

              @neuschwansteini sagte in Alphatest NSPanel-lovelace-ui v0.1.1:

              Dann warte ich mal, bis ein "feuer frei fuer Beta tests" kommt.. 🙂

              Roadmap ohne Datum sieht so aus:

              0.2 Screensaver/cardGrid/cardEntities/Basisfunktionen laufen soweit und sind zum testen freigegeben
              0.3 cardMedia ist verfügbar
              0.4 alle cards sind verfügbar
              0.5 erweiterte Funktionen (tasmota updates und ähnliches sind drin)

              Kannst dann selbst entscheiden was du brauchst und wobei du dann helfen willst - aktuell ist der noch nix zum antesten. imho 🙂 Hab selbst nur ein unwichtiges Panel auf dem Adapter im produktiven Einsatz laufen.

              P 1 Reply Last reply Reply Quote 1
              • P
                patricknitsch @ticaki last edited by

                @ticaki Hi Ticaki,

                funktioniert denn die virtuelle Version über den Nextion Editor auch mit eurem Adapter? Würde ein normaler ESP32 Chip auch erkannt werden?

                Wäre ja zu Testzwecken auch interessant, da ich auch so mit dem Editor arbeite, um nicht ständig hinlaufen zu müssen.

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

                  @patricknitsch
                  Soweit ich weiß benutzt @Armilar das auf dem Emulator. Was nicht geht - man kann kein berry vom Adapter installieren lassen, soweit ich weiß ist das eine andere Version als die beim normalen NSpanel - Sind aber kaum richtige Bezeichnungen im Admin, nur Tokens für die Übersetzungen. Interner MQTT-Server ist gut getestet - aktuell nutzt das kaum wer mit einem Extern... Obwohl @TT-Tom hast du nicht einen externen am laufen?

                  Kurze Einrichtungsanleitung für ein normales NSPanel

                  Das hier sollte selbsterklärend sein - brokenCommen... bezieht sich auf info channels - da sind datenpunkte drunter die als common.type='state' haben - das ist natürlich vollkommen falsch - werden mit der option im ganzen alias.0 Datenzweig gefixt. Anschließend wird die option deaktiviert und der Adapter neugestartet.
                  Bildschirmfoto 2025-03-16 um 13.38.33.png

                  Dann das hinzufügen der Panels:
                  Bildschirmfoto 2025-03-16 um 13.41.37.png

                  -tasmotaIp: Die Ip des Gerätes das hinzugefügt/bearbeitet werden soll.
                  -tasmotaName: Name des Gerätes der an vielen Stellen zu finden ist.
                  -tasmotaTopic: Freiwählbarer kompletter Topic muss mit einem buchstaben anfangen - wenn da also 'a' steht, reicht das ist nur beim auseinanderhalten vielleicht nicht sinnvoll 🙂

                  Ist das ausgefüllt werden die Schaltflächen unten aktiv - TasmotaSendTo stellt das NSPanel auf die Werte im Adapter und für den Adapter ein - keine Nutzer eingabe auf dem NSPanel nötig, außer man will was spezielles

                  Diese Sachen werden geändert:

                  ` MqttHost ${obj.message.mqttServer ? obj.message.internalServerIp : obj.message.mqttIp};` +
                  ` MqttPort ${obj.message.mqttPort}; MqttUser ${obj.message.mqttUsername}; MqttPassword ${obj.message.mqttPassword};` +
                  ` FullTopic ${`${obj.message.tasmotaTopic}/%prefix%/`.replaceAll('//', '/')};` +
                  ` MqttRetry 10; FriendlyName1 ${obj.message.tasmotaName}; Hostname ${obj.message.tasmotaName.replaceAll(/[^a-zA-Z0-9_-]/g, '_')};` +
                  ` WebLog 2; template {"NAME":"${obj.message.tasmotaName}", "GPIO":[0,0,0,0,3872,0,0,0,0,0,32,0,0,0,0,225,0,480,224,1,0,0,0,33,0,0,0,0,0,0,0,0,0,0,4736,0],"FLAG":0,"BASE":1};` +
                  ` Module 0; MqttClient ${obj.message.tasmotaName.replaceAll(/[^a-zA-Z0-9_-]/g, '_')}%06X;` +
                  ` Restart 1`;
                  

                  Dann bitte 20 Sekunden warten - da muß ich noch ne "taasmota ist fertig" routine einbauen. Die das ganze blockiert bis er wieder da ist.

                  Falls offene Änderungen aus einem der anderen Tabs nicht gespeichert sind, jetzt speichern
                  Anschließend auf TasmotaAdd... klicken, das prüft ob der Tasmota über mqtt erreichbar ist und fügt ihn dann der oberen Tabelle hinzu - falls das geschieht, wird der browser neugeladen und der Tasmota ist eingetragen - alle nicht gespeicherten Änderungen gehen dabei aktuell verloren - deshalb speichern bevor du auf den Schalter drückst.


                  Damit installierst du das aktuelle Berryscript (nicht für Emulator)
                  Bildschirmfoto 2025-03-16 um 13.48.04.png


                  Hiermit wird die aktuell von uns freigegebene TFT Version auf dem Tasmota installiert
                  Bildschirmfoto 2025-03-16 um 13.48.51.png

                  Bei beiden letzteren gibt es keine "ist fertig" anzeige.

                  Noch fragen? Raus damit 🙂

                  EDIT: Ich erkläre das so ausführlich, weils jemand anderes benutzen soll, so das wir wissen das es funktioniert.

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

                    Zum Script - da bitte die Vorlage vergleich um die Unterschiede auszumachen, das ist noch lange nicht in der nähe von fertig.

                    Merkpunkte für das Skript:

                    Meine Panels die auf dem Adapter laufen, sind jetzt nach ca. 10 Minuten mit geringen umbauten (keine davon direkt an den Daten) betriebsbereit.

                    Eine Page muß main heißen!
                    Jede Page - muss einen uniqueName haben - jede Page muß entweder in pagesoder in subPages enthalten sein.
                    Jedes parent muß ein String sein - ich hab da einfach um die Variablen ' ' gemacht und die uniqueName sind ebenfalls die Variablen namen der Seite.
                    Jedes ScreensaverItem muß ein type: 'script', Property haben.
                    Für den Screensaver gibts jetzt noch die beiden Arrays:

                            favoritScreensaverEntity: [
                                {
                                    type: 'template',
                                    template: 'text.accuweather.favorit',
                                    dpInit: `/^accuweather\\.0.+/`,
                                    modeScr: 'favorit',
                    // dat hier müsste gehen, habs aber im Forum geschrieben keine garantie - hm kann sein das es nur mit type: 'native', naitve: { template: 'text.accu... usw... geht
                    //               data: {
                    //                  entity2: {
                    //                    value: { type: 'triggered', dp: 'meine.eigenen.temperaturen'}
                    //                  }
                    //               }
                    
                            ],
                            alternateScreensaverEntity: [
                                // only used with alternate Screensaver
                            ],
                    

                    button1 und button2 gibt es nicht mehr die heißen jetzt buttonLeft und buttonRight

                    Die Typendefinition sieht so aus:

                    export type ConfigButtonFunction =
                            | {
                                /**
                                 * Mode for navigating to a page.
                                 *
                                 */
                                mode: 'page';
                                /**
                                 * The page to navigate to.
                                 *
                                 * @optional
                                 */
                                page?: string;
                            }
                            | {
                                /**
                                 * Mode for toggling a datapoint.
                                 *
                                 */
                                mode: 'switch';
                                /**
                                 * The state of the datapoint to toggle.
                                 *
                                 */
                                state: string;
                            }
                            | {
                                /**
                                 * Mode for triggering a button datapoint.
                                 *
                                 */
                                mode: 'button';
                                /**
                                 * The state of the button datapoint to trigger.
                                 *
                                 */
                                state: string;
                            }
                            | null;
                    

                    Beispiel:

                    buttonLeft: {
                      mode: 'switch',
                      state: 'irgendeineidzueinemschalter'
                    }
                    

                    Edit: bei einigen Datenpunkten bekommt man eine Hilfe wenn man mit der Maus darüber hovert. Werden immer mehr werden.

                    1 Reply Last reply Reply Quote 0
                    • P
                      patricknitsch @ticaki last edited by patricknitsch

                      @ticaki Wollte es gerade mit der Version 0.1.8 ausprobieren. Ich kann aber im Feld "MQTT-Topic" nichts eingeben.

                      8af3432a-2266-48d8-9a77-842f63cbf2d4-image.png

                      Ebenso habe ich die Felder darunter ausgefüllt. Die Buttons werden aber nicht aktiviert. Oder passiert das nur, wenn das Gerät schon hinzugefügt wurde?

                      a87d5569-11c6-46ab-851f-28f581105015-image.png

                      Edit: Der erste Versuch war mit dem Safari Browser. In Chrome kann das Feld zwar ausgewählt werden, eine Eingabe ist aber auch da nicht möglich.

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

                        @patricknitsch bitte von GitHub installieren da sind heute noch wichtige fehlerbehebungen eingeflossen. Der Adapter muss aktiviert sein und laufen.

                        P 1 Reply Last reply Reply Quote 0
                        • P
                          patricknitsch @ticaki last edited by

                          @ticaki Der Adapter läuft. Hab die aktuellste Version von Github gezogen. Ich kann trotzdem nichts bei MQTT Topic eintragen

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

                            @patricknitsch
                            Ok sprichst von der Tabelle? Die ist nicht zum editieren gedacht das geht alles über die Button damit die Button aktive werden muss eine ip die aus 1-3Zahlen getrennt mit einem Punkt besteht 4 nummernblöcke 3 punkte, dort eingetragen wird, Name darf nicht leer sein und topic muss… oh weiß ich nicht ganz genau aber denke alphanumerisch -_/ und die Zeichen muss mit einem Buchstaben anfangen weiß aber net ob ich vielleicht nur kleine erlaubt habe…

                            Sind die Bedingungen erfüllt werden die Buttons aktiv, hab heute mit der aktuellen GitHub Version bei mir ein Panel eingerichtet kann später mal rein gucken

                            P 1 Reply Last reply Reply Quote 0
                            • P
                              patricknitsch @ticaki last edited by

                              @ticaki Ich kann hier bei MQTT Topic nichts eintragen und somit kein Panel hinzufügen.

                              1aecd465-ee55-43d1-8e0b-b691158a49dd-image.png

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

                                @patricknitsch

                                Die Tabelle ist nicht zum eintragen von Geräten gedacht… hab das 2 mal geschrieben

                                P 1 Reply Last reply Reply Quote 0
                                • P
                                  patricknitsch @ticaki last edited by patricknitsch

                                  @ticaki Ok. Ich musste zusätzlich noch das Tasmota Tool anwählen und die IP Adresse auswählen. Dann hat es auch funktioniert. Jetzt wurde das Geräte oben übernommen. Danke 🙂

                                  Edit: Die Geräte wurden übernommen, das senden an das Gerät funktioniert aber nicht. Ich bekomme immer wieder "sendToRequestFail". Mit falschen Gerätedaten dürfte er das Gerät gar nicht erst hinzufügen?

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

                                    @patricknitsch

                                    Bei den esp32 ohne panel bin ich da ein bissle überfragt - Für das hinzufügen ist nötig das der Tasmota auf eine Status0 Anfragen über MQTT unter anderem mit der MAC Adresse antwortet.

                                    Zu dem 2. Punkt - Ich habe heute erst eingebaut das er guckt ob der Tasmota da ist oder einen Fehler zurück gibt... ist wohl die Zeit zu kurz eingestellt. Sry hatte das nicht getestet, hab nicht damit gerechnet das es jemand installiert 🙂

                                    Dat ist noch garnet hochgeladen... geht aber 😄

                                    Mit Senden meinst du die restlichen Funktionen? Hab nachgesehen, da müsste eine Fehlermeldung zu im Log stehen, die benötige ich. Wenn das was mit timeout zu tun hat, ist der Tasmota über die IP nicht zu erreichen, könnte sein das er noch im Restart ist.

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

                                      @patricknitsch

                                      ich teste das mal die Tage in meinem System. melde ich dann

                                      1 Reply Last reply Reply Quote 0
                                      • P
                                        patricknitsch @ticaki last edited by

                                        @ticaki ich probiere halt bissl aus. Die Ideen mit der automatischen Configuration sind schon nice 🙂

                                        Hier der Fehler, der bei mir im Log auftaucht.

                                        Error: AxiosError: Request failed with status code 401

                                        Die Tasmota Struktur für das Gerät sollte dann ja im Adapter Ordner sein? Hier wurde nämlich gar nix angelegt.

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

                                          @patricknitsch sagte in Alphatest NSPanel-lovelace-ui v0.1.1:

                                          401

                                          Ah ok du hast ein admin Nutzer und passwort im Tasmota eingerichten. Das wird noch nicht unterstützt - kannst es gerne auf github requesten, wollte ich schon einbauen. Vergesse es aber immer wieder.

                                          Desweiteren werden die States erst erzeugt wenn die Konfiguration gefunden wurde und das Panel auf den startup reagiert hat - das ist noch von vorher so, wo ich die MAC-Adresse erst im Startup erfahren hatte. Das werde ich noch umschreiben, das die States deutlich früher erzeugt werden, nur ohne Konfiguration gibts niemals States. In der Adapterlogik selbst werden die States von dem Objekt Panel erzeugt und das wird nur erstelllt, wenn eine halbwegs valide Konfiguration vorliegt. 🙂

                                          P 1 Reply Last reply Reply Quote 0
                                          • P
                                            patricknitsch @ticaki last edited by

                                            @ticaki Ohne Nutzer klappt das auch schon ganz gut. Er passt die Werte in Tasmota an und sendet auch. Den Stammbaum legt er anschließend auch an. Was noch auffällig ist, das Script wird gestartet, zeigt auch keinen Fehler an und anschließend sofort wieder gestoppt. Fehler habe ich keine gefunden, wird auch nichts angemeckert.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            816
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            6
                                            54
                                            2681
                                            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