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

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

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. Hardware
  4. SONOFF NSPanel mit Lovelace UI

NEWS

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

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

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

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.
  • ArmilarA Armilar

    @australien

    weiter versuchen und vorher Tasmota rebooten...

    System Data Error! im Display heißt nur, dass der Nextion interne TFT CheckSum Test nicht erfolgreich ist, was ja auch stimmt, wenn nicht alles übertragen wurde...

    Gibt es eine Möglichkeit den kompletten Flash einmal zu leeren? Er bleibt ja immer bei 4784128 hängen.

    Nicht nötig, da mit neuem Flash immer eine Löschung passiert... Ist also kein Platz-Problem...

    Auch mal mit langsameren Geschwindigkeiten testen...

    FlashNextionAdv2 z.B. für 115200 baud

    A Online
    A Online
    australien
    schrieb am zuletzt editiert von
    #7624

    @armilar said in SONOFF NSPanel mit Lovelace UI:

    @australien

    weiter versuchen und vorher Tasmota rebooten...

    das habe ich gefühlt schon 100x gemacht mit FlashNextion, Adv0, Adv2

    immer das gleiche, wie gesagt bei einem neuen NSPanel gabe es keine Probleme.

    ArmilarA 1 Antwort Letzte Antwort
    0
    • A australien

      @armilar said in SONOFF NSPanel mit Lovelace UI:

      @australien

      weiter versuchen und vorher Tasmota rebooten...

      das habe ich gefühlt schon 100x gemacht mit FlashNextion, Adv0, Adv2

      immer das gleiche, wie gesagt bei einem neuen NSPanel gabe es keine Probleme.

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

      @australien

      zieh mal das orangefarbene Kabel ab und stecke es neu auf:

      7df521f6-08d8-4263-ae05-29a7f092293f-image.png

      Da könnte der Wurm drin sein, wenn die Übertragung zwischen ESP32 und TFT abbricht... Zumal ein anderes ja auch funktioniert...

      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.

      A teletapiT 2 Antworten Letzte Antwort
      0
      • ArmilarA Armilar

        @australien

        zieh mal das orangefarbene Kabel ab und stecke es neu auf:

        7df521f6-08d8-4263-ae05-29a7f092293f-image.png

        Da könnte der Wurm drin sein, wenn die Übertragung zwischen ESP32 und TFT abbricht... Zumal ein anderes ja auch funktioniert...

        A Online
        A Online
        australien
        schrieb am zuletzt editiert von
        #7626

        @armilar bringt leider auch nichts.
        bleibt beim Update mit

        FlashNextionAdv0 http://nspanel.de/nspanel-v5.0.0.tft
        

        oder Adv0 oder ohne dem immer bei 4784128 stehen.

        ArmilarA 1 Antwort Letzte Antwort
        0
        • ArmilarA Armilar

          @australien

          zieh mal das orangefarbene Kabel ab und stecke es neu auf:

          7df521f6-08d8-4263-ae05-29a7f092293f-image.png

          Da könnte der Wurm drin sein, wenn die Übertragung zwischen ESP32 und TFT abbricht... Zumal ein anderes ja auch funktioniert...

          teletapiT Online
          teletapiT Online
          teletapi
          schrieb am zuletzt editiert von teletapi
          #7627

          @armilar oder @australien hat das gleiche problem wie ich mit meinem US panel. Das lässt sich pardou nicht auf diesem Weg mit der 4.95 oder der 5.00 in Landsscape (Porträt geht auch) flashen jede andere Version egal ob US oder EU lässt sich auf diesem Weg flashen nur die neusten nicht daher wähle ich beim Update die Möglichkeit das per Nextion Editor per RX/TX zu flashen das funktioniert ohne Probleme und dauert mit Löten gerade mal 5-10 Minuten.

          Dazu einen USB to Serial Adapter nutzen den man auch zum Tasmota flashen nutzt. Dann 5V und GND an den Stromanschluss des Display´s und RX an RX und TX an TX an dem extra RX/TX am TFT nicht an den vom ESP des NS Panels

          Und nicht vergessen am Adapter die 5V einstellen das Display brauch 5V

          Hier ein Bild vom US-Panel

          WhatsApp Bild 2025-08-18 um 03.00.11_5b7d692d.jpg

          Und hier eins vom EU Panel

          IMG_1886.JPG

          Und hier noch eins vom Adapter

          WhatsApp Bild 2025-09-19 um 12.34.55_a33f0f8f.jpg

          1 Antwort Letzte Antwort
          1
          • A australien

            @armilar bringt leider auch nichts.
            bleibt beim Update mit

            FlashNextionAdv0 http://nspanel.de/nspanel-v5.0.0.tft
            

            oder Adv0 oder ohne dem immer bei 4784128 stehen.

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

            @australien

            hier ist es etwas detaillierter beschrieben, wie das NSPanel-TFT direkt per Nextion Editor geflashed wird:

            https://github.com/Blackymas/NSPanel_HA_Blueprint/issues/166#issue-1524561202

            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.

            A 1 Antwort Letzte Antwort
            1
            • ArmilarA Armilar

              @welli

              sorry - ich hätte es mal testen sollen ;-)

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

              Tausche bitte den unteren Teil ab Zeile 988 aus der DEV aus... Dann sollte kein Fehler mehr kommen... :blush:

              W Offline
              W Offline
              welli
              schrieb am zuletzt editiert von
              #7629

              @armilar
              Habe dies jetzt mit den 2 Panels gemacht, mal schauen ob dies den Fehler behebt.
              Danke noch mal für den Support.

              W 1 Antwort Letzte Antwort
              0
              • ArmilarA Armilar

                @australien

                hier ist es etwas detaillierter beschrieben, wie das NSPanel-TFT direkt per Nextion Editor geflashed wird:

                https://github.com/Blackymas/NSPanel_HA_Blueprint/issues/166#issue-1524561202

                A Online
                A Online
                australien
                schrieb am zuletzt editiert von
                #7630

                @armilar @teletapi
                leider bringt das auch nichts, ab es mit Geschwindigkeiten von 19200 bis 115200 versucht, bleibt immer beim gleichen Speicherwert hängen.
                :(

                1 Antwort Letzte Antwort
                0
                • V Offline
                  V Offline
                  Venice
                  schrieb am zuletzt editiert von
                  #7631

                  Guten Morgen, ich habe seit einiger zeit diesen Fehler in meinem Log. Habt ihr eine Idee was das sein könnte?
                  error: javascript.0 (3090) script.js.NS_Panels.Panel_Erdgeschoss_1_0: existsObject has been called with id of type "object" but expects a string

                  T T 2 Antworten Letzte Antwort
                  0
                  • V Venice

                    Guten Morgen, ich habe seit einiger zeit diesen Fehler in meinem Log. Habt ihr eine Idee was das sein könnte?
                    error: javascript.0 (3090) script.js.NS_Panels.Panel_Erdgeschoss_1_0: existsObject has been called with id of type "object" but expects a string

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

                    @venice
                    version des scripts? Da müsste auch ne Zeilennummer hinter dem Fehler gestanden haben.

                    Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                    Spenden

                    arteckA 1 Antwort Letzte Antwort
                    0
                    • V Venice

                      Guten Morgen, ich habe seit einiger zeit diesen Fehler in meinem Log. Habt ihr eine Idee was das sein könnte?
                      error: javascript.0 (3090) script.js.NS_Panels.Panel_Erdgeschoss_1_0: existsObject has been called with id of type "object" but expects a string

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

                      @venice
                      Wann tritt der Fehler auf. Bei welcher Seite?
                      Welche Script Version und welche TFT Version??

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

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

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

                      1 Antwort Letzte Antwort
                      0
                      • W welli

                        @armilar
                        Habe dies jetzt mit den 2 Panels gemacht, mal schauen ob dies den Fehler behebt.
                        Danke noch mal für den Support.

                        W Offline
                        W Offline
                        welli
                        schrieb am zuletzt editiert von
                        #7634

                        @armilar,
                        Wollte dir noch mal Rückmeldung geben und dir sagen dass das Problem nicht mehr vorgekommen ist.
                        Danke für den Support.

                        1 Antwort Letzte Antwort
                        0
                        • Marc BergM Offline
                          Marc BergM Offline
                          Marc Berg
                          Most Active
                          schrieb am zuletzt editiert von
                          #7635

                          Meine Card für das Ein-/ Ausschalten des Gäste-WLAN-Zuganges und zur Darstellung des QR-Codes sieht so aus:

                          let WLAN:PageType=
                          {
                              'type': 'cardQR',
                              'heading': 'Gäste WLAN',
                              'subPage': true,
                              'parent': Start_Panel1,
                              'items': [
                          		{ id: "alias.0.NSPanel.1.GuestWifi",
                                      hidePassword: true, // true = Switch; false = Password
                                      hideEntity2: false // true = Switch or Password is hide
                                  }
                          	]
                          };
                          

                          Gibt es eine Möglichkeit, beim Ein-/Ausschalter (hideEntity2) dynamisch festzulegen, ob der Schalter dargestellt werden soll oder nicht?

                          NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+RabbitMQ+Grafana

                          Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

                          Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

                          1 Antwort Letzte Antwort
                          0
                          • T ticaki

                            @venice
                            version des scripts? Da müsste auch ne Zeilennummer hinter dem Fehler gestanden haben.

                            arteckA Offline
                            arteckA Offline
                            arteck
                            Developer Most Active
                            schrieb am zuletzt editiert von arteck
                            #7636

                            @ticaki sagemal ist es ein Bug oder soll so

                                    { id: 'alias.0.NSPanel.Garten.horstOnline', name: 'Status', offColor: Red, onColor: MSGreen, useValue: true, fontSize: 3}
                            

                            der alias klann offline und online sein.. wird auch angezeigt allerdings immer in der Farbe MSGreen.. würde bei offline das ding gerne in Rot haben

                            so ist der alias definiert

                            {
                              "_id": "alias.0.NSPanel.Garten.horstOnline.ACTUAL",
                              "common": {
                                "name": "ACTUAL",
                                "role": "state",
                                "type": "mixed",
                                "read": true,
                                "write": false,
                                "alias": {
                                  "id": "worx.0.2019501385029008727F.mower.online",
                                  "read": "val==true?\"online\":val==false?\"offline\":null"
                                }
                              },
                              "native": {},
                              "type": "state",
                              "acl": {
                                "object": 1638,
                                "state": 1638,
                                "owner": "system.user.admin",
                                "ownerGroup": "system.group.administrator"
                              },
                              "from": "system.adapter.admin.1",
                              "user": "system.user.admin",
                              "ts": 1758280070290
                            }
                            

                            zigbee hab ich, zwave auch, nuc's genauso und HA auch

                            T 1 Antwort Letzte Antwort
                            0
                            • arteckA arteck

                              @ticaki sagemal ist es ein Bug oder soll so

                                      { id: 'alias.0.NSPanel.Garten.horstOnline', name: 'Status', offColor: Red, onColor: MSGreen, useValue: true, fontSize: 3}
                              

                              der alias klann offline und online sein.. wird auch angezeigt allerdings immer in der Farbe MSGreen.. würde bei offline das ding gerne in Rot haben

                              so ist der alias definiert

                              {
                                "_id": "alias.0.NSPanel.Garten.horstOnline.ACTUAL",
                                "common": {
                                  "name": "ACTUAL",
                                  "role": "state",
                                  "type": "mixed",
                                  "read": true,
                                  "write": false,
                                  "alias": {
                                    "id": "worx.0.2019501385029008727F.mower.online",
                                    "read": "val==true?\"online\":val==false?\"offline\":null"
                                  }
                                },
                                "native": {},
                                "type": "state",
                                "acl": {
                                  "object": 1638,
                                  "state": 1638,
                                  "owner": "system.user.admin",
                                  "ownerGroup": "system.group.administrator"
                                },
                                "from": "system.adapter.admin.1",
                                "user": "system.user.admin",
                                "ts": 1758280070290
                              }
                              
                              T Nicht stören
                              T Nicht stören
                              ticaki
                              schrieb am zuletzt editiert von ticaki
                              #7637

                              @arteck

                              Kein Bug - bei dir ist das val = 'online' oder 'offline' das ist laut code... - ok also wenn nicht true ist es onColor

                              Codeausschnitt:

                                                   case 'info':
                                                          iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('gesture-tap-button');
                                                          iconId2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : iconId;
                              
                                                          buttonText = pageItem.buttonText !== undefined ? pageItem.buttonText : existsState(pageItem.id + '.BUTTONTEXT') ? getState(pageItem.id + '.BUTTONTEXT').val : 'PRESS';
                                                          if (existsState(pageItem.id + '.COLORDEC')) {
                                                              iconColor = getState(pageItem.id + '.COLORDEC').val;
                                                          } else {
                                                              if (val === true || val === 'true') {
                                                                  iconColor = GetIconColor(pageItem, false, useColors);
                                                              } else {
                                                                  iconColor = GetIconColor(pageItem, true, useColors);
                                                              }
                                                          }
                              

                              mit COLORDEC sollte es gehen, da muß aber die dec rein:

                              /**
                               * Converts an RGB color to a 16-bit 565 color format.
                               * 
                               * This function takes an RGB color object and converts it to a 16-bit 565 color format.
                               * 
                               * @function rgb_dec565
                               * @param {RGB} rgb - The RGB color object.
                               * @returns {number} The 16-bit 565 color value.
                               */
                              function rgb_dec565 (rgb: RGB): number {    //return ((Math.floor(rgb.red / 255 * 31) << 11) | (Math.floor(rgb.green / 255 * 63) << 5) | (Math.floor(rgb.blue / 255 * 31)));
                                  return ((rgb.red >> 3) << 11) | ((rgb.green >> 2) << 5) | (rgb.blue >> 3);
                              }
                              

                              Also nen Alias anlegen der COLORDEC heißt und die Farbe vorgeben mit der read Funktion mit schalten.

                              hm COLORDEC muß beschrieben sein, wenn ACTUAL aktualisiert wird - da ist kein delay auf dem Pfad soweit ich sehe.

                              Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                              Spenden

                              T 1 Antwort Letzte Antwort
                              0
                              • T ticaki

                                @arteck

                                Kein Bug - bei dir ist das val = 'online' oder 'offline' das ist laut code... - ok also wenn nicht true ist es onColor

                                Codeausschnitt:

                                                     case 'info':
                                                            iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('gesture-tap-button');
                                                            iconId2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : iconId;
                                
                                                            buttonText = pageItem.buttonText !== undefined ? pageItem.buttonText : existsState(pageItem.id + '.BUTTONTEXT') ? getState(pageItem.id + '.BUTTONTEXT').val : 'PRESS';
                                                            if (existsState(pageItem.id + '.COLORDEC')) {
                                                                iconColor = getState(pageItem.id + '.COLORDEC').val;
                                                            } else {
                                                                if (val === true || val === 'true') {
                                                                    iconColor = GetIconColor(pageItem, false, useColors);
                                                                } else {
                                                                    iconColor = GetIconColor(pageItem, true, useColors);
                                                                }
                                                            }
                                

                                mit COLORDEC sollte es gehen, da muß aber die dec rein:

                                /**
                                 * Converts an RGB color to a 16-bit 565 color format.
                                 * 
                                 * This function takes an RGB color object and converts it to a 16-bit 565 color format.
                                 * 
                                 * @function rgb_dec565
                                 * @param {RGB} rgb - The RGB color object.
                                 * @returns {number} The 16-bit 565 color value.
                                 */
                                function rgb_dec565 (rgb: RGB): number {    //return ((Math.floor(rgb.red / 255 * 31) << 11) | (Math.floor(rgb.green / 255 * 63) << 5) | (Math.floor(rgb.blue / 255 * 31)));
                                    return ((rgb.red >> 3) << 11) | ((rgb.green >> 2) << 5) | (rgb.blue >> 3);
                                }
                                

                                Also nen Alias anlegen der COLORDEC heißt und die Farbe vorgeben mit der read Funktion mit schalten.

                                hm COLORDEC muß beschrieben sein, wenn ACTUAL aktualisiert wird - da ist kein delay auf dem Pfad soweit ich sehe.

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

                                @ticaki
                                @arteck

                                Welche Rolle hat dein Channel? Vielleicht liegt da schon der Fehler.
                                Colordec muss ein Datenpunkt im Channel sein, der sollte auch triggern bei Änderung.

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

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

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

                                T 1 Antwort Letzte Antwort
                                0
                                • T TT-Tom

                                  @ticaki
                                  @arteck

                                  Welche Rolle hat dein Channel? Vielleicht liegt da schon der Fehler.
                                  Colordec muss ein Datenpunkt im Channel sein, der sollte auch triggern bei Änderung.

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

                                  @tt-tom

                                  Dann passt es ja, ich hab nicht den Pfad von COLORDEC geguckt sondern nur den von ACTUAL.

                                  das hier sieht aber "ist zwar falsch aber kompatible" aus:

                                                                  if (val === true || val === 'true') {
                                                                      iconColor = GetIconColor(pageItem, false, useColors);
                                                                  } else {
                                                                      iconColor = GetIconColor(pageItem, true, useColors);
                                                                  }
                                  

                                  EDIT:

                                  Welche Rolle hat dein Channel? Vielleicht liegt da schon der Fehler.

                                  da kommt als Wert online und offline die sind bei einem üblichen true vergleich immer wahr und bei einem === true Vergleich immer false.

                                  Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                                  Spenden

                                  T 1 Antwort Letzte Antwort
                                  0
                                  • T ticaki

                                    @tt-tom

                                    Dann passt es ja, ich hab nicht den Pfad von COLORDEC geguckt sondern nur den von ACTUAL.

                                    das hier sieht aber "ist zwar falsch aber kompatible" aus:

                                                                    if (val === true || val === 'true') {
                                                                        iconColor = GetIconColor(pageItem, false, useColors);
                                                                    } else {
                                                                        iconColor = GetIconColor(pageItem, true, useColors);
                                                                    }
                                    

                                    EDIT:

                                    Welche Rolle hat dein Channel? Vielleicht liegt da schon der Fehler.

                                    da kommt als Wert online und offline die sind bei einem üblichen true vergleich immer wahr und bei einem === true Vergleich immer false.

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

                                    @ticaki

                                    die Info rolle unterstütz nur Number und boolean.

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

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

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

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

                                      @arteck
                                      @TT-Tom

                                      Sry ich hab im Navzweig geguckt - Im normalen Zeig ist das anders - sry

                                      Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                                      Spenden

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

                                        @arteck
                                        So rumwühlen ergebnis - geht nicht

                                        Ändere hier den code:

                                        if (existsState(pageItem.id + '.ACTUAL') && pageItem.icon2 != undefined) {
                                                                // Read Alias Datapoint Objectdata
                                                                let obj = getObject(pageItem.id + ".ACTUAL");
                                                                // Read origin Datapoint Objectdata
                                                                if (existsState(obj.common.alias.id)) {
                                                                    let obj2 = getObject(obj.common.alias.id);
                                                                    // Register Origin Datapoint
                                                                    RegisterEntityWatcher(obj.common.alias.id);
                                                                    // Check Data-Type (This must be boolean)
                                                                    if (obj2.type === 'state' && obj2.common.type == "boolean") {
                                                                        if (Debug) log(getState(obj.common.alias.id).val, 'info');
                                                                        if (getState(obj.common.alias.id).val) {
                                                                            iconId = pageItem.icon != undefined ? Icons.GetIcon(pageItem.icon) : iconId;
                                                                            iconColor = pageItem.onColor != undefined ? rgb_dec565(pageItem.onColor) : iconColor;
                                                                        } else {
                                                                            iconId = pageItem.icon2 != undefined ? Icons.GetIcon(pageItem.icon2) : iconId;
                                                                            iconColor = pageItem.offColor != undefined ? rgb_dec565(pageItem.offColor) : iconColor;
                                                                        }
                                                                    }
                                                                }
                                                            }
                                        

                                        EDIT - das ist Käse drunter ist besser

                                                          if (existsState(pageItem.id + '.ACTUAL') && (pageItem.icon2 != undefined || pageItem.useValue)) {
                                                                // Read Alias Datapoint Objectdata
                                                                let obj = getObject(pageItem.id + ".ACTUAL");
                                                                // Read origin Datapoint Objectdata
                                                                if (existsState(obj.common.alias.id)) {
                                                                    let obj2 = getObject(obj.common.alias.id);
                                                                    // Register Origin Datapoint
                                                                    RegisterEntityWatcher(obj.common.alias.id);
                                                                    // Check Data-Type (This must be boolean)
                                                                    if (obj2.type === 'state' && obj2.common.type == "boolean") {
                                                                        if (Debug) log(getState(obj.common.alias.id).val, 'info');
                                                                        if (getState(obj.common.alias.id).val) {
                                                                            if (!pageItem.useValue) iconId = pageItem.icon != un defined ? Icons.GetIcon(pageItem.icon) : iconId;
                                                                            iconColor = pageItem.onColor != undefined ? rgb_dec565(pageItem.onColor) : iconColor;
                                                                        } else {
                                                                            if (!pageItem.useValue) iconId = pageItem.icon2 != undefined ? Icons.GetIcon(pageItem.icon2) : iconId;
                                                                            iconColor = pageItem.offColor != undefined ? rgb_dec565(pageItem.offColor) : iconColor;
                                                                        }
                                                                    }
                                                                }
                                                            }
                                        

                                        Käse ende :D

                                        Kopiere den if hier der aktuell oberhalb von ^der funktion steht, einfach drunter und füge das useValue in den If ^ wie da ein.

                                                        if (pageItem.useValue) {
                                                                if (pageItem.fontSize != undefined) {
                                                                    if (pageItem.suffixName == undefined) {
                                                                        iconId = optVal + '¬' + pageItem.fontSize;
                                                                    } else {
                                                                        iconId = optVal + pageItem.suffixName + '¬' + pageItem.fontSize;
                                                                    }
                                                                } else {
                                                                    iconId = optVal;
                                                                }
                                                            }
                                        

                                        EDIT2 - das müsste eigentlcih dann doch ein BUG sein - Armilar und TT-Tom sind da mehr drin als ich.

                                        Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                                        Spenden

                                        T 1 Antwort Letzte Antwort
                                        0
                                        • T ticaki

                                          @arteck
                                          So rumwühlen ergebnis - geht nicht

                                          Ändere hier den code:

                                          if (existsState(pageItem.id + '.ACTUAL') && pageItem.icon2 != undefined) {
                                                                  // Read Alias Datapoint Objectdata
                                                                  let obj = getObject(pageItem.id + ".ACTUAL");
                                                                  // Read origin Datapoint Objectdata
                                                                  if (existsState(obj.common.alias.id)) {
                                                                      let obj2 = getObject(obj.common.alias.id);
                                                                      // Register Origin Datapoint
                                                                      RegisterEntityWatcher(obj.common.alias.id);
                                                                      // Check Data-Type (This must be boolean)
                                                                      if (obj2.type === 'state' && obj2.common.type == "boolean") {
                                                                          if (Debug) log(getState(obj.common.alias.id).val, 'info');
                                                                          if (getState(obj.common.alias.id).val) {
                                                                              iconId = pageItem.icon != undefined ? Icons.GetIcon(pageItem.icon) : iconId;
                                                                              iconColor = pageItem.onColor != undefined ? rgb_dec565(pageItem.onColor) : iconColor;
                                                                          } else {
                                                                              iconId = pageItem.icon2 != undefined ? Icons.GetIcon(pageItem.icon2) : iconId;
                                                                              iconColor = pageItem.offColor != undefined ? rgb_dec565(pageItem.offColor) : iconColor;
                                                                          }
                                                                      }
                                                                  }
                                                              }
                                          

                                          EDIT - das ist Käse drunter ist besser

                                                            if (existsState(pageItem.id + '.ACTUAL') && (pageItem.icon2 != undefined || pageItem.useValue)) {
                                                                  // Read Alias Datapoint Objectdata
                                                                  let obj = getObject(pageItem.id + ".ACTUAL");
                                                                  // Read origin Datapoint Objectdata
                                                                  if (existsState(obj.common.alias.id)) {
                                                                      let obj2 = getObject(obj.common.alias.id);
                                                                      // Register Origin Datapoint
                                                                      RegisterEntityWatcher(obj.common.alias.id);
                                                                      // Check Data-Type (This must be boolean)
                                                                      if (obj2.type === 'state' && obj2.common.type == "boolean") {
                                                                          if (Debug) log(getState(obj.common.alias.id).val, 'info');
                                                                          if (getState(obj.common.alias.id).val) {
                                                                              if (!pageItem.useValue) iconId = pageItem.icon != un defined ? Icons.GetIcon(pageItem.icon) : iconId;
                                                                              iconColor = pageItem.onColor != undefined ? rgb_dec565(pageItem.onColor) : iconColor;
                                                                          } else {
                                                                              if (!pageItem.useValue) iconId = pageItem.icon2 != undefined ? Icons.GetIcon(pageItem.icon2) : iconId;
                                                                              iconColor = pageItem.offColor != undefined ? rgb_dec565(pageItem.offColor) : iconColor;
                                                                          }
                                                                      }
                                                                  }
                                                              }
                                          

                                          Käse ende :D

                                          Kopiere den if hier der aktuell oberhalb von ^der funktion steht, einfach drunter und füge das useValue in den If ^ wie da ein.

                                                          if (pageItem.useValue) {
                                                                  if (pageItem.fontSize != undefined) {
                                                                      if (pageItem.suffixName == undefined) {
                                                                          iconId = optVal + '¬' + pageItem.fontSize;
                                                                      } else {
                                                                          iconId = optVal + pageItem.suffixName + '¬' + pageItem.fontSize;
                                                                      }
                                                                  } else {
                                                                      iconId = optVal;
                                                                  }
                                                              }
                                          

                                          EDIT2 - das müsste eigentlcih dann doch ein BUG sein - Armilar und TT-Tom sind da mehr drin als ich.

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

                                          @ticaki sagte in SONOFF NSPanel mit Lovelace UI:

                                          if (existsState(pageItem.id + '.ACTUAL') && pageItem.icon2 != undefined) {

                                          die Funktion lauft bei der Konfiguration nicht da kein icon2 definiert ist.

                                          { id: 'alias.0.NSPanel.Garten.horstOnline', name: 'Status', offColor: Red, onColor: MSGreen, useValue: true, fontSize: 3}
                                          

                                          also läuft das normal durch

                                                          if (pageItem.useValue) {
                                                                  if (pageItem.fontSize != undefined) {
                                                                      if (pageItem.suffixName == undefined) {
                                                                          iconId = optVal + '¬' + pageItem.fontSize;
                                                                      } else {
                                                                          iconId = optVal + pageItem.suffixName + '¬' + pageItem.fontSize;
                                                                      }
                                                                  } else {
                                                                      iconId = optVal;
                                                                  }
                                                              }
                                          

                                          EDIT: Problem ist wirkliche der Text in ACTUAL
                                          EDIT2 bin jetzt am überlegen warum wir nicht COLORDEC da haben, ist doch die Info-rolle, diese Universell sein sollte.

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

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

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

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          747

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

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

                                          • Du hast noch kein Konto? Registrieren

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