Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Betatest NSPanel-lovelace-ui v0.7.x

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.2k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.3k

Betatest NSPanel-lovelace-ui v0.7.x

Geplant Angeheftet Gesperrt Verschoben Tester
705 Beiträge 26 Kommentatoren 123.8k Aufrufe 29 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • bembelstemmerB Offline
    bembelstemmerB Offline
    bembelstemmer
    schrieb am zuletzt editiert von
    #693

    Hi, ich bin heute endlich mal ein paar Minuten zum weiter machen gekommen.

    Ich habe mal die ersten drei Themen gesammelt als Fragen und Feedback.


    Leider habe ich hier im Forum nichts dazu gefunden aber irgenwie scheitere ich gerade an den aller einfachsten Dingen. peinlich
    Ich wollte als ersten Test einfach nur einen Schalter auf die Hauptseite cardGrid legen.
    Aber egal welche Rolle der Datenpunkt hat, das Script gibt mir immer aus "Channel role ... not supported".
    Laut Doku bedeutet das ja, dass es nicht implementiert werden soll.

        const Hauptseite: ScriptConfig.PageGrid = {
            type: 'cardGrid',
            uniqueName: 'main',
            heading: 'Menü',
            items: [
                { id: '0_userdata.0.testswitch', icon: 'power' },
            ]
        };
    

    Der State ist boolean und ich habe state und switch mit den Untertypen ausprobiert. Ein Button hilft mir nicht, da es toggeln soll.

    Ich schätze mal, ich hab nur einfach irgendwas noch nicht richtig verstanden.


    Und noch eine zweite Frage bzw. Vorschlag: Bei der klassischen Script Variante wurde das Wetter aus einem Alias gezogen. Das hatte den Vorteil, dass ich die aktuelle Temperatur die z.B. der Screensaver beim Wettericon angezeigt wurde einfach auf mein richtiges Außenthermometer umbiegen konnte.
    Jetzt, wo direkt der Wetteradapter angegeben ist habe ich noch nicht gesehen dass das aktuell möglich ist außer wenn ich mir einen fake-proxy für z.b. den pirate-weather baue.
    Wäre das was für die Zukunft, denn den geschätzen Wert brauche ich ja nicht wenn ich auf einem zusätzlichen Icon dann noch den echten Wert anzeige.


    Thema Nr. 3 betrifft die MQTT Settings die automatisch konfiguriert werden.
    Wenn man "wie früher" die Rule2 konfiguriert um die Tasten von den Relais zu entkoppeln, wird im MQTT Pfad der Rule %topic% verwendet.
    Aktuell wird (bzw. wurde bei mir durch die Initialisierung) nichts für den %topic% Wert konfiguriert. Default ist dann "Tasmota_XXXX".
    Dadurch schickt der Panel dann den Tastendruck ohne Fehler an die falsche Stelle und nichts passiert.
    Nachdem ich das %topic% dann auf den Panelnamen gesetzt hatte, ging dann alles perfekt.


    Ansonsten vielen Dank für die ganze Arbeit, die Performance macht echt nen richtig guten Eindruck bisher.

    T T 2 Antworten Letzte Antwort
    0
    • teletapiT Online
      teletapiT Online
      teletapi
      schrieb am zuletzt editiert von teletapi
      #694

      Also Rule2 müsste bei mir off sein. Das entkopplen kannst du im Menue am NSPanel selbst machen. Service Menue, Relais, beide auf decoupled stellen.
      Sieht im script dann so aus:

      //-------DE: Anfang Einstellungen für Hardware Button, wenn Sie softwareseitig genutzt werden (Rule2) -------------
              //-------EN: Start Settings for Hardware Button, if used in software (Rule2) --------------------------------------
              // DE: Konfiguration des linken Schalters des NSPanels
              // EN: Configuration of the left switch of the NSPanel
              buttonLeft: {
              mode: 'switch',
              state: 'alias.0.Flur.Flur_unten_Haustuer.ON' // Datenpunkt vom Type boolean z.B. ein Schalter 
          },
      
          
      
              // DE: Konfiguration des rechten Schalters des NSPanels
              // EN: Configuration of the right switch of the NSPanel
              buttonRight: {
          mode: 'switch',
          state: 'alias.0.Flur.Flur_Mitte.ON' // Datenpunkt vom Type boolean z.B. ein Schalter 
          },
      
              //--------- DE: Ende - Einstellungen für Hardware Button, wenn Sie softwareseitig genutzt werden (Rule2) -------------
              //--------- EN: End - settings for hardware button if they are used in software (Rule2) ------------------------------
      
      

      Rule2 in tasmota so:

      23:54:10.219 CMD: Rule2
      23:54:10.226 MQT: SmartHome/NSPanel_Schlafzimmer/stat/RESULT = {"Rule2":{"State":"OFF","Once":"OFF","StopOnError":"OFF","Length":189,"Free":322,"Rules":"on Button1#state do Publish SmartHome/%topic%/tele/RESULT {\"CustomRecv\":\"event,button1\"} endon on Button2#state do Publish SmartHome/%topic%/tele/RESULT {\"CustomRecv\":\"event,button2\"} endon"}}
      
      1 Antwort Letzte Antwort
      0
      • bembelstemmerB bembelstemmer

        Hi, ich bin heute endlich mal ein paar Minuten zum weiter machen gekommen.

        Ich habe mal die ersten drei Themen gesammelt als Fragen und Feedback.


        Leider habe ich hier im Forum nichts dazu gefunden aber irgenwie scheitere ich gerade an den aller einfachsten Dingen. peinlich
        Ich wollte als ersten Test einfach nur einen Schalter auf die Hauptseite cardGrid legen.
        Aber egal welche Rolle der Datenpunkt hat, das Script gibt mir immer aus "Channel role ... not supported".
        Laut Doku bedeutet das ja, dass es nicht implementiert werden soll.

            const Hauptseite: ScriptConfig.PageGrid = {
                type: 'cardGrid',
                uniqueName: 'main',
                heading: 'Menü',
                items: [
                    { id: '0_userdata.0.testswitch', icon: 'power' },
                ]
            };
        

        Der State ist boolean und ich habe state und switch mit den Untertypen ausprobiert. Ein Button hilft mir nicht, da es toggeln soll.

        Ich schätze mal, ich hab nur einfach irgendwas noch nicht richtig verstanden.


        Und noch eine zweite Frage bzw. Vorschlag: Bei der klassischen Script Variante wurde das Wetter aus einem Alias gezogen. Das hatte den Vorteil, dass ich die aktuelle Temperatur die z.B. der Screensaver beim Wettericon angezeigt wurde einfach auf mein richtiges Außenthermometer umbiegen konnte.
        Jetzt, wo direkt der Wetteradapter angegeben ist habe ich noch nicht gesehen dass das aktuell möglich ist außer wenn ich mir einen fake-proxy für z.b. den pirate-weather baue.
        Wäre das was für die Zukunft, denn den geschätzen Wert brauche ich ja nicht wenn ich auf einem zusätzlichen Icon dann noch den echten Wert anzeige.


        Thema Nr. 3 betrifft die MQTT Settings die automatisch konfiguriert werden.
        Wenn man "wie früher" die Rule2 konfiguriert um die Tasten von den Relais zu entkoppeln, wird im MQTT Pfad der Rule %topic% verwendet.
        Aktuell wird (bzw. wurde bei mir durch die Initialisierung) nichts für den %topic% Wert konfiguriert. Default ist dann "Tasmota_XXXX".
        Dadurch schickt der Panel dann den Tastendruck ohne Fehler an die falsche Stelle und nichts passiert.
        Nachdem ich das %topic% dann auf den Panelnamen gesetzt hatte, ging dann alles perfekt.


        Ansonsten vielen Dank für die ganze Arbeit, die Performance macht echt nen richtig guten Eindruck bisher.

        T Offline
        T Offline
        TT-Tom
        schrieb am zuletzt editiert von
        #695

        @bembelstemmer

        wenn du etwas schalten willst, wäre die Rolle für den Channel entweder socket oder light.
        Das ist die selbe Einstellung wie beim Script inkl. Datenpunkte.

        zeige doch mal deine Datenpunkte inkl. Channel .

        für Thema zwei gibt es noch kein Template, bitte lege dazu ein issue an. ich kann dir aus dem Stegreif jetzt keine kompetente Lösung anbieten.

        Thema 3
        Im Adapter werden die Rules automatisch gesetzt, wie auch die MQTT-Einstellungen.
        Um die Tasten / Relais umzustellen, kannst über das Servicemenü unter Relais einstellen oder per State unter

        cmd/detachLeft
        cmd/detachRight
        

        mit

        cmd/power1
        cmd7power2
        

        kannst du die Relais schalten.

        Gruß Tom
        https://github.com/tt-tom17
        Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

        NSPanel Script Wiki
        https://github.com/joBr99/nspanel-lovelace-ui/wiki

        NSPanel Adapter Wiki
        https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

        T 1 Antwort Letzte Antwort
        0
        • teletapiT Online
          teletapiT Online
          teletapi
          schrieb am zuletzt editiert von teletapi
          #696

          Was die Schalter oder Steckdosen angeht sieht das bei mir mit einem Beispiel so aus.

          als erstes.
          "Alle_Steckdosen" unter "Pages" eintragen

               const Alle_Steckdosen: ScriptConfig.PageGrid = {    
                  type: 'cardGrid',
                  uniqueName: 'Alle_Steckdosen',
                  heading: 'Steckdosen',
                  useColor: true,
                  items: [
                  { navigate: true, id: null, targetPage: 'Steckdosen', offColor: Red, onColor: Green, name: 'Alle Steckdosen'},
              ],
          };
          

          Als nächstes die Steckdosen : Dier erste Steckdose funktioniert, die letzte ist hier ausgeblendet. Alle anderen dazwischen hab ich gelöscht damit es nicht zu unübersichtlich wird.
          "Steckdosen" dann unter "subPages" eintragen

               const Steckdosen: ScriptConfig.PageEntities = {    
                  type: 'cardEntities',
                  uniqueName: 'Steckdosen',
                  heading: 'Steckdosen',
                  subPage: true,
                  useColor: true,
                  prev: 'Alle_Steckdosen',
                  home: 'Alle_Steckdosen',
                  items: [
                  { id: 'alias.0.Steckdosen.Steckdose_Waschkueche',
                         targetPage: 'Steckdosen', 
                         icon: 'power-socket-de', 
                         icon2: 'power-plug-off-outline', 
                         offColor: Red, 
                         onColor: Green, 
                         name: '3D Drucker'
                         },
                  { id: 'alias.0.Steckdosen.Büro_DTU', 
                         targetPage: 'Steckdosen', 
                         icon: 'power-socket-de', 
                         icon2: 'power-plug-off-outline', 
                         offColor: Red, 
                         onColor: Green, 
                         name: 'Buero Ahoy-DTU'
                         },
                  /*{ id: 'alias.0.Steckdosen.Steckdose_ueber_Schreibtisch', 
                         targetPage: 'Steckdosen', 
                         icon: 'power-socket-de', 
                         icon2: 'power-plug-off-outline', 
                         offColor: Red, 
                         onColor: Green, 
                         name: 'PC Netzwerk'
                         },*/
              ],
          };
          
          T 1 Antwort Letzte Antwort
          0
          • teletapiT teletapi

            Was die Schalter oder Steckdosen angeht sieht das bei mir mit einem Beispiel so aus.

            als erstes.
            "Alle_Steckdosen" unter "Pages" eintragen

                 const Alle_Steckdosen: ScriptConfig.PageGrid = {    
                    type: 'cardGrid',
                    uniqueName: 'Alle_Steckdosen',
                    heading: 'Steckdosen',
                    useColor: true,
                    items: [
                    { navigate: true, id: null, targetPage: 'Steckdosen', offColor: Red, onColor: Green, name: 'Alle Steckdosen'},
                ],
            };
            

            Als nächstes die Steckdosen : Dier erste Steckdose funktioniert, die letzte ist hier ausgeblendet. Alle anderen dazwischen hab ich gelöscht damit es nicht zu unübersichtlich wird.
            "Steckdosen" dann unter "subPages" eintragen

                 const Steckdosen: ScriptConfig.PageEntities = {    
                    type: 'cardEntities',
                    uniqueName: 'Steckdosen',
                    heading: 'Steckdosen',
                    subPage: true,
                    useColor: true,
                    prev: 'Alle_Steckdosen',
                    home: 'Alle_Steckdosen',
                    items: [
                    { id: 'alias.0.Steckdosen.Steckdose_Waschkueche',
                           targetPage: 'Steckdosen', 
                           icon: 'power-socket-de', 
                           icon2: 'power-plug-off-outline', 
                           offColor: Red, 
                           onColor: Green, 
                           name: '3D Drucker'
                           },
                    { id: 'alias.0.Steckdosen.Büro_DTU', 
                           targetPage: 'Steckdosen', 
                           icon: 'power-socket-de', 
                           icon2: 'power-plug-off-outline', 
                           offColor: Red, 
                           onColor: Green, 
                           name: 'Buero Ahoy-DTU'
                           },
                    /*{ id: 'alias.0.Steckdosen.Steckdose_ueber_Schreibtisch', 
                           targetPage: 'Steckdosen', 
                           icon: 'power-socket-de', 
                           icon2: 'power-plug-off-outline', 
                           offColor: Red, 
                           onColor: Green, 
                           name: 'PC Netzwerk'
                           },*/
                ],
            };
            
            T Offline
            T Offline
            TT-Tom
            schrieb am zuletzt editiert von
            #697

            @teletapi

            sein Problem wird die Rolle des Channel sein.

            Gruß Tom
            https://github.com/tt-tom17
            Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

            NSPanel Script Wiki
            https://github.com/joBr99/nspanel-lovelace-ui/wiki

            NSPanel Adapter Wiki
            https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

            1 Antwort Letzte Antwort
            0
            • T TT-Tom

              @bembelstemmer

              wenn du etwas schalten willst, wäre die Rolle für den Channel entweder socket oder light.
              Das ist die selbe Einstellung wie beim Script inkl. Datenpunkte.

              zeige doch mal deine Datenpunkte inkl. Channel .

              für Thema zwei gibt es noch kein Template, bitte lege dazu ein issue an. ich kann dir aus dem Stegreif jetzt keine kompetente Lösung anbieten.

              Thema 3
              Im Adapter werden die Rules automatisch gesetzt, wie auch die MQTT-Einstellungen.
              Um die Tasten / Relais umzustellen, kannst über das Servicemenü unter Relais einstellen oder per State unter

              cmd/detachLeft
              cmd/detachRight
              

              mit

              cmd/power1
              cmd7power2
              

              kannst du die Relais schalten.

              T Nicht stören
              T Nicht stören
              ticaki
              schrieb am zuletzt editiert von ticaki
              #698

              @TT-Tom

              Thema 2 dürfte durch umbiegen von entity1 gehen - müsste man mal testen
              also damit meine ich:

              // das hier ist falsch
              {
              type: 'native'
              native: {
              template: 'keineAhnung'
              dp: 'x.y.z'
              data: {
              entity1: {
              value: {
              type: 'triggered', dp: 'eigenes.wetter'
              }}}}
              }
              

              müssten man mal ausprobieren. Keine Ahnung ob native überhaupt in screensaver geht

              Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

              Spenden

              T 1 Antwort Letzte Antwort
              0
              • T ticaki

                @TT-Tom

                Thema 2 dürfte durch umbiegen von entity1 gehen - müsste man mal testen
                also damit meine ich:

                // das hier ist falsch
                {
                type: 'native'
                native: {
                template: 'keineAhnung'
                dp: 'x.y.z'
                data: {
                entity1: {
                value: {
                type: 'triggered', dp: 'eigenes.wetter'
                }}}}
                }
                

                müssten man mal ausprobieren. Keine Ahnung ob native überhaupt in screensaver geht

                T Offline
                T Offline
                TT-Tom
                schrieb am zuletzt editiert von
                #699

                @ticaki

                So in der Art dachte ich auch, muss man mal testen.

                Gruß Tom
                https://github.com/tt-tom17
                Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

                NSPanel Script Wiki
                https://github.com/joBr99/nspanel-lovelace-ui/wiki

                NSPanel Adapter Wiki
                https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

                1 Antwort Letzte Antwort
                0
                • bembelstemmerB bembelstemmer

                  Hi, ich bin heute endlich mal ein paar Minuten zum weiter machen gekommen.

                  Ich habe mal die ersten drei Themen gesammelt als Fragen und Feedback.


                  Leider habe ich hier im Forum nichts dazu gefunden aber irgenwie scheitere ich gerade an den aller einfachsten Dingen. peinlich
                  Ich wollte als ersten Test einfach nur einen Schalter auf die Hauptseite cardGrid legen.
                  Aber egal welche Rolle der Datenpunkt hat, das Script gibt mir immer aus "Channel role ... not supported".
                  Laut Doku bedeutet das ja, dass es nicht implementiert werden soll.

                      const Hauptseite: ScriptConfig.PageGrid = {
                          type: 'cardGrid',
                          uniqueName: 'main',
                          heading: 'Menü',
                          items: [
                              { id: '0_userdata.0.testswitch', icon: 'power' },
                          ]
                      };
                  

                  Der State ist boolean und ich habe state und switch mit den Untertypen ausprobiert. Ein Button hilft mir nicht, da es toggeln soll.

                  Ich schätze mal, ich hab nur einfach irgendwas noch nicht richtig verstanden.


                  Und noch eine zweite Frage bzw. Vorschlag: Bei der klassischen Script Variante wurde das Wetter aus einem Alias gezogen. Das hatte den Vorteil, dass ich die aktuelle Temperatur die z.B. der Screensaver beim Wettericon angezeigt wurde einfach auf mein richtiges Außenthermometer umbiegen konnte.
                  Jetzt, wo direkt der Wetteradapter angegeben ist habe ich noch nicht gesehen dass das aktuell möglich ist außer wenn ich mir einen fake-proxy für z.b. den pirate-weather baue.
                  Wäre das was für die Zukunft, denn den geschätzen Wert brauche ich ja nicht wenn ich auf einem zusätzlichen Icon dann noch den echten Wert anzeige.


                  Thema Nr. 3 betrifft die MQTT Settings die automatisch konfiguriert werden.
                  Wenn man "wie früher" die Rule2 konfiguriert um die Tasten von den Relais zu entkoppeln, wird im MQTT Pfad der Rule %topic% verwendet.
                  Aktuell wird (bzw. wurde bei mir durch die Initialisierung) nichts für den %topic% Wert konfiguriert. Default ist dann "Tasmota_XXXX".
                  Dadurch schickt der Panel dann den Tastendruck ohne Fehler an die falsche Stelle und nichts passiert.
                  Nachdem ich das %topic% dann auf den Panelnamen gesetzt hatte, ging dann alles perfekt.


                  Ansonsten vielen Dank für die ganze Arbeit, die Performance macht echt nen richtig guten Eindruck bisher.

                  T Nicht stören
                  T Nicht stören
                  ticaki
                  schrieb am zuletzt editiert von ticaki
                  #700

                  @bembelstemmer

                  Zu:

                  1.
                  Es wird ein channel mit role 'xyz' erwartet in dem ein State mit type:'x' und role: 'y' ist. Der channel ist die ID.
                  Um es sich besser zu merken - channel ist welches "Vorlage" verwendet wird und die states darunter sind die dazu gehörenden Daten.

                  2. eigener State im Favorit

                  Dafür muß wahrscheinlich das automatische Hinzufügen von Wetterelementen ausgeschaltet werden. Dann definiert man das Favoritenelement selbst. Es kann vielleicht auch gehen wenn die weiter an bleiben, weil Nutzerelemente vor den anderen ins Array geschrieben werden und ohne Rotation werden die ersten zuerst angezeigt.

                  // Ausschalten des automatischen Hinzufügens. Auch im Admin auf custom = leer umstellen
                  weatherEntity: '',
                  //...
                  
                  favoritScreensaverEntity:[
                           {
                                  type: 'native',
                                  native:{
                                      template: 'text.brightsky.favorit',
                                      dpInit: `/^brightsky\\.0\\.current.+/`,
                                      modeScr: 'favorit',
                                      data: {
                                          entity2: {
                                              value: {
                                                  type: 'triggered',
                                                  dp: 'sainlogic.0.weather.current.outdoortemp'
                                              }
                                          }
                                      }
                                  }
                              },
                       ],
                  

                  3.
                  Der Adapter verwendet Rule3 und macht dann folgendes:

                  this.sendToTasmota(
                              `${this.topic}/cmnd/Rule3`,
                              `ON CustomSend DO RuleTimer3 120 ENDON ON Rules#Timer=3 DO CustomSend pageType~pageStartup ENDON${
                                  this.detach.left
                                      ? ` ON Button1#state do Publish ${this.topic}/tele/RESULT {"CustomRecv":"event,button1"} ENDON`
                                      : ''
                              }${
                                  this.detach.right
                                      ? ` ON Button2#state do Publish ${this.topic}/tele/RESULT {"CustomRecv":"event,button2"} ENDON`
                                      : ''
                              }`,
                          );
                  

                  Die erste Abfrage bringt das panel in den startup wenn es länger als 120 Sekunden keine Nachricht vom Adapter bekommen hat. Das zweite und dritte sind für das detachen zuständig, jenachdem wie State: nspanel-lovelace-ui.0.panels.A0_B7_65_54_C2_60.cmd.detachLeft / Right aussehen

                  Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                  Spenden

                  1 Antwort Letzte Antwort
                  0
                  • bembelstemmerB Offline
                    bembelstemmerB Offline
                    bembelstemmer
                    schrieb am zuletzt editiert von bembelstemmer
                    #701

                    Vielen Dank, ich hab ja gesagt dass ich bestimmt irgendwas verpeilt habe :grin:
                    Ich habe nen Haufen States die ich für die Steuerung meiner ganzen Scripts verwende für verschiedenste Use-Cases. Das sind alles weder Steckdosen noch Lichter. Hatte verdrängt dass ich für jeden Bool-Wert den ich schalten möchte ein Fake-Gerät-Alias anlegen muss.
                    Hatte gedacht bzw. gehofft dass man einfach bool Punkte toggeln kann wie es z.B. bei der Belegung der Hardwarebuttons geht über den neuen Mode 'switch'.
                    Also sorry für die überflüssige Frage.


                    Zu Thema2: Vielen Dank für den Tipp. Werde ich mir mal anschauen und testen.
                    Ich muss mir das noch mal genauer durchlesen. Ich habe das Konzept von den Templates noch nicht ganz durchschaut und was ich da dann genau machen muss.
                    Ich gebe nochmal bescheid ob das so klappt wie vorgeschlagen.


                    Zu Thema 3: Danke für die Erläuterung. Die ganzen Settings mit der Rule2 und detach sind alle bekannt. Ich benutze das ja schon einige Jahre.
                    Ich hatte nur übersehen, dass hier die Einstellung für Topic auf dem Defaultwert bleibt bei der Einrichtung.
                    Wenn dann die Rule2 so gesetzt ist:
                    ...state do Publish SmartHome/%topic%/tele/RESULT ....
                    dann landen die Events quasi im Nirvana, da der Pfad dann nicht stimmt.
                    7a655f9a-d3f2-4c04-ab9e-54531a6456b2-grafik.png
                    Aber vielleicht ist auch nur bei dem automatischen Setup bei mir was schief gegangen.
                    Hatte nen reset 4 gemacht und dann alles automatisch über den Adapter laufen lassen.

                    @ticaki Danke für die Info. Das habe ich nicht gesehen. Trotz komplettem Reset war irgendwie die Rule2 nach dem auto setup gesetzt und das schalten von States über die Buttons hat nicht funtkioniert. Nachdem ichs über die Rule2 wie oben beschrieben selbst gesetzt habe ging es dann.
                    Werde ich nochmal vom Reset aus durchspielen was da schief gelaufen ist.

                    T 1 Antwort Letzte Antwort
                    0
                    • bembelstemmerB bembelstemmer

                      Vielen Dank, ich hab ja gesagt dass ich bestimmt irgendwas verpeilt habe :grin:
                      Ich habe nen Haufen States die ich für die Steuerung meiner ganzen Scripts verwende für verschiedenste Use-Cases. Das sind alles weder Steckdosen noch Lichter. Hatte verdrängt dass ich für jeden Bool-Wert den ich schalten möchte ein Fake-Gerät-Alias anlegen muss.
                      Hatte gedacht bzw. gehofft dass man einfach bool Punkte toggeln kann wie es z.B. bei der Belegung der Hardwarebuttons geht über den neuen Mode 'switch'.
                      Also sorry für die überflüssige Frage.


                      Zu Thema2: Vielen Dank für den Tipp. Werde ich mir mal anschauen und testen.
                      Ich muss mir das noch mal genauer durchlesen. Ich habe das Konzept von den Templates noch nicht ganz durchschaut und was ich da dann genau machen muss.
                      Ich gebe nochmal bescheid ob das so klappt wie vorgeschlagen.


                      Zu Thema 3: Danke für die Erläuterung. Die ganzen Settings mit der Rule2 und detach sind alle bekannt. Ich benutze das ja schon einige Jahre.
                      Ich hatte nur übersehen, dass hier die Einstellung für Topic auf dem Defaultwert bleibt bei der Einrichtung.
                      Wenn dann die Rule2 so gesetzt ist:
                      ...state do Publish SmartHome/%topic%/tele/RESULT ....
                      dann landen die Events quasi im Nirvana, da der Pfad dann nicht stimmt.
                      7a655f9a-d3f2-4c04-ab9e-54531a6456b2-grafik.png
                      Aber vielleicht ist auch nur bei dem automatischen Setup bei mir was schief gegangen.
                      Hatte nen reset 4 gemacht und dann alles automatisch über den Adapter laufen lassen.

                      @ticaki Danke für die Info. Das habe ich nicht gesehen. Trotz komplettem Reset war irgendwie die Rule2 nach dem auto setup gesetzt und das schalten von States über die Buttons hat nicht funtkioniert. Nachdem ichs über die Rule2 wie oben beschrieben selbst gesetzt habe ging es dann.
                      Werde ich nochmal vom Reset aus durchspielen was da schief gelaufen ist.

                      T Nicht stören
                      T Nicht stören
                      ticaki
                      schrieb am zuletzt editiert von ticaki
                      #702

                      @bembelstemmer
                      Zu 1: Ich hatte schon überlegt sowas zu ermöglichen - zumindest für switch.
                      Zu 2: Das mit den Templates ist gedacht gewesen um die komplexe Adapterkonfiguration zu vereinfachen und trotzdem was kompliziertes machen zu können:

                      Beispiel wie das Adapter intern aussieht:

                      oh was sehe ich da - da gehen ja auch Platzhalter - was man nicht alles in 2 Jahren vergisst, das muß ich dann nochmal rausbekommen wie das geht. :D

                      'text.battery.bydhvs': {
                              /**
                               * entity1 enthält den Füllstand
                               * entity2 ebenfalls
                               * entity3 ist true für laden und false für entladen. 
                               */
                              template: 'text.battery',
                              role: 'battery',
                              adapter: 'bydhvs',
                              type: 'text',
                              dpInit: '/bydhvs\\.#°^°#\\./',
                      
                              data: {
                                  icon: {
                                      true: {
                                          value: {
                                              type: 'triggered',
                                              mode: 'auto',
                                              role: 'value.battery',
                                              dp: '',
                                              regexp: /\.State\.SOC$/,
                                              read: `const v = Math.round(val / 10)
                                              switch (v) {
                                                  case 0:
                                                      return 'battery-charging-outline';
                                                  case 1:
                                                  case 2:
                                                  case 3:
                                                  case 4:
                                                  case 5:
                                                  case 6:
                                                  case 7:
                                                  case 8:
                                                  case 9:
                                                      return 'battery-charging-' + v + '0';
                                                  case 10:
                                                  default:
                                                      return 'battery-charging';}`,
                                          },
                                          text: {
                                              value: {
                                                  type: 'triggered',
                                                  mode: 'auto',
                                                  role: 'value.battery',
                                                  dp: '',
                                                  regexp: /\.State\.SOC$/,
                                              },
                                              unit: {
                                                  type: 'const',
                                                  constVal: '%',
                                              },
                                              textSize: { type: 'const', constVal: 2 },
                                          },
                                          color: undefined,
                                      },
                                      false: {
                                          value: {
                                              type: 'triggered',
                                              mode: 'auto',
                                              role: 'value.battery',
                                              dp: '',
                                              regexp: /\.State\.SOC$/,
                                              read: `const v = Math.round(val / 10)
                                                  switch (v) {
                                                      case 0:
                                                          return 'battery-outline';
                                                      case 1:
                                                      case 2:
                                                      case 3:
                                                      case 4:
                                                      case 5:
                                                      case 6:
                                                      case 7:
                                                      case 8:
                                                      case 9:
                                                          return 'battery-' + v + '0';
                                                      case 10:
                                                      default:
                                                          return 'battery';}`,
                                          },
                                          color: undefined,
                                      },
                                      scale: { type: 'const', constVal: { val_min: 10, val_max: 50, log10: 'max' } },
                                  },
                                  entity1: {
                                      value: {
                                          type: 'state',
                                          mode: 'auto',
                                          role: 'value.battery',
                                          dp: '',
                                          regexp: /\.State\.SOC$/,
                                      },
                                  },
                                  text: {
                                      true: { type: 'const', constVal: 'Battery' },
                                      false: undefined,
                                  },
                                  entity2: {
                                      value: {
                                          type: 'triggered',
                                          mode: 'auto',
                                          role: 'value.battery',
                                          dp: '',
                                          regexp: /\.State\.SOC$/,
                                      },
                                      unit: { type: 'const', constVal: '%' },
                                  },
                                  entity3: {
                                      value: {
                                          type: 'triggered',
                                          mode: 'auto',
                                          role: 'value.power',
                                          dp: '',
                                          regexp: /\.State\.Power$/,
                                          read: 'return val < 0',
                                      },
                                  },
                              },
                          },
                      

                      Um das zu nutzen schreibt man dann einfach:

                                 {
                                      type: 'template',
                                      template: 'text.battery.bydhvs',
                                      dpInit: 'bydhvs.0',
                                      modeScr: 'left',
                                  }
                      

                      In das Skript und fertig. Mit dem data Zweig wie bei dem Favorit oben überschreibt man einzelne keys im Json

                      EDIT:
                      Das template macht folgendes:

                      • Verwendet ca. 20 icons
                      • unterschiedliche Icons für laden und entladen
                      • ladestand in 1/10 am icon ablesbar
                      • farbe wechselt je nach ladestand mit log10 von rot=10% zu grün= 50% (i.d.R. ist es bei 30 fast grün)

                      hm das könnte ich noch auf trigrad umstellen.

                      EDIT2:

                      Bitte setzte erstmal keine eigenen Rule und lösche vorhandene - der Adapter sollte das alles für die Standardfälle selbst erledigen.

                      Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                      Spenden

                      bembelstemmerB 1 Antwort Letzte Antwort
                      0
                      • T ticaki

                        @bembelstemmer
                        Zu 1: Ich hatte schon überlegt sowas zu ermöglichen - zumindest für switch.
                        Zu 2: Das mit den Templates ist gedacht gewesen um die komplexe Adapterkonfiguration zu vereinfachen und trotzdem was kompliziertes machen zu können:

                        Beispiel wie das Adapter intern aussieht:

                        oh was sehe ich da - da gehen ja auch Platzhalter - was man nicht alles in 2 Jahren vergisst, das muß ich dann nochmal rausbekommen wie das geht. :D

                        'text.battery.bydhvs': {
                                /**
                                 * entity1 enthält den Füllstand
                                 * entity2 ebenfalls
                                 * entity3 ist true für laden und false für entladen. 
                                 */
                                template: 'text.battery',
                                role: 'battery',
                                adapter: 'bydhvs',
                                type: 'text',
                                dpInit: '/bydhvs\\.#°^°#\\./',
                        
                                data: {
                                    icon: {
                                        true: {
                                            value: {
                                                type: 'triggered',
                                                mode: 'auto',
                                                role: 'value.battery',
                                                dp: '',
                                                regexp: /\.State\.SOC$/,
                                                read: `const v = Math.round(val / 10)
                                                switch (v) {
                                                    case 0:
                                                        return 'battery-charging-outline';
                                                    case 1:
                                                    case 2:
                                                    case 3:
                                                    case 4:
                                                    case 5:
                                                    case 6:
                                                    case 7:
                                                    case 8:
                                                    case 9:
                                                        return 'battery-charging-' + v + '0';
                                                    case 10:
                                                    default:
                                                        return 'battery-charging';}`,
                                            },
                                            text: {
                                                value: {
                                                    type: 'triggered',
                                                    mode: 'auto',
                                                    role: 'value.battery',
                                                    dp: '',
                                                    regexp: /\.State\.SOC$/,
                                                },
                                                unit: {
                                                    type: 'const',
                                                    constVal: '%',
                                                },
                                                textSize: { type: 'const', constVal: 2 },
                                            },
                                            color: undefined,
                                        },
                                        false: {
                                            value: {
                                                type: 'triggered',
                                                mode: 'auto',
                                                role: 'value.battery',
                                                dp: '',
                                                regexp: /\.State\.SOC$/,
                                                read: `const v = Math.round(val / 10)
                                                    switch (v) {
                                                        case 0:
                                                            return 'battery-outline';
                                                        case 1:
                                                        case 2:
                                                        case 3:
                                                        case 4:
                                                        case 5:
                                                        case 6:
                                                        case 7:
                                                        case 8:
                                                        case 9:
                                                            return 'battery-' + v + '0';
                                                        case 10:
                                                        default:
                                                            return 'battery';}`,
                                            },
                                            color: undefined,
                                        },
                                        scale: { type: 'const', constVal: { val_min: 10, val_max: 50, log10: 'max' } },
                                    },
                                    entity1: {
                                        value: {
                                            type: 'state',
                                            mode: 'auto',
                                            role: 'value.battery',
                                            dp: '',
                                            regexp: /\.State\.SOC$/,
                                        },
                                    },
                                    text: {
                                        true: { type: 'const', constVal: 'Battery' },
                                        false: undefined,
                                    },
                                    entity2: {
                                        value: {
                                            type: 'triggered',
                                            mode: 'auto',
                                            role: 'value.battery',
                                            dp: '',
                                            regexp: /\.State\.SOC$/,
                                        },
                                        unit: { type: 'const', constVal: '%' },
                                    },
                                    entity3: {
                                        value: {
                                            type: 'triggered',
                                            mode: 'auto',
                                            role: 'value.power',
                                            dp: '',
                                            regexp: /\.State\.Power$/,
                                            read: 'return val < 0',
                                        },
                                    },
                                },
                            },
                        

                        Um das zu nutzen schreibt man dann einfach:

                                   {
                                        type: 'template',
                                        template: 'text.battery.bydhvs',
                                        dpInit: 'bydhvs.0',
                                        modeScr: 'left',
                                    }
                        

                        In das Skript und fertig. Mit dem data Zweig wie bei dem Favorit oben überschreibt man einzelne keys im Json

                        EDIT:
                        Das template macht folgendes:

                        • Verwendet ca. 20 icons
                        • unterschiedliche Icons für laden und entladen
                        • ladestand in 1/10 am icon ablesbar
                        • farbe wechselt je nach ladestand mit log10 von rot=10% zu grün= 50% (i.d.R. ist es bei 30 fast grün)

                        hm das könnte ich noch auf trigrad umstellen.

                        EDIT2:

                        Bitte setzte erstmal keine eigenen Rule und lösche vorhandene - der Adapter sollte das alles für die Standardfälle selbst erledigen.

                        bembelstemmerB Offline
                        bembelstemmerB Offline
                        bembelstemmer
                        schrieb am zuletzt editiert von
                        #703

                        @ticaki Jo, alles klar. Wird gemacht.
                        Hab den Fehler auch gefunden. Ich hatte nirgends die Info bzgl:
                        "jenachdem wie State: nspanel-lovelace-ui.0.panels.A0_B7_65_54_C2_60.cmd.detachLeft / Right aussehen"

                        Jetzt weiß ich dass man das dort setzen muss. Oder ist es vorgesehen das irgendwo anders zu konfigurieren und es wird dann automatisch gesetzt?

                        T 1 Antwort Letzte Antwort
                        0
                        • T Nicht stören
                          T Nicht stören
                          ticaki
                          schrieb am zuletzt editiert von ticaki
                          #704

                          Soll in den states gesetzt werden.

                          Oder da wo Tom sagt

                          Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                          Spenden

                          1 Antwort Letzte Antwort
                          0
                          • bembelstemmerB bembelstemmer

                            @ticaki Jo, alles klar. Wird gemacht.
                            Hab den Fehler auch gefunden. Ich hatte nirgends die Info bzgl:
                            "jenachdem wie State: nspanel-lovelace-ui.0.panels.A0_B7_65_54_C2_60.cmd.detachLeft / Right aussehen"

                            Jetzt weiß ich dass man das dort setzen muss. Oder ist es vorgesehen das irgendwo anders zu konfigurieren und es wird dann automatisch gesetzt?

                            T Offline
                            T Offline
                            TT-Tom
                            schrieb am zuletzt editiert von
                            #705

                            @bembelstemmer
                            Wie schon anfangs geschrieben hatte in den Serviceseiten unter Relais. Da kannst du es bequem einstellen

                            Gruß Tom
                            https://github.com/tt-tom17
                            Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

                            NSPanel Script Wiki
                            https://github.com/joBr99/nspanel-lovelace-ui/wiki

                            NSPanel Adapter Wiki
                            https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

                            1 Antwort Letzte Antwort
                            0
                            Antworten
                            • In einem neuen Thema antworten
                            Anmelden zum Antworten
                            • Älteste zuerst
                            • Neuste zuerst
                            • Meiste Stimmen


                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            635

                            Online

                            32.4k

                            Benutzer

                            81.4k

                            Themen

                            1.3m

                            Beiträge
                            Community
                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                            ioBroker Community 2014-2025
                            logo
                            • Anmelden

                            • Du hast noch kein Konto? Registrieren

                            • Anmelden oder registrieren, um zu suchen
                            • Erster Beitrag
                              Letzter Beitrag
                            0
                            • Home
                            • Aktuell
                            • Tags
                            • Ungelesen 0
                            • Kategorien
                            • Unreplied
                            • Beliebt
                            • GitHub
                            • Docu
                            • Hilfe