Skip to content
  • 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
  1. ioBroker Community Home
  2. Deutsch
  3. Hardware
  4. SONOFF NSPanel mit Lovelace UI

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.2k

SONOFF NSPanel mit Lovelace UI

Geplant Angeheftet Gesperrt Verschoben Hardware
lovelace uinspanelsonoff
7.8k Beiträge 272 Kommentatoren 6.7m Aufrufe 254 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.
  • Rene55R Rene55

    @armilar Sind die Änderungen gravierend, dass ich das per Konsole machen sollte?
    Bei dem Versuch über das Servicemenü fehlt "alias.0.NSPanel.1.Config.Update.UpdateNextion.SET" und "alias.0.NSPanel.1.Config.Update.UpdateNextion.ON_SET". Aber das wisst ihr sicher und seid dran,

    ArmilarA Offline
    ArmilarA Offline
    Armilar
    Most Active Forum Testing
    schrieb am zuletzt editiert von Armilar
    #6793

    @rene55

    Nein, die sind nicht gravierend... Ist nur der Part mit dem EasyView screensaver3 und der cardGrid3

    Sofern du die nicht nutzt, geht auch die alte TFT53

    Und deshalb habe ich ja auch geschrieben, dass das Update aktuell "nicht" über das Servicemenü stattfinden soll, sondern über die Tasmota-Konsole 😊

    Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
    https://github.com/joBr99/nspanel-lovelace-ui/wiki

    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

    Rene55R 1 Antwort Letzte Antwort
    0
    • ArmilarA Armilar

      @rene55

      Nein, die sind nicht gravierend... Ist nur der Part mit dem EasyView screensaver3 und der cardGrid3

      Sofern du die nicht nutzt, geht auch die alte TFT53

      Und deshalb habe ich ja auch geschrieben, dass das Update aktuell "nicht" über das Servicemenü stattfinden soll, sondern über die Tasmota-Konsole 😊

      Rene55R Offline
      Rene55R Offline
      Rene55
      schrieb am zuletzt editiert von
      #6794

      @armilar Danke für die Info. Das Ding läuft bei mir auch nur so nebenbei. Ich warte ja eigentlich auf den Adapter (weil mich die Aliase furchtbar nerven), weiß aber nicht, wie ich ticaki dabei helfen könnte.

      Host: Fujitsu Intel(R) Pentium(R) CPU G4560T, 32 GB RAM, Proxmox 8.x + lxc Ubuntu 22.04
      ioBroker (8 GB RAM) Node.js: 20.19.1, NPM: 10.8.2, js-Controller: 7.0.6, Admin: 7.6.3
      Wetterstation: Froggit WH3000SE V1.6.6

      ArmilarA 1 Antwort Letzte Antwort
      0
      • Rene55R Rene55

        @armilar Danke für die Info. Das Ding läuft bei mir auch nur so nebenbei. Ich warte ja eigentlich auf den Adapter (weil mich die Aliase furchtbar nerven), weiß aber nicht, wie ich ticaki dabei helfen könnte.

        ArmilarA Offline
        ArmilarA Offline
        Armilar
        Most Active Forum Testing
        schrieb am zuletzt editiert von
        #6795

        @rene55

        React lernen 😉

        Wir sind dran...

        Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
        https://github.com/joBr99/nspanel-lovelace-ui/wiki

        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

        T 1 Antwort Letzte Antwort
        1
        • ArmilarA Armilar

          @rene55

          React lernen 😉

          Wir sind dran...

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

          @armilar sagte in SONOFF NSPanel mit Lovelace UI:

          @rene55

          React lernen 😉

          Wir sind dran...

          Ich weiß nicht in wieweit Rene react kann, aber der macht da immer mit web zeugs rum wovon ich keine Ahnung habe. Helfen könnte er wohl schon - aber dann müsste ich meine letzte Alias idee wieder in die Tonne kloppen sonst streikt er 😄

          @Rene55
          Ich hab ne sehr komplizierte Konfiguration gebaut, in der Annahme das ich schon ne Mögliichkeit finde das nachher umzusetzen und da sind wir.

          Im Adapter kann man aktuell zu jedem "pageItem" jeden einzelnen Datenpunkt(6-8) als id, fester wert oder triggernd ausführen - das sieht dann zum Bespiel so aus:

          //const pageGridTest4: pages.PageBaseConfig = {
              //type: 'sonstiges',
              //card: 'cardGrid',
              dpInit: '',
          
              alwaysOn: 'none',
              uniqueID: 'grid4',
              useColor: false,
              config: {
                  card: 'cardGrid',
                  data: {
                      headline: {
                          type: 'const',
                          constVal: 'Überschrift2',
                      },
                  },
              },
              items: undefined,
              pageItems: [
                  {
                      role: 'text.list',
                      type: 'input_sel',
                      dpInit: '',
          
                      data: {
                          color: {
                              true: {
                                  type: 'const',
                                  constVal: Color.HMIOn,
                              },
                              false: undefined,
                              scale: undefined,
                          },
                          icon: {
                              true: {
                                  value: { type: 'const', constVal: 'fan' },
                                  color: { type: 'const', constVal: Color.Green },
                              },
                              false: {
                                  value: { type: 'const', constVal: 'fan' },
                                  color: { type: 'const', constVal: Color.Red },
                              },
                              scale: undefined,
                              maxBri: undefined,
                              minBri: undefined,
                          },
                          entityInSel: {
                              value: {
                                  type: 'const',
                                  constVal: true,
                              },
                              decimal: undefined,
                              factor: undefined,
                              unit: undefined,
                          },
                          text: {
                              true: undefined,
                              false: undefined,
                          },
                          /**
                           * valueList string[]/stringify oder string?string?string?string stelle korreliert mit setList  {input_sel}
                           */
                          valueList: { type: 'const', constVal: 'home?butter' },
                          /**
                           * setList: {id:Datenpunkt, value: zu setzender Wert}[] bzw. stringify  oder ein String nach dem Muster datenpunkt?Wert|Datenpunkt?Wert {input_sel}
                           */
                          setList: { type: 'const', constVal: '0_userdata.0.test?1|0_userdata.0.test?2' },
                      },
                  },
                  {
                      role: 'text.list',
                      type: 'button',
                      dpInit: '',
          
                      data: {
                          color: {
                              true: {
                                  type: 'const',
                                  constVal: Color.HMIOn,
                              },
                              false: undefined,
                              scale: undefined,
                          },
                          icon: {
                              true: {
                                  value: { type: 'const', constVal: 'account' },
                                  color: { type: 'const', constVal: Color.Green },
                              },
                              false: {
                                  value: { type: 'const', constVal: 'fan' },
                                  color: { type: 'const', constVal: Color.Red },
                              },
                              scale: undefined,
                              maxBri: undefined,
                              minBri: undefined,
                          },
                          entity1: {
                              value: {
                                  type: 'const',
                                  constVal: true,
                              },
                              decimal: undefined,
                              factor: undefined,
                              unit: undefined,
                          },
                          text: {
                              true: undefined,
                              false: undefined,
                          },
                      },
                  },
              ],
          //};
          

          Hab ein kleines als Bespiel genommen

          Oder was komplexeres:

          const pageThermoTest: pages.PageBaseConfig = {
              //card: 'cardThermo',
          
              uniqueID: 'thermo1',
              dpInit: '',
              alwaysOn: 'none',
              pageItems: [
                  {
                      role: '',
                      type: 'button',
                      dpInit: '',
                      data: {
                          color: {
                              true: {
                                  type: 'const',
                                  constVal: Color.HMIOn,
                              },
                              false: undefined,
                              scale: undefined,
                          },
                          icon: {
                              true: {
                                  value: { type: 'const', constVal: 'arrow-right' },
                                  color: { type: 'const', constVal: Color.Blue },
                              },
                              false: {
                                  value: { type: 'const', constVal: 'fan' },
                                  color: { type: 'const', constVal: Color.Red },
                              },
                              scale: undefined,
                              maxBri: undefined,
                              minBri: undefined,
                          },
                          entity1: {
                              value: {
                                  type: 'triggered',
                                  dp: '0_userdata.0.example_state',
                              },
                              decimal: undefined,
                              factor: undefined,
                              unit: undefined,
                          },
                          text: {
                              true: undefined,
                              false: undefined,
                          },
                      },
                  },
                  {
                      role: 'text.list',
                      type: 'input_sel',
                      dpInit: '',
          
                      data: {
                          entityInSel: {
                              value: {
                                  type: 'triggered',
                                  dp: '0_userdata.0.statesTest',
                              },
                              decimal: undefined,
                              factor: undefined,
                              unit: undefined,
                          },
                          headline: {
                              type: 'const',
                              constVal: 'Test',
                          },
                          /**
                           * valueList string[]/stringify oder string?string?string?string stelle korreliert mit setList  {input_sel}
                           */
                          //valueList: { type: 'const', constVal: 'home?butter' },
                          /**
                           * setList: {id:Datenpunkt, value: zu setzender Wert}[] bzw. stringify  oder ein String nach dem Muster datenpunkt?Wert|Datenpunkt?Wert {input_sel}
                           */
                          //setList: { type: 'const', constVal: '0_userdata.0.test?1|0_userdata.0.test?2' },
                      },
                  },
                  {
                      role: 'text.list',
                      type: 'input_sel',
                      dpInit: '',
          
                      data: {
                          entityInSel: {
                              value: {
                                  type: 'triggered',
                                  dp: '0_userdata.0.statesTest',
                              },
                              decimal: undefined,
                              factor: undefined,
                              unit: undefined,
                          },
                          headline: {
                              type: 'const',
                              constVal: 'Test',
                          },
                          /**
                           * valueList string[]/stringify oder string?string?string?string stelle korreliert mit setList  {input_sel}
                           */
                          //valueList: { type: 'const', constVal: 'home?butter' },
                          /**
                           * setList: {id:Datenpunkt, value: zu setzender Wert}[] bzw. stringify  oder ein String nach dem Muster datenpunkt?Wert|Datenpunkt?Wert {input_sel}
                           */
                          //setList: { type: 'const', constVal: '0_userdata.0.test?1|0_userdata.0.test?2' },
                      },
                  },
                  {
                      role: 'text.list',
                      type: 'input_sel',
                      dpInit: '',
          
                      data: {
                          entityInSel: {
                              value: {
                                  type: 'triggered',
                                  dp: '0_userdata.0.statesTest',
                              },
                              decimal: undefined,
                              factor: undefined,
                              unit: undefined,
                          },
                          headline: {
                              type: 'const',
                              constVal: 'Test',
                          },
                          /**
                           * valueList string[]/stringify oder string?string?string?string stelle korreliert mit setList  {input_sel}
                           */
                          //valueList: { type: 'const', constVal: 'home?butter' },
                          /**
                           * setList: {id:Datenpunkt, value: zu setzender Wert}[] bzw. stringify  oder ein String nach dem Muster datenpunkt?Wert|Datenpunkt?Wert {input_sel}
                           */
                          //setList: { type: 'const', constVal: '0_userdata.0.test?1|0_userdata.0.test?2' },
                      },
                  },
                  {
                      role: 'text.list',
                      type: 'input_sel',
                      dpInit: '',
          
                      data: {
                          entityInSel: {
                              value: {
                                  type: 'triggered',
                                  dp: '0_userdata.0.statesTest',
                              },
                              decimal: undefined,
                              factor: undefined,
                              unit: undefined,
                          },
                          headline: {
                              type: 'const',
                              constVal: 'Test',
                          },
                          /**
                           * valueList string[]/stringify oder string?string?string?string stelle korreliert mit setList  {input_sel}
                           */
                          //valueList: { type: 'const', constVal: 'home?butter' },
                          /**
                           * setList: {id:Datenpunkt, value: zu setzender Wert}[] bzw. stringify  oder ein String nach dem Muster datenpunkt?Wert|Datenpunkt?Wert {input_sel}
                           */
                          //setList: { type: 'const', constVal: '0_userdata.0.test?1|0_userdata.0.test?2' },
                      },
                  },
                  {
                      role: 'button',
                      type: 'button',
                      dpInit: '',
          
                      data: {
                          color: {
                              true: {
                                  type: 'const',
                                  constVal: Color.HMIOn,
                              },
                              false: undefined,
                              scale: undefined,
                          },
                          icon: {
                              true: {
                                  value: { type: 'const', constVal: 'arrow-up' },
                                  color: { type: 'const', constVal: Color.Blue },
                              },
                              false: {
                                  value: { type: 'const', constVal: 'fan' },
                                  color: { type: 'const', constVal: Color.Red },
                              },
                              scale: undefined,
                              maxBri: undefined,
                              minBri: undefined,
                          },
                          entity1: {
                              value: {
                                  type: 'const',
                                  constVal: true,
                              },
                              decimal: undefined,
                              factor: undefined,
                              unit: undefined,
                          },
                          text: {
                              true: undefined,
                              false: undefined,
                          },
                      },
                  },
                  {
                      role: 'indicator',
                      type: 'button',
                      dpInit: '',
          
                      data: {
                          color: {
                              true: {
                                  type: 'const',
                                  constVal: Color.HMIOn,
                              },
                              false: undefined,
                              scale: undefined,
                          },
                          icon: {
                              true: {
                                  value: { type: 'const', constVal: 'fan' },
                                  color: { type: 'const', constVal: Color.Blue },
                              },
                              false: {
                                  value: { type: 'const', constVal: 'fan' },
                                  color: { type: 'const', constVal: Color.Red },
                              },
                              scale: undefined,
                              maxBri: undefined,
                              minBri: undefined,
                          },
                          entity1: {
                              value: { type: 'state', dp: '0_userdata.0.example_state' },
                              decimal: undefined,
                              factor: undefined,
                              unit: undefined,
                          },
                          text: {
                              true: undefined,
                              false: undefined,
                          },
                      },
                  },
                  {
                      role: 'indicator',
                      type: 'button',
                      dpInit: '',
          
                      data: {
                          color: {
                              true: {
                                  type: 'const',
                                  constVal: Color.HMIOn,
                              },
                              false: undefined,
                              scale: undefined,
                          },
                          icon: {
                              true: {
                                  value: { type: 'const', constVal: 'fan' },
                                  color: { type: 'const', constVal: Color.Blue },
                              },
                              false: {
                                  value: { type: 'const', constVal: 'fan' },
                                  color: { type: 'const', constVal: Color.Red },
                              },
                              scale: undefined,
                              maxBri: undefined,
                              minBri: undefined,
                          },
                          entity1: {
                              value: { type: 'state', dp: '0_userdata.0.example_state' },
                              decimal: undefined,
                              factor: undefined,
                              unit: undefined,
                          },
                          text: {
                              true: undefined,
                              false: undefined,
                          },
                      },
                  },
                  {
                      role: 'indicator',
                      type: 'button',
                      dpInit: '',
          
                      data: {
                          color: {
                              true: {
                                  type: 'const',
                                  constVal: Color.HMIOn,
                              },
                              false: undefined,
                              scale: undefined,
                          },
                          icon: {
                              true: {
                                  value: { type: 'const', constVal: 'fan' },
                                  color: { type: 'const', constVal: Color.Blue },
                              },
                              false: {
                                  value: { type: 'const', constVal: 'fan' },
                                  color: { type: 'const', constVal: Color.Red },
                              },
                              scale: undefined,
                              maxBri: undefined,
                              minBri: undefined,
                          },
                          entity1: {
                              value: { type: 'state', dp: '0_userdata.0.example_state' },
                              decimal: undefined,
                              factor: undefined,
                              unit: undefined,
                          },
                          text: {
                              true: undefined,
                              false: undefined,
                          },
                      },
                  },
                  {
                      role: 'indicator',
                      type: 'button',
                      dpInit: '',
          
                      data: {
                          color: {
                              true: {
                                  type: 'const',
                                  constVal: Color.HMIOn,
                              },
                              false: undefined,
                              scale: undefined,
                          },
                          icon: {
                              true: {
                                  value: { type: 'const', constVal: 'fan' },
                                  color: { type: 'const', constVal: Color.Blue },
                              },
                              false: {
                                  value: { type: 'const', constVal: 'fan' },
                                  color: { type: 'const', constVal: Color.Red },
                              },
                              scale: undefined,
                              maxBri: undefined,
                              minBri: undefined,
                          },
                          entity1: {
                              value: { type: 'state', dp: '0_userdata.0.example_state' },
                              decimal: undefined,
                              factor: undefined,
                              unit: undefined,
                          },
                          text: {
                              true: undefined,
                              false: undefined,
                          },
                      },
                  },
                  {
                      role: 'indicator',
                      type: 'button',
                      dpInit: '',
          
                      data: {
                          color: {
                              true: {
                                  type: 'const',
                                  constVal: Color.HMIOn,
                              },
                              false: undefined,
                              scale: undefined,
                          },
                          icon: {
                              true: {
                                  value: { type: 'const', constVal: 'fan' },
                                  color: { type: 'const', constVal: Color.Blue },
                              },
                              false: {
                                  value: { type: 'const', constVal: 'fan' },
                                  color: { type: 'const', constVal: Color.Red },
                              },
                              scale: undefined,
                              maxBri: undefined,
                              minBri: undefined,
                          },
                          entity1: {
                              value: { type: 'state', dp: '0_userdata.0.example_state' },
                              decimal: undefined,
                              factor: undefined,
                              unit: undefined,
                          },
                          text: {
                              true: undefined,
                              false: undefined,
                          },
                      },
                  },
                  {
                      role: 'indicator',
                      type: 'button',
                      dpInit: '',
          
                      data: {
                          color: {
                              true: {
                                  type: 'const',
                                  constVal: Color.HMIOn,
                              },
                              false: undefined,
                              scale: undefined,
                          },
                          icon: {
                              true: {
                                  value: { type: 'const', constVal: 'fan' },
                                  color: { type: 'const', constVal: Color.Blue },
                              },
                              false: {
                                  value: { type: 'const', constVal: 'fan' },
                                  color: { type: 'const', constVal: Color.Red },
                              },
                              scale: undefined,
                              maxBri: undefined,
                              minBri: undefined,
                          },
                          entity1: {
                              value: { type: 'state', dp: '0_userdata.0.example_state' },
                              decimal: undefined,
                              factor: undefined,
                              unit: undefined,
                          },
                          text: {
                              true: undefined,
                              false: undefined,
                          },
                      },
                  },
              ],
              config: {
                  card: 'cardThermo',
                  data: {
                      headline: {
                          type: 'const',
                          constVal: 'headline',
                      },
                      mixed2: {
                          value: {
                              type: 'const',
                              constVal: '20',
                          },
                      },
                      unit: {
                          type: 'const',
                          constVal: '°C',
                      },
                      mixed1: {
                          value: {
                              type: 'const',
                              constVal: 'H1',
                          },
                      },
                      mixed3: {
                          value: {
                              type: 'const',
                              constVal: 'H2',
                          },
                      },
                      minTemp: {
                          type: 'const',
                          constVal: '10',
                      },
                      maxTemp: {
                          type: 'const',
                          constVal: '60',
                      },
                      tempStep: {
                          type: 'const',
                          constVal: '5',
                      },
                      set1: { type: 'state', dp: '0_userdata.0.number1' },
                      mixed4: {
                          value: {
                              type: 'const',
                              constVal: '20',
                          },
                      },
                  },
              },
              items: undefined,
              useColor: false,
          };
          

          oder was einfaches von @TT-Tom

          const pageFahrplanRoutes: pages.PageBaseConfig = {
              card: 'cardEntities',
              dpInit: 'fahrplan.0.0',
              uniqueID: 'fahrplanrouten',
              template: 'entities.fahrplan.routes',
          };
          

          Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

          Spenden

          Rene55R 1 Antwort Letzte Antwort
          0
          • T ticaki

            @armilar sagte in SONOFF NSPanel mit Lovelace UI:

            @rene55

            React lernen 😉

            Wir sind dran...

            Ich weiß nicht in wieweit Rene react kann, aber der macht da immer mit web zeugs rum wovon ich keine Ahnung habe. Helfen könnte er wohl schon - aber dann müsste ich meine letzte Alias idee wieder in die Tonne kloppen sonst streikt er 😄

            @Rene55
            Ich hab ne sehr komplizierte Konfiguration gebaut, in der Annahme das ich schon ne Mögliichkeit finde das nachher umzusetzen und da sind wir.

            Im Adapter kann man aktuell zu jedem "pageItem" jeden einzelnen Datenpunkt(6-8) als id, fester wert oder triggernd ausführen - das sieht dann zum Bespiel so aus:

            //const pageGridTest4: pages.PageBaseConfig = {
                //type: 'sonstiges',
                //card: 'cardGrid',
                dpInit: '',
            
                alwaysOn: 'none',
                uniqueID: 'grid4',
                useColor: false,
                config: {
                    card: 'cardGrid',
                    data: {
                        headline: {
                            type: 'const',
                            constVal: 'Überschrift2',
                        },
                    },
                },
                items: undefined,
                pageItems: [
                    {
                        role: 'text.list',
                        type: 'input_sel',
                        dpInit: '',
            
                        data: {
                            color: {
                                true: {
                                    type: 'const',
                                    constVal: Color.HMIOn,
                                },
                                false: undefined,
                                scale: undefined,
                            },
                            icon: {
                                true: {
                                    value: { type: 'const', constVal: 'fan' },
                                    color: { type: 'const', constVal: Color.Green },
                                },
                                false: {
                                    value: { type: 'const', constVal: 'fan' },
                                    color: { type: 'const', constVal: Color.Red },
                                },
                                scale: undefined,
                                maxBri: undefined,
                                minBri: undefined,
                            },
                            entityInSel: {
                                value: {
                                    type: 'const',
                                    constVal: true,
                                },
                                decimal: undefined,
                                factor: undefined,
                                unit: undefined,
                            },
                            text: {
                                true: undefined,
                                false: undefined,
                            },
                            /**
                             * valueList string[]/stringify oder string?string?string?string stelle korreliert mit setList  {input_sel}
                             */
                            valueList: { type: 'const', constVal: 'home?butter' },
                            /**
                             * setList: {id:Datenpunkt, value: zu setzender Wert}[] bzw. stringify  oder ein String nach dem Muster datenpunkt?Wert|Datenpunkt?Wert {input_sel}
                             */
                            setList: { type: 'const', constVal: '0_userdata.0.test?1|0_userdata.0.test?2' },
                        },
                    },
                    {
                        role: 'text.list',
                        type: 'button',
                        dpInit: '',
            
                        data: {
                            color: {
                                true: {
                                    type: 'const',
                                    constVal: Color.HMIOn,
                                },
                                false: undefined,
                                scale: undefined,
                            },
                            icon: {
                                true: {
                                    value: { type: 'const', constVal: 'account' },
                                    color: { type: 'const', constVal: Color.Green },
                                },
                                false: {
                                    value: { type: 'const', constVal: 'fan' },
                                    color: { type: 'const', constVal: Color.Red },
                                },
                                scale: undefined,
                                maxBri: undefined,
                                minBri: undefined,
                            },
                            entity1: {
                                value: {
                                    type: 'const',
                                    constVal: true,
                                },
                                decimal: undefined,
                                factor: undefined,
                                unit: undefined,
                            },
                            text: {
                                true: undefined,
                                false: undefined,
                            },
                        },
                    },
                ],
            //};
            

            Hab ein kleines als Bespiel genommen

            Oder was komplexeres:

            const pageThermoTest: pages.PageBaseConfig = {
                //card: 'cardThermo',
            
                uniqueID: 'thermo1',
                dpInit: '',
                alwaysOn: 'none',
                pageItems: [
                    {
                        role: '',
                        type: 'button',
                        dpInit: '',
                        data: {
                            color: {
                                true: {
                                    type: 'const',
                                    constVal: Color.HMIOn,
                                },
                                false: undefined,
                                scale: undefined,
                            },
                            icon: {
                                true: {
                                    value: { type: 'const', constVal: 'arrow-right' },
                                    color: { type: 'const', constVal: Color.Blue },
                                },
                                false: {
                                    value: { type: 'const', constVal: 'fan' },
                                    color: { type: 'const', constVal: Color.Red },
                                },
                                scale: undefined,
                                maxBri: undefined,
                                minBri: undefined,
                            },
                            entity1: {
                                value: {
                                    type: 'triggered',
                                    dp: '0_userdata.0.example_state',
                                },
                                decimal: undefined,
                                factor: undefined,
                                unit: undefined,
                            },
                            text: {
                                true: undefined,
                                false: undefined,
                            },
                        },
                    },
                    {
                        role: 'text.list',
                        type: 'input_sel',
                        dpInit: '',
            
                        data: {
                            entityInSel: {
                                value: {
                                    type: 'triggered',
                                    dp: '0_userdata.0.statesTest',
                                },
                                decimal: undefined,
                                factor: undefined,
                                unit: undefined,
                            },
                            headline: {
                                type: 'const',
                                constVal: 'Test',
                            },
                            /**
                             * valueList string[]/stringify oder string?string?string?string stelle korreliert mit setList  {input_sel}
                             */
                            //valueList: { type: 'const', constVal: 'home?butter' },
                            /**
                             * setList: {id:Datenpunkt, value: zu setzender Wert}[] bzw. stringify  oder ein String nach dem Muster datenpunkt?Wert|Datenpunkt?Wert {input_sel}
                             */
                            //setList: { type: 'const', constVal: '0_userdata.0.test?1|0_userdata.0.test?2' },
                        },
                    },
                    {
                        role: 'text.list',
                        type: 'input_sel',
                        dpInit: '',
            
                        data: {
                            entityInSel: {
                                value: {
                                    type: 'triggered',
                                    dp: '0_userdata.0.statesTest',
                                },
                                decimal: undefined,
                                factor: undefined,
                                unit: undefined,
                            },
                            headline: {
                                type: 'const',
                                constVal: 'Test',
                            },
                            /**
                             * valueList string[]/stringify oder string?string?string?string stelle korreliert mit setList  {input_sel}
                             */
                            //valueList: { type: 'const', constVal: 'home?butter' },
                            /**
                             * setList: {id:Datenpunkt, value: zu setzender Wert}[] bzw. stringify  oder ein String nach dem Muster datenpunkt?Wert|Datenpunkt?Wert {input_sel}
                             */
                            //setList: { type: 'const', constVal: '0_userdata.0.test?1|0_userdata.0.test?2' },
                        },
                    },
                    {
                        role: 'text.list',
                        type: 'input_sel',
                        dpInit: '',
            
                        data: {
                            entityInSel: {
                                value: {
                                    type: 'triggered',
                                    dp: '0_userdata.0.statesTest',
                                },
                                decimal: undefined,
                                factor: undefined,
                                unit: undefined,
                            },
                            headline: {
                                type: 'const',
                                constVal: 'Test',
                            },
                            /**
                             * valueList string[]/stringify oder string?string?string?string stelle korreliert mit setList  {input_sel}
                             */
                            //valueList: { type: 'const', constVal: 'home?butter' },
                            /**
                             * setList: {id:Datenpunkt, value: zu setzender Wert}[] bzw. stringify  oder ein String nach dem Muster datenpunkt?Wert|Datenpunkt?Wert {input_sel}
                             */
                            //setList: { type: 'const', constVal: '0_userdata.0.test?1|0_userdata.0.test?2' },
                        },
                    },
                    {
                        role: 'text.list',
                        type: 'input_sel',
                        dpInit: '',
            
                        data: {
                            entityInSel: {
                                value: {
                                    type: 'triggered',
                                    dp: '0_userdata.0.statesTest',
                                },
                                decimal: undefined,
                                factor: undefined,
                                unit: undefined,
                            },
                            headline: {
                                type: 'const',
                                constVal: 'Test',
                            },
                            /**
                             * valueList string[]/stringify oder string?string?string?string stelle korreliert mit setList  {input_sel}
                             */
                            //valueList: { type: 'const', constVal: 'home?butter' },
                            /**
                             * setList: {id:Datenpunkt, value: zu setzender Wert}[] bzw. stringify  oder ein String nach dem Muster datenpunkt?Wert|Datenpunkt?Wert {input_sel}
                             */
                            //setList: { type: 'const', constVal: '0_userdata.0.test?1|0_userdata.0.test?2' },
                        },
                    },
                    {
                        role: 'button',
                        type: 'button',
                        dpInit: '',
            
                        data: {
                            color: {
                                true: {
                                    type: 'const',
                                    constVal: Color.HMIOn,
                                },
                                false: undefined,
                                scale: undefined,
                            },
                            icon: {
                                true: {
                                    value: { type: 'const', constVal: 'arrow-up' },
                                    color: { type: 'const', constVal: Color.Blue },
                                },
                                false: {
                                    value: { type: 'const', constVal: 'fan' },
                                    color: { type: 'const', constVal: Color.Red },
                                },
                                scale: undefined,
                                maxBri: undefined,
                                minBri: undefined,
                            },
                            entity1: {
                                value: {
                                    type: 'const',
                                    constVal: true,
                                },
                                decimal: undefined,
                                factor: undefined,
                                unit: undefined,
                            },
                            text: {
                                true: undefined,
                                false: undefined,
                            },
                        },
                    },
                    {
                        role: 'indicator',
                        type: 'button',
                        dpInit: '',
            
                        data: {
                            color: {
                                true: {
                                    type: 'const',
                                    constVal: Color.HMIOn,
                                },
                                false: undefined,
                                scale: undefined,
                            },
                            icon: {
                                true: {
                                    value: { type: 'const', constVal: 'fan' },
                                    color: { type: 'const', constVal: Color.Blue },
                                },
                                false: {
                                    value: { type: 'const', constVal: 'fan' },
                                    color: { type: 'const', constVal: Color.Red },
                                },
                                scale: undefined,
                                maxBri: undefined,
                                minBri: undefined,
                            },
                            entity1: {
                                value: { type: 'state', dp: '0_userdata.0.example_state' },
                                decimal: undefined,
                                factor: undefined,
                                unit: undefined,
                            },
                            text: {
                                true: undefined,
                                false: undefined,
                            },
                        },
                    },
                    {
                        role: 'indicator',
                        type: 'button',
                        dpInit: '',
            
                        data: {
                            color: {
                                true: {
                                    type: 'const',
                                    constVal: Color.HMIOn,
                                },
                                false: undefined,
                                scale: undefined,
                            },
                            icon: {
                                true: {
                                    value: { type: 'const', constVal: 'fan' },
                                    color: { type: 'const', constVal: Color.Blue },
                                },
                                false: {
                                    value: { type: 'const', constVal: 'fan' },
                                    color: { type: 'const', constVal: Color.Red },
                                },
                                scale: undefined,
                                maxBri: undefined,
                                minBri: undefined,
                            },
                            entity1: {
                                value: { type: 'state', dp: '0_userdata.0.example_state' },
                                decimal: undefined,
                                factor: undefined,
                                unit: undefined,
                            },
                            text: {
                                true: undefined,
                                false: undefined,
                            },
                        },
                    },
                    {
                        role: 'indicator',
                        type: 'button',
                        dpInit: '',
            
                        data: {
                            color: {
                                true: {
                                    type: 'const',
                                    constVal: Color.HMIOn,
                                },
                                false: undefined,
                                scale: undefined,
                            },
                            icon: {
                                true: {
                                    value: { type: 'const', constVal: 'fan' },
                                    color: { type: 'const', constVal: Color.Blue },
                                },
                                false: {
                                    value: { type: 'const', constVal: 'fan' },
                                    color: { type: 'const', constVal: Color.Red },
                                },
                                scale: undefined,
                                maxBri: undefined,
                                minBri: undefined,
                            },
                            entity1: {
                                value: { type: 'state', dp: '0_userdata.0.example_state' },
                                decimal: undefined,
                                factor: undefined,
                                unit: undefined,
                            },
                            text: {
                                true: undefined,
                                false: undefined,
                            },
                        },
                    },
                    {
                        role: 'indicator',
                        type: 'button',
                        dpInit: '',
            
                        data: {
                            color: {
                                true: {
                                    type: 'const',
                                    constVal: Color.HMIOn,
                                },
                                false: undefined,
                                scale: undefined,
                            },
                            icon: {
                                true: {
                                    value: { type: 'const', constVal: 'fan' },
                                    color: { type: 'const', constVal: Color.Blue },
                                },
                                false: {
                                    value: { type: 'const', constVal: 'fan' },
                                    color: { type: 'const', constVal: Color.Red },
                                },
                                scale: undefined,
                                maxBri: undefined,
                                minBri: undefined,
                            },
                            entity1: {
                                value: { type: 'state', dp: '0_userdata.0.example_state' },
                                decimal: undefined,
                                factor: undefined,
                                unit: undefined,
                            },
                            text: {
                                true: undefined,
                                false: undefined,
                            },
                        },
                    },
                    {
                        role: 'indicator',
                        type: 'button',
                        dpInit: '',
            
                        data: {
                            color: {
                                true: {
                                    type: 'const',
                                    constVal: Color.HMIOn,
                                },
                                false: undefined,
                                scale: undefined,
                            },
                            icon: {
                                true: {
                                    value: { type: 'const', constVal: 'fan' },
                                    color: { type: 'const', constVal: Color.Blue },
                                },
                                false: {
                                    value: { type: 'const', constVal: 'fan' },
                                    color: { type: 'const', constVal: Color.Red },
                                },
                                scale: undefined,
                                maxBri: undefined,
                                minBri: undefined,
                            },
                            entity1: {
                                value: { type: 'state', dp: '0_userdata.0.example_state' },
                                decimal: undefined,
                                factor: undefined,
                                unit: undefined,
                            },
                            text: {
                                true: undefined,
                                false: undefined,
                            },
                        },
                    },
                    {
                        role: 'indicator',
                        type: 'button',
                        dpInit: '',
            
                        data: {
                            color: {
                                true: {
                                    type: 'const',
                                    constVal: Color.HMIOn,
                                },
                                false: undefined,
                                scale: undefined,
                            },
                            icon: {
                                true: {
                                    value: { type: 'const', constVal: 'fan' },
                                    color: { type: 'const', constVal: Color.Blue },
                                },
                                false: {
                                    value: { type: 'const', constVal: 'fan' },
                                    color: { type: 'const', constVal: Color.Red },
                                },
                                scale: undefined,
                                maxBri: undefined,
                                minBri: undefined,
                            },
                            entity1: {
                                value: { type: 'state', dp: '0_userdata.0.example_state' },
                                decimal: undefined,
                                factor: undefined,
                                unit: undefined,
                            },
                            text: {
                                true: undefined,
                                false: undefined,
                            },
                        },
                    },
                ],
                config: {
                    card: 'cardThermo',
                    data: {
                        headline: {
                            type: 'const',
                            constVal: 'headline',
                        },
                        mixed2: {
                            value: {
                                type: 'const',
                                constVal: '20',
                            },
                        },
                        unit: {
                            type: 'const',
                            constVal: '°C',
                        },
                        mixed1: {
                            value: {
                                type: 'const',
                                constVal: 'H1',
                            },
                        },
                        mixed3: {
                            value: {
                                type: 'const',
                                constVal: 'H2',
                            },
                        },
                        minTemp: {
                            type: 'const',
                            constVal: '10',
                        },
                        maxTemp: {
                            type: 'const',
                            constVal: '60',
                        },
                        tempStep: {
                            type: 'const',
                            constVal: '5',
                        },
                        set1: { type: 'state', dp: '0_userdata.0.number1' },
                        mixed4: {
                            value: {
                                type: 'const',
                                constVal: '20',
                            },
                        },
                    },
                },
                items: undefined,
                useColor: false,
            };
            

            oder was einfaches von @TT-Tom

            const pageFahrplanRoutes: pages.PageBaseConfig = {
                card: 'cardEntities',
                dpInit: 'fahrplan.0.0',
                uniqueID: 'fahrplanrouten',
                template: 'entities.fahrplan.routes',
            };
            
            Rene55R Offline
            Rene55R Offline
            Rene55
            schrieb am zuletzt editiert von
            #6797

            @ticaki Ich hatte deinen "Hilferuf" schon gesehen. Habe aber noch keinen Schimmer von React - bin aber gerade dabei, mich schlau zu machen. Aber hier werden dann komplette Sites behandelt, die mit ioBroker nichts zu tun haben. Daher so schleppend, mich auf Stand zu bringen.
            Und streiken tu ich so schnell auch nicht - eher Flinte ==> Korn.
            Wenn ich klüger bin müssen wir uns nochmal unterhalten, damit ich deine Idee vom Frontend auch so ein bisschen reinkriege.

            Host: Fujitsu Intel(R) Pentium(R) CPU G4560T, 32 GB RAM, Proxmox 8.x + lxc Ubuntu 22.04
            ioBroker (8 GB RAM) Node.js: 20.19.1, NPM: 10.8.2, js-Controller: 7.0.6, Admin: 7.6.3
            Wetterstation: Froggit WH3000SE V1.6.6

            T 1 Antwort Letzte Antwort
            1
            • Rene55R Rene55

              @ticaki Ich hatte deinen "Hilferuf" schon gesehen. Habe aber noch keinen Schimmer von React - bin aber gerade dabei, mich schlau zu machen. Aber hier werden dann komplette Sites behandelt, die mit ioBroker nichts zu tun haben. Daher so schleppend, mich auf Stand zu bringen.
              Und streiken tu ich so schnell auch nicht - eher Flinte ==> Korn.
              Wenn ich klüger bin müssen wir uns nochmal unterhalten, damit ich deine Idee vom Frontend auch so ein bisschen reinkriege.

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

              @rene55
              Hab dich mal im Discord angeschrieben, wegen Teammeeting heute 🙂 Geht um die Richtung, also nix zu spezifisches.

              Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

              Spenden

              1 Antwort Letzte Antwort
              3
              • ArmilarA Armilar

                @oochrisoo

                Sieht tatsächlich nach einem Hardwaredefekt aus. Die Original Firmware kannst du nicht zurückflashen. Mir ist zumindest kein Weg bekannt...

                Würde es dennoch zurücksenden als defekt...

                O Offline
                O Offline
                oOchrisOo
                schrieb am zuletzt editiert von
                #6799

                @armilar
                Danke für die schnelle Rückmeldung,
                Versuchs mal , neue ist schon unterwegs 😊

                1 Antwort Letzte Antwort
                0
                • ArmilarA Armilar

                  Update v4.5.0

                  acb8351a-2ce5-452e-8968-f375feff8bd8-image.png

                  Nachdem es heute zu einem Bug mit dem "BETA"-JS-Adapter v8.9.0 heute kam, haben wir uns kurzfristig entschlossen, das Release v4.5.0 mit dem Bugfix und einer Erweiterung der TFT zu veröffentlichen.


                  Wer also diese JS-Adapter Version geladen hat, kommt nicht an diesem Update vorbei.

                  https://github.com/joBr99/nspanel-lovelace-ui/blob/main/ioBroker/NsPanelTs.ts

                  Unteren Teil austauschen ab:
                  6848e21f-0ecb-4351-8326-6c023e0ea5f7-image.png


                  Das Service Menü hat einen weiteren Eintrag erhalten. Mit diesem kann der Einfache Screensaver (siehe Bilder unten) umgeschaltet werden.
                  Zeilen 425 bis 822 austauschen


                  Die Firmware sollte in der Tasmota-Konsole mit (Achtung neue URL)

                  FlashNextion http://nspanel.de/nspanel-4.5.0.tft
                  

                  aktualisiert werden.


                  Der neue "Einfache Screensaver":
                  f31d6ffb-b782-4561-8b0e-a38885577ab6-image.png
                  ist eine Version mit stark vergrößerten Elementen. Die beiden Relais sind hierbei nur noch als Balken (keine Icons) im unteren Teil zu sehen.

                  Außerdem gibt es eine cardGrid3 mit 4 Steuerelementen:
                  a3dcfcb4-dfad-48cd-bd84-f649b65c3bf9-image.png

                  Die Variable unterscheidet sich lediglich durch den type cardGrid3 und das max. 4 pageItems möglich sind

                  let Buero_Seite_2: PageType = 
                  {
                      'type': 'cardGrid3',
                      'heading': 'Büro 2',
                      'useColor': true,
                      'items': [
                          { id: 'alias.0.NSPanel_1.Schreibtischlampe', name: 'Schreibtisch'},
                          { id: 'alias.0.NSPanel_1.Deckenbeleuchtung', name: 'Deckenlampe'},
                          { id: 'alias.0.NSPanel_1.TestFenster', offColor: MSGreen, onColor: MSRed, name: 'Büro Fenster'},
                          { id: 'alias.0.NSPanel_1.Luftreiniger', icon: 'power', offColor: MSRed, onColor: MSGreen},
                      ]
                  };
                  

                  Es gibt noch eine weitere Neuerung, in der ein 3. Icon im pageItem für die Rollos (Alias Channel: blinds) genutzt werden kann. Diese wird jedoch im Wiki beschrieben.


                  Viel Spaß mit dem neuen Release

                  @ticaki, @TT-Tom und Armilar

                  Chris_71C Offline
                  Chris_71C Offline
                  Chris_71
                  schrieb am zuletzt editiert von
                  #6800

                  Die Firmware sollte in der Tasmota-Konsole mit (Achtung neue URL)

                  FlashNextion http://nspanel.de/nspanel-4.5.0.tft
                  

                  aktualisiert werden.

                  Hi,
                  gibt es auch ein Update für die US Version Portrait und Landscape ?

                  ArmilarA 2 Antworten Letzte Antwort
                  0
                  • Chris_71C Chris_71

                    Die Firmware sollte in der Tasmota-Konsole mit (Achtung neue URL)

                    FlashNextion http://nspanel.de/nspanel-4.5.0.tft
                    

                    aktualisiert werden.

                    Hi,
                    gibt es auch ein Update für die US Version Portrait und Landscape ?

                    ArmilarA Offline
                    ArmilarA Offline
                    Armilar
                    Most Active Forum Testing
                    schrieb am zuletzt editiert von
                    #6801

                    @chris_71

                    Du könntest es durchführen, dann hast du aber nur die 53 als 54

                    Die GUI - Änderungen sind noch nicht in der US... Der Bug durch den JS-Adapter jedoch behoben...

                    Irgendwie musste es gestern alles etwas schneller gehen als sonst 😊

                    Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                    https://github.com/joBr99/nspanel-lovelace-ui/wiki

                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                    1 Antwort Letzte Antwort
                    0
                    • Chris_71C Chris_71

                      Die Firmware sollte in der Tasmota-Konsole mit (Achtung neue URL)

                      FlashNextion http://nspanel.de/nspanel-4.5.0.tft
                      

                      aktualisiert werden.

                      Hi,
                      gibt es auch ein Update für die US Version Portrait und Landscape ?

                      ArmilarA Offline
                      ArmilarA Offline
                      Armilar
                      Most Active Forum Testing
                      schrieb am zuletzt editiert von Armilar
                      #6802

                      @chris_71 sagte in SONOFF NSPanel mit Lovelace UI:

                      gibt es auch ein Update für die US Version Portrait und Landscape ?

                      ist hinzugefügt (54/v4.5.0):

                      TFT EU

                      FlashNextion http://nspanel.de/nspanel-v4.5.0.tft
                      

                      TFT US-L

                      FlashNextion http://nspanel.de/nspanel-us-l-v4.5.0.tft
                      

                      TFT US-P

                      FlashNextion http://nspanel.de/nspanel-us-p-v4.5.0.tft
                      

                      Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                      https://github.com/joBr99/nspanel-lovelace-ui/wiki

                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                      Chris_71C 1 Antwort Letzte Antwort
                      2
                      • ArmilarA Armilar

                        @ilovegym

                        Habe alle Flash's mit Tasmota 14.4.1 gemacht.

                        Hast du es mal versucht mit:

                        Feste (statische) IP des NSPanels merken

                        Jetzt alles weitere in der Tasmota-Konsole ausführen:

                        backlog savedata 1; ipaddress1 0.0.0.0; savedata 0; restart 1
                        

                        nach dem Neustart

                        FlashNextion http://nspanel.de/nspanel-4.5.0.tft
                        

                        und dann, wenn durchgelaufen, wieder mit der gemerkten statischen IP einstellen

                        ipaddress1 192.168.X.X

                        F Offline
                        F Offline
                        Foradh 0
                        schrieb am zuletzt editiert von
                        #6803

                        @armilar sagte in SONOFF NSPanel mit Lovelace UI:

                        @ilovegym

                        Habe alle Flash's mit Tasmota 14.4.1 gemacht.

                        Hast du es mal versucht mit:

                        Feste (statische) IP des NSPanels merken

                        Jetzt alles weitere in der Tasmota-Konsole ausführen:

                        backlog savedata 1; ipaddress1 0.0.0.0; savedata 0; restart 1
                        

                        nach dem Neustart

                        FlashNextion http://nspanel.de/nspanel-4.5.0.tft
                        

                        und dann, wenn durchgelaufen, wieder mit der gemerkten statischen IP einstellen

                        ipaddress1 192.168.X.X

                        Hi Armilar, ich hatte ebenfalls das Problem dass der Flash mit dieser Fehlermeldung stehengeblieben ist.

                        BRY: Exception> 'type_error' - unsupported operand type(s) for <: 'nil' and 'int'
                        

                        Mit deinem Vorschlag die feste Ip mit dem Befehl temporär zu deaktivieren hat es ohne Problem funktioniert.
                        Könntest du mir erklären warum der Flash mit einer fest zugewiesenen IP fehlschlägt?

                        Vielen Dank vorab
                        Foradh

                        ArmilarA 1 Antwort Letzte Antwort
                        1
                        • F Foradh 0

                          @armilar sagte in SONOFF NSPanel mit Lovelace UI:

                          @ilovegym

                          Habe alle Flash's mit Tasmota 14.4.1 gemacht.

                          Hast du es mal versucht mit:

                          Feste (statische) IP des NSPanels merken

                          Jetzt alles weitere in der Tasmota-Konsole ausführen:

                          backlog savedata 1; ipaddress1 0.0.0.0; savedata 0; restart 1
                          

                          nach dem Neustart

                          FlashNextion http://nspanel.de/nspanel-4.5.0.tft
                          

                          und dann, wenn durchgelaufen, wieder mit der gemerkten statischen IP einstellen

                          ipaddress1 192.168.X.X

                          Hi Armilar, ich hatte ebenfalls das Problem dass der Flash mit dieser Fehlermeldung stehengeblieben ist.

                          BRY: Exception> 'type_error' - unsupported operand type(s) for <: 'nil' and 'int'
                          

                          Mit deinem Vorschlag die feste Ip mit dem Befehl temporär zu deaktivieren hat es ohne Problem funktioniert.
                          Könntest du mir erklären warum der Flash mit einer fest zugewiesenen IP fehlschlägt?

                          Vielen Dank vorab
                          Foradh

                          ArmilarA Offline
                          ArmilarA Offline
                          Armilar
                          Most Active Forum Testing
                          schrieb am zuletzt editiert von Armilar
                          #6804

                          @foradh-0 sagte in SONOFF NSPanel mit Lovelace UI:

                          Mit deinem Vorschlag die feste Ip mit dem Befehl temporär zu deaktivieren hat es ohne Problem funktioniert.
                          Könntest du mir erklären warum der Flash mit einer fest zugewiesenen IP fehlschlägt?

                          Nicht wirklich. Der Vorschlag stammt aus dem gesammelten Fundus ehemaliger Flash-Probleme und tritt nur sehr selten unter mir unbekannten Bedingungen auf... 😊

                          Wenn es eine Lösung zu einem Tasmota-Problem gibt, nehmen wir lediglich die Themen im Bereich FAQ-Tasmota im Wiki auf und haben einen potenziellen Lösungsansatz.

                          Bei mir ist das ebenfalls einmal vorgekommen und bei mir hat jedes Tasmota-Device eine statische IP. Ist allerdings schon sehr lange her. Ich konnte es auch nicht wieder reproduzieren.

                          Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                          https://github.com/joBr99/nspanel-lovelace-ui/wiki

                          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

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

                            Hab ein Script geschrieben dass es für Leute mit Wetterstationen ermöglicht den Wind so anzuzeigen:
                            Rechts das Icon:
                            IMG_0769.jpeg

                            Das Skript erzeugt einen Datenpunkt unter userdata, diesen und natürlich woher die Richtung kommt (0-360) muß eingestellt werden.

                            Script (Typescript):

                            // 0 for alignment to north, for relative alignment to the panel enter the deviation to north,
                            const directionOfPanel = 0;
                            
                            // Arrow shape can be set here
                            const arrowToUse = 'bold-outline'
                            const createTheState = true;
                            
                            const cDataFrom = 'sainlogic.0.weather.current.winddir';
                            const cDataTo = '0_userdata.0.NSPanel.1.usr.windrichtung_zu_icon';
                            
                            async function main() {
                                if (createTheState) {
                                    await extendObjectAsync(cDataTo, {
                                        type: 'state',
                                        common: {
                                            type: 'string', 
                                            role:'text', 
                                            read: true, 
                                            write: false, 
                                            def: '',
                                            name: `Nspanel icon for wind direction (N - ${directionOfPanel}°)`,
                                        }
                                    });
                                    await sleep(10);
                                }
                                setDirection( {state:{val: getState(cDataFrom).val}});
                                on(cDataFrom , setDirection);
                            }
                            
                            function setDirection(obj) {
                                let dir: number = (obj.state.val || 0)
                                dir = (dir - directionOfPanel + 360) % 360
                            
                                let icon = 'arrow-'
                                let icontop: 'bottom-' | 'top-' | 'down-' | 'up-' | '' = ''
                                let iconleft: 'left-' | 'right-' | '' = ''
                                if (dir > 292.5 || dir < 67.5) {
                                    icontop = 'top-'
                                }
                                else if(dir < 247.5 && dir > 112.5) {
                                    icontop = 'bottom-'
                                }
                                if (dir < 337.5 && dir > 212.5) {
                                    iconleft = 'left-'
                                }
                                else if((dir < 157.5 && dir > 32.5)) {
                                    iconleft = 'right-'
                                }
                                if (iconleft === '' && icontop) {
                                    if (icontop === 'top-') {
                                        icontop = 'up-';
                                    } else {
                                         icontop = 'down-';
                                    }
                            
                                }
                                icon += icontop + iconleft + arrowToUse
                                
                                setState(cDataTo, icon, true)
                            }
                            
                            main();
                            
                            
                            //bottomScreensaverEntity
                                       {
                                            ScreensaverEntity: 'sainlogic.0.weather.current.windgustspeed',
                                            ScreensaverEntityFactor: 1,
                                            ScreensaverEntityDecimalPlaces: 0,
                                            ScreensaverEntityIconOn: '0_userdata.0.NSPanel.1.usr.windrichtung_zu_icon',
                                            ScreensaverEntityIconOff: null,
                                            ScreensaverEntityText: 'Wind',
                                            ScreensaverEntityUnitText: 'km/h',
                                            ScreensaverEntityIconColor: { val_min: 0, val_max: 150 },
                                        },
                            

                            Und wer ne etwas aufgebohrte Temperaturanzeige will:

                            //bottomScreensaverEntity
                                        {
                                            ScreensaverEntity: 'alias.0.zuhause.aussen.Außentemperatur_.ACTUAL',
                                            ScreensaverEntityFactor: 1,
                                            ScreensaverEntityDecimalPlaces: 1,
                                            ScreensaverEntityIconOn: 'thermometer',
                                            ScreensaverEntityIconOff: null,
                                            ScreensaverEntityText: 'Außen',
                                            ScreensaverEntityUnitText: '°C',
                                            ScreensaverEntityIconColor: { val_min: -20, val_max: 40, val_best: 20 },
                                            ScreensaverEntityIconSelect: [
                                                {icon: 'sun-thermometer', value:40},
                                                {icon: 'sun-thermometer-outline', value: 35},
                                                {icon: 'thermometer-high', value: 30},
                                                {icon: 'thermometer', value: 25},
                                                {icon: 'thermometer-low', value: 15},
                                                {icon: 'snowflake-alert', value: 1},
                                                {icon: 'snowflake-thermometer', value: -2},
                                                {icon: 'snowflake', value: -10},
                                                ]
                                        },
                            

                            Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                            Spenden

                            1 Antwort Letzte Antwort
                            3
                            • C Offline
                              C Offline
                              christian_ffm
                              schrieb am zuletzt editiert von christian_ffm
                              #6806

                              Hi,
                              bei mir kompiliert das NSPanelTs.ts Script nicht, entsprechend wartet auch das Display auf Content. System ist up to date. Die Datei ist original, nur result und send datenpunkte sind in der config geändert. Kann mir jemand einen Hinweis geben, was bei mir fehlt? Danke euch im Vorraus!

                              script.js.global.Sonoffpanel1: TypeScript compilation failed:async export function Init_momentjs() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function CheckConfigParameters() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function InitIoBrokerInfo() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function CheckDebugMode() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function CheckMQTTPorts() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function Init_Release() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function InitConfigParameters() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function Init_ScreensaverAdvanced() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function Init_ActivePageData() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function Init_Screensaver_Backckground_Color_Switch() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function Init_bExit_Page_Change() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function Init_Dimmode_Trigger() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function InitActiveBrightness() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function InitRebootPanel() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function InitUpdateDatapoints() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function Init_Relays() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function InitAlternateMRIconsSize() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function InitDateformat() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function SubscribeMRIcons() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function CreateWeatherAlias() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function InitPageNavi() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function InitWeatherForecast() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function InitDimmode() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function Calc_Consumption(Brightness: number, Relays: number | undefined) { ^ERROR: 'export' modifier must precede 'async' modifier.async export function CountRelaysOn(Path: string): Promise<number> { ^ERROR: 'export' modifier must precede 'async' modifier.async export function DetermineDimBrightness(Path: string) { ^ERROR: 'export' modifier must precede 'async' modifier.async export function DetermineScreensaverDimmode(timeDimMode: NSPanel.DimMode): Promise<number> { ^ERROR: 'export' modifier must precede 'async' modifier.async export function InitMeanPowerConsumption() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function InitPopupNotify() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function get_locales() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function get_locales_servicemenu() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function check_updates() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function get_panel_update_data() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function SendToPanel(val: NSPanel.Payload | NSPanel.Payload[]) { ^ERROR: 'export' modifier must precede 'async' modifier.async export function createAutoMediaAlias(id: string, mediaDevice: string, adapterPlayerInstance: NSPanel.adapterPlayerInstanceType) { ^ERROR: 'export' modifier must precede 'async' modifier.async export function createAutoAlarmAlias(id: string, nsPath: string) { ^ERROR: 'export' modifier must precede 'async' modifier.async export function createAutoUnlockAlias(id: string, dpPath: string) { ^ERROR: 'export' modifier must precede 'async' modifier.async export function createAutoQRAlias(id: string, dpPath: string) { ^ERROR: 'export' modifier must precede 'async' modifier.
                              

                              Screenshot 2025-02-01 020030.png

                              T 1 Antwort Letzte Antwort
                              0
                              • C christian_ffm

                                Hi,
                                bei mir kompiliert das NSPanelTs.ts Script nicht, entsprechend wartet auch das Display auf Content. System ist up to date. Die Datei ist original, nur result und send datenpunkte sind in der config geändert. Kann mir jemand einen Hinweis geben, was bei mir fehlt? Danke euch im Vorraus!

                                script.js.global.Sonoffpanel1: TypeScript compilation failed:async export function Init_momentjs() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function CheckConfigParameters() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function InitIoBrokerInfo() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function CheckDebugMode() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function CheckMQTTPorts() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function Init_Release() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function InitConfigParameters() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function Init_ScreensaverAdvanced() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function Init_ActivePageData() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function Init_Screensaver_Backckground_Color_Switch() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function Init_bExit_Page_Change() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function Init_Dimmode_Trigger() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function InitActiveBrightness() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function InitRebootPanel() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function InitUpdateDatapoints() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function Init_Relays() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function InitAlternateMRIconsSize() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function InitDateformat() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function SubscribeMRIcons() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function CreateWeatherAlias() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function InitPageNavi() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function InitWeatherForecast() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function InitDimmode() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function Calc_Consumption(Brightness: number, Relays: number | undefined) { ^ERROR: 'export' modifier must precede 'async' modifier.async export function CountRelaysOn(Path: string): Promise<number> { ^ERROR: 'export' modifier must precede 'async' modifier.async export function DetermineDimBrightness(Path: string) { ^ERROR: 'export' modifier must precede 'async' modifier.async export function DetermineScreensaverDimmode(timeDimMode: NSPanel.DimMode): Promise<number> { ^ERROR: 'export' modifier must precede 'async' modifier.async export function InitMeanPowerConsumption() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function InitPopupNotify() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function get_locales() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function get_locales_servicemenu() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function check_updates() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function get_panel_update_data() { ^ERROR: 'export' modifier must precede 'async' modifier.async export function SendToPanel(val: NSPanel.Payload | NSPanel.Payload[]) { ^ERROR: 'export' modifier must precede 'async' modifier.async export function createAutoMediaAlias(id: string, mediaDevice: string, adapterPlayerInstance: NSPanel.adapterPlayerInstanceType) { ^ERROR: 'export' modifier must precede 'async' modifier.async export function createAutoAlarmAlias(id: string, nsPath: string) { ^ERROR: 'export' modifier must precede 'async' modifier.async export function createAutoUnlockAlias(id: string, dpPath: string) { ^ERROR: 'export' modifier must precede 'async' modifier.async export function createAutoQRAlias(id: string, dpPath: string) { ^ERROR: 'export' modifier must precede 'async' modifier.
                                

                                Screenshot 2025-02-01 020030.png

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

                                @christian_ffm

                                Das Hauptscript darf NICHT in global sein 🙂 Iconselector mußt du in global haben, du hast jedoch das Hauptscript dort angelegt.

                                Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                                Spenden

                                C 1 Antwort Letzte Antwort
                                2
                                • T ticaki

                                  @christian_ffm

                                  Das Hauptscript darf NICHT in global sein 🙂 Iconselector mußt du in global haben, du hast jedoch das Hauptscript dort angelegt.

                                  C Offline
                                  C Offline
                                  christian_ffm
                                  schrieb am zuletzt editiert von
                                  #6808

                                  @ticaki danke für die schnelle Antwort und Lösung! Läuft direkt. Danke dir!

                                  1 Antwort Letzte Antwort
                                  0
                                  • D Offline
                                    D Offline
                                    DarkSoul
                                    schrieb am zuletzt editiert von DarkSoul
                                    #6809

                                    Moin Gemeinde.

                                    Nachdem ich mit tatkräftiger Unterstützung hier meine NSPanel zum laufen bekommen habe, danke noch mal dafür, tauchen nun neue Problemchen auf.
                                    Ich wollte meine 2 Sonos Lautsprecher über die Media Card bedienen. Soweit läuft das auch sehr gut.
                                    Nur kann ich leider nur einen Lautsprecher ansteuern. Auf der Auswahlseite tauchen beide auf, spielen tut nur der den ich unter medieDevice fest eingestellt habe.
                                    Der Scriptteil:

                                    };
                                    let Sonos: PageType =
                                    {
                                        'type': 'cardMedia',
                                        'heading': 'Sonos',
                                        'items': [{   
                                                    id: AliasPath + 'Media.PlayerSonos', 
                                                    adapterPlayerInstance: 'sonos.0.',
                                                    mediaDevice: '192_168_1_150',
                                                    speakerList: ['Büro','Mobil'],
                                                    playList: ['Freitag_Nachmittagsmix','BestOf01','MamaMia'],
                                                    colorMediaIcon: colorSonos,
                                                    colorMediaArtist: Yellow,
                                                    colorMediaTitle: Yellow,
                                                    alwaysOnDisplay: true,
                                                    autoCreateALias: true
                                                 }]
                                    };
                                    

                                    Ich habe mich mit den Eintragungen an den Text in der Anleitung gehalten:
                                    "
                                    Speaker Liste (Array speakerList)
                                    Diese List sollte die Wiedergabegeräte des primären Sonos und ggfs. optionale Geräte aus dem Datenpunkt sonos.0.root.<DEVICE_IP>.members enthalten.
                                    "
                                    und die Eintragung aus diesem DP übernommen.
                                    Aber wie gesagt, tauchen auch als Auswahl auf, kann sie aber nicht auswählen?!?!
                                    Sehr seltsam...
                                    Jemand ne Idee?

                                    Dank euch

                                    Mist der sollte doch an den Lovelace Haupt Fred. Kann mal ein Admin ihn hinten dran hängen?

                                    1 Antwort Letzte Antwort
                                    0
                                    • ArmilarA Armilar

                                      @chris_71 sagte in SONOFF NSPanel mit Lovelace UI:

                                      gibt es auch ein Update für die US Version Portrait und Landscape ?

                                      ist hinzugefügt (54/v4.5.0):

                                      TFT EU

                                      FlashNextion http://nspanel.de/nspanel-v4.5.0.tft
                                      

                                      TFT US-L

                                      FlashNextion http://nspanel.de/nspanel-us-l-v4.5.0.tft
                                      

                                      TFT US-P

                                      FlashNextion http://nspanel.de/nspanel-us-p-v4.5.0.tft
                                      
                                      Chris_71C Offline
                                      Chris_71C Offline
                                      Chris_71
                                      schrieb am zuletzt editiert von
                                      #6810

                                      @armilar

                                      Nach dem Update vom TFT und dem Script fehlt nach dem Start die Beschriftung neben den Symbolen bzw. die Beschriftung ist sehr sehr blass.

                                      Beispielseite:

                                      Screenshot 2025-02-02 102134.jpg

                                      Erst nach einem Neustart des Panels wird es wieder "richtig" angezeigt.

                                      Screenshot 2025-02-02 102115.jpg

                                      Ne Idee woran das liegen kann ?

                                      ArmilarA 1 Antwort Letzte Antwort
                                      0
                                      • Chris_71C Chris_71

                                        @armilar

                                        Nach dem Update vom TFT und dem Script fehlt nach dem Start die Beschriftung neben den Symbolen bzw. die Beschriftung ist sehr sehr blass.

                                        Beispielseite:

                                        Screenshot 2025-02-02 102134.jpg

                                        Erst nach einem Neustart des Panels wird es wieder "richtig" angezeigt.

                                        Screenshot 2025-02-02 102115.jpg

                                        Ne Idee woran das liegen kann ?

                                        ArmilarA Offline
                                        ArmilarA Offline
                                        Armilar
                                        Most Active Forum Testing
                                        schrieb am zuletzt editiert von Armilar
                                        #6811

                                        @chris_71

                                        Wenn du etwas mehr Input zur Seitenvariable und zum Alias liefern könntest, würde ich die Glaskugel wieder weglegen 😉

                                        Oder hast du gar nichts verändert? Ist das ne EU oder ein US-L?

                                        Passiert das auch mit andere cardEntities?

                                        Würde mal vermuten, dass das ein US-L ist. Das interessante ist, dass es zu einer Verschiebung kommt. Der erste Screenshot sieht aus, als würde da eine EU-Version arbeiten und der zweite Screenshot sieht aus, als würden die Abstände auf der linken Seite wieder dir zusätzlichen 15px Versatz der US-L haben.

                                        Falls US-L, dann mache bitte zuerst nochmal das:

                                        FlashNextion http://nspanel.de/nspanel-us-l-v4.5.0.tft
                                        

                                        Und noch eine Frage 😊
                                        Was steht in dem Datenpunkt: 0_userdata.0.NSPanel.X.NSPanel_Version wenn es verblasst und was steht im Datenpunkt, wenn es korrekt dargestellt wird?

                                        EDIT:
                                        War das ne einmalige Sache? Oder tritt das häufiger auf?

                                        Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                                        https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                        Chris_71C 1 Antwort Letzte Antwort
                                        0
                                        • ArmilarA Armilar

                                          @chris_71

                                          Wenn du etwas mehr Input zur Seitenvariable und zum Alias liefern könntest, würde ich die Glaskugel wieder weglegen 😉

                                          Oder hast du gar nichts verändert? Ist das ne EU oder ein US-L?

                                          Passiert das auch mit andere cardEntities?

                                          Würde mal vermuten, dass das ein US-L ist. Das interessante ist, dass es zu einer Verschiebung kommt. Der erste Screenshot sieht aus, als würde da eine EU-Version arbeiten und der zweite Screenshot sieht aus, als würden die Abstände auf der linken Seite wieder dir zusätzlichen 15px Versatz der US-L haben.

                                          Falls US-L, dann mache bitte zuerst nochmal das:

                                          FlashNextion http://nspanel.de/nspanel-us-l-v4.5.0.tft
                                          

                                          Und noch eine Frage 😊
                                          Was steht in dem Datenpunkt: 0_userdata.0.NSPanel.X.NSPanel_Version wenn es verblasst und was steht im Datenpunkt, wenn es korrekt dargestellt wird?

                                          EDIT:
                                          War das ne einmalige Sache? Oder tritt das häufiger auf?

                                          Chris_71C Offline
                                          Chris_71C Offline
                                          Chris_71
                                          schrieb am zuletzt editiert von Chris_71
                                          #6812

                                          @armilar

                                          Ich habe am Script nur den Bereich vom Service Menü ausgetauscht und halt ab hier keine Konfig mehr - der Rest ist so geblieben.
                                          Die fehlende Beschriftung ist bei jedem cardEntities (auch beim Durchblättern der Seiten), sobald das Panel (EU Version) über Tasmota neu gestartet wird ist alles wieder i.O. auf allen Seiten.

                                          Wenn ich aber das Script anhalte und neu starte taucht der Fehler wieder auf, nur ein Reset schafft dann hier wieder abhilfe.

                                          Wenn es verblasst ist steht im Datenpunkt 0_userdata.0.NSPanel.X.NSPanel_Version "eu" auch nach dem Reset des Planels ändert es sich nicht.

                                          ArmilarA 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

                                          596

                                          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
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe