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.
  • T TT-Tom

    @armilar @drloksoft

    ich kann dir auch weiterhelfen, muss nur zwd. mal Geld verdienen gehen bzw. die Welt retten 😉

    D Offline
    D Offline
    drloksoft
    schrieb am zuletzt editiert von
    #6505

    @tt-tom said in SONOFF NSPanel mit Lovelace UI:

    ich kann dir auch weiterhelfen, muss nur zwd. mal Geld verdienen gehen bzw. die Welt retten

    @TT-Tom, das mit der Welt retten kommt immer wieder dazwischen 🙂
    Ich lege mir die Karten mit der TermoCard, vielleicht liegt es an meinem grundsätzlichem Verstädnisproblem, wie die Karten mit den Datenpunkten interagieren, allerdings ist meine Idee die Ziffern, die die Termokarte unter MODE versteht, in Strings umzuwandeln gescheitert. Am Ende konnte ich zwar die Klimaanlage anschalten und auch wieder ausschalten, wenn ich allerdings den Modus mit einer Funkfernbedienung oder einem VIS Widget ändern wollte, bleib der Modus stoisch auf den vom NSPANEL eingestellten Wert, was sicher an meinem JavaScript lag. Also fange ich von vorne an, um die Card Konfiguration zu verstehen. Wenn Ihr erlaubt, treffe ich ein paar Annahmen und bitte um Kommentare hinsichtlich meines Verständnisses. Wenn es alles zu blöde klingt, dann bitte ich um einen Link zu einer grundsätzlichen Doku. Ich danke Euch auf jeden Fall schon jetzt für die Hilfsbereitschaft! Dass die Seite https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-ALIAS-Definitionen keine Beschreibung zur CartThermo hat, sehe ich richtig, oder?

    Also:
    Die Card erwartet einen Ordner mit verschiedenen Datenpunkten, wie von @Armilar im Screenshot gezeigt.

    In dem Beispiel in GitHub sind ein paar Werte definiert:
    code_text

                    id: "alias.0.TestKlimaVirtual", 
                    //id: "alias.0.NSPanel.wohnzimmer.AirConWohn",
                    minValue: 50, 
                    maxValue: 250,
                    stepValue: 5,
                    iconArray: ['power-standby','air-conditioner','snowflake','fire','alpha-e-circle-outline','fan','water-percent','swap-vertical-bold'],
                    popupThermoMode1: ['Auto','0','1','2','3'],
                    popupThermoMode2: ['Auto','0','1','2','3','4','5'],
                    popupThermoMode3: ['Auto','Manual','Boost',],
                    popUpThermoName: ["Schwenk-Modus", 'Speed', 'Temperatur'],
                    icon: 'fan',
                    //setThermoAlias: ['MODE1','MODE2','MODE3'],
    

    Woher weiß ich, dass das iconArray die richtige Reihenfolge hat und wie mappe ich den Modus auf das richtige Icon? Sind die irgendwo im Code hinterlegt, weil jedes HVAC System immer die gleichen Modus hat?

    Im MODE kann ich aktuell nur Werte vom Typ Number speichern, richtig?
    Gibt es eine einfache Lösung, um dann in das richtige Objekt der Klimaanlage einen String zu schreiben?

    DANKE nochmal!!

    T 1 Antwort Letzte Antwort
    0
    • D drloksoft

      @tt-tom said in SONOFF NSPanel mit Lovelace UI:

      ich kann dir auch weiterhelfen, muss nur zwd. mal Geld verdienen gehen bzw. die Welt retten

      @TT-Tom, das mit der Welt retten kommt immer wieder dazwischen 🙂
      Ich lege mir die Karten mit der TermoCard, vielleicht liegt es an meinem grundsätzlichem Verstädnisproblem, wie die Karten mit den Datenpunkten interagieren, allerdings ist meine Idee die Ziffern, die die Termokarte unter MODE versteht, in Strings umzuwandeln gescheitert. Am Ende konnte ich zwar die Klimaanlage anschalten und auch wieder ausschalten, wenn ich allerdings den Modus mit einer Funkfernbedienung oder einem VIS Widget ändern wollte, bleib der Modus stoisch auf den vom NSPANEL eingestellten Wert, was sicher an meinem JavaScript lag. Also fange ich von vorne an, um die Card Konfiguration zu verstehen. Wenn Ihr erlaubt, treffe ich ein paar Annahmen und bitte um Kommentare hinsichtlich meines Verständnisses. Wenn es alles zu blöde klingt, dann bitte ich um einen Link zu einer grundsätzlichen Doku. Ich danke Euch auf jeden Fall schon jetzt für die Hilfsbereitschaft! Dass die Seite https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-ALIAS-Definitionen keine Beschreibung zur CartThermo hat, sehe ich richtig, oder?

      Also:
      Die Card erwartet einen Ordner mit verschiedenen Datenpunkten, wie von @Armilar im Screenshot gezeigt.

      In dem Beispiel in GitHub sind ein paar Werte definiert:
      code_text

                      id: "alias.0.TestKlimaVirtual", 
                      //id: "alias.0.NSPanel.wohnzimmer.AirConWohn",
                      minValue: 50, 
                      maxValue: 250,
                      stepValue: 5,
                      iconArray: ['power-standby','air-conditioner','snowflake','fire','alpha-e-circle-outline','fan','water-percent','swap-vertical-bold'],
                      popupThermoMode1: ['Auto','0','1','2','3'],
                      popupThermoMode2: ['Auto','0','1','2','3','4','5'],
                      popupThermoMode3: ['Auto','Manual','Boost',],
                      popUpThermoName: ["Schwenk-Modus", 'Speed', 'Temperatur'],
                      icon: 'fan',
                      //setThermoAlias: ['MODE1','MODE2','MODE3'],
      

      Woher weiß ich, dass das iconArray die richtige Reihenfolge hat und wie mappe ich den Modus auf das richtige Icon? Sind die irgendwo im Code hinterlegt, weil jedes HVAC System immer die gleichen Modus hat?

      Im MODE kann ich aktuell nur Werte vom Typ Number speichern, richtig?
      Gibt es eine einfache Lösung, um dann in das richtige Objekt der Klimaanlage einen String zu schreiben?

      DANKE nochmal!!

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

      @drloksoft

      Fangen wir mal Schritt für Schritt an:

      welche Daten bekommst du bzw. muss du setzen für den jeweiligen Modus in diesen Datenpunkten. Welchen Typ sind diese Daten?

      alias.0.AirConWohnMode.set_hvac_mode den aktuellen modus setzt und diesen auch anzeigen kann
      -- setzen des state mit hass.0.entities.climate.106838462bc1.set_hvac_mode
      -- und lesen mit hass.0.entities.climate.106838462bc1.state

      Das IconArray ist dieselbe Reihenfolge, wie deine States im DP "MODE".

      PS erstelle mir mit deinen Daten dann eine virtuelle Anlage

      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

      ArmilarA 1 Antwort Letzte Antwort
      1
      • T TT-Tom

        @drloksoft

        Fangen wir mal Schritt für Schritt an:

        welche Daten bekommst du bzw. muss du setzen für den jeweiligen Modus in diesen Datenpunkten. Welchen Typ sind diese Daten?

        alias.0.AirConWohnMode.set_hvac_mode den aktuellen modus setzt und diesen auch anzeigen kann
        -- setzen des state mit hass.0.entities.climate.106838462bc1.set_hvac_mode
        -- und lesen mit hass.0.entities.climate.106838462bc1.state

        Das IconArray ist dieselbe Reihenfolge, wie deine States im DP "MODE".

        PS erstelle mir mit deinen Daten dann eine virtuelle Anlage

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

        @tt-tom

        Bin parallel mal mit einer umfangreicheren Dokumentation der Klimaanlage angefangen:

        https://github.com/joBr99/nspanel-lovelace-ui/wiki/NSPanel-‐-cardThermo-‐-Klimaanlage

        Können wir bei Bedarf wachsen lassen oder erweitern... ist noch nicht im Seiten-Menü verankert...

        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.

        D 1 Antwort Letzte Antwort
        0
        • ArmilarA Armilar

          @tt-tom

          Bin parallel mal mit einer umfangreicheren Dokumentation der Klimaanlage angefangen:

          https://github.com/joBr99/nspanel-lovelace-ui/wiki/NSPanel-‐-cardThermo-‐-Klimaanlage

          Können wir bei Bedarf wachsen lassen oder erweitern... ist noch nicht im Seiten-Menü verankert...

          D Offline
          D Offline
          drloksoft
          schrieb am zuletzt editiert von
          #6508

          @armilar @TT-Tom ,

          Guten morgen!
          Mich hat gestern ein Anflug einer Erkältung umgehauen ... Männergrippe und so ... oder einfach zu viel in der Klimaanlagenluft gestanden 🙂

          MODE
          -- setzen des state mit hass.0.entities.climate.106838462bc1.set_hvac_mode
          --> ein einfacher String muss gesetzt werden. Optionen: ["off","cool","heat","fan_only","dry","auto"]
          -- und lesen mit hass.0.entities.climate.106838462bc1.state
          --> steht dort auch als String

          Temperatur
          -- setzen mit hass.0.entities.climate.106838462bc1.set_temperature
          --> als JSON String. Z.B. {"temperature":24}
          -- lesen in hass.0.entities.climate.106838462bc1.temperature
          --> dort als number - zB: 24

          Ein- und ausschalten
          Mit hass.0.entities.climate.106838462bc1.turn_off und hass.0.entities.climate.106838462bc1.turn_on kann ich mit einem Boolean Wert auch die Klimaanlage ein- und ausschalten. Alternative auch mit hass.0.entities.climate.106838462bc1.toggle. Wenn ich allerdings den Mode in set_hvac_mode setze, dann geht die Klimaanlage auch an (alles außer off) und aus (off).

          Swing Mode
          -- setzen des state mit hass.0.entities.climate.106838462bc1.set_swing_mode
          --> string, optionen: ["Vertical Swing","Highest","High","Low","Lowest"]
          -- lesen des state mit hass.0.entities.climate.106838462bc1.swing_mode
          --> string

          fan mode
          -- setzen mit hass.0.entities.climate.106838462bc1.set_fan_mode
          ---> string, optionen: ["Quiet","low","medium","high","auto"]
          -- lesen mit hass.0.entities.climate.106838462bc1.fan_mode
          --> string

          Brauchst Du noch etwas?

          fa9f1ef6-4e01-4abb-a5a8-8153caf6954b-image.png
          41d06bc7-54ae-434a-a51b-0eed3a89bd2e-image.png

          ArmilarA 1 Antwort Letzte Antwort
          0
          • D drloksoft

            @armilar @TT-Tom ,

            Guten morgen!
            Mich hat gestern ein Anflug einer Erkältung umgehauen ... Männergrippe und so ... oder einfach zu viel in der Klimaanlagenluft gestanden 🙂

            MODE
            -- setzen des state mit hass.0.entities.climate.106838462bc1.set_hvac_mode
            --> ein einfacher String muss gesetzt werden. Optionen: ["off","cool","heat","fan_only","dry","auto"]
            -- und lesen mit hass.0.entities.climate.106838462bc1.state
            --> steht dort auch als String

            Temperatur
            -- setzen mit hass.0.entities.climate.106838462bc1.set_temperature
            --> als JSON String. Z.B. {"temperature":24}
            -- lesen in hass.0.entities.climate.106838462bc1.temperature
            --> dort als number - zB: 24

            Ein- und ausschalten
            Mit hass.0.entities.climate.106838462bc1.turn_off und hass.0.entities.climate.106838462bc1.turn_on kann ich mit einem Boolean Wert auch die Klimaanlage ein- und ausschalten. Alternative auch mit hass.0.entities.climate.106838462bc1.toggle. Wenn ich allerdings den Mode in set_hvac_mode setze, dann geht die Klimaanlage auch an (alles außer off) und aus (off).

            Swing Mode
            -- setzen des state mit hass.0.entities.climate.106838462bc1.set_swing_mode
            --> string, optionen: ["Vertical Swing","Highest","High","Low","Lowest"]
            -- lesen des state mit hass.0.entities.climate.106838462bc1.swing_mode
            --> string

            fan mode
            -- setzen mit hass.0.entities.climate.106838462bc1.set_fan_mode
            ---> string, optionen: ["Quiet","low","medium","high","auto"]
            -- lesen mit hass.0.entities.climate.106838462bc1.fan_mode
            --> string

            Brauchst Du noch etwas?

            fa9f1ef6-4e01-4abb-a5a8-8153caf6954b-image.png
            41d06bc7-54ae-434a-a51b-0eed3a89bd2e-image.png

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

            @drloksoft

            Okay, fangen wir bei der cardThermo - Definition an...

            Das müsste die beschriebene Funktionalität im Frontend sein, korrekt?
            5f80d09a-83a9-4217-b3f7-bf9b5d214beb-Nextion_Editor_6p6EkkG17M.gif

            let TestKlimaVirtual: PageType =
            {
                'type': 'cardThermo',
                'heading': 'Test Klimaanlage',
                'items': [{  
                            id: 'alias.0.TestKlimaVirtual', 
                            //id: "alias.0.NSPanel.wohnzimmer.AirConWohn",
                            minValue: 50, // Anpassen an die minimal Mögliche Temperatur (aktuell 5°)
                            maxValue: 250, // Anpassen an die maximal mögliche Temperatur (aktuell 25°)
                            stepValue: 5,
                            popupThermoMode1: ['Vertical Swing','Highest','High','Low','Lowest'],
                            popupThermoMode2: ['Quiet','low','medium','high','auto'],
                            popUpThermoName: ['Swing Mode', 'Fan Mode'],
                            setThermoAlias: ['popupKlima_Mode_1','popupKlima_Mode_2'],
                            icon: 'fan',
                         }]
            };
            

            Mein Testdatenpunkt für "Mode" hat folgende States:

            {
              "common": {
                "name": "Mode",
                "desc": "Manuell erzeugt",
                "role": "state",
                "type": "number",
                "read": true,
                "write": true,
                "def": 0,
                "states": {
                  "0": "OFF",
                  "1": "COOL",
                  "2": "HEAT",
                  "3": "FAN_ONLY",
                  "4": "DRY",
                  "5": "AUTO"
                }
              },
              "type": "state",
              "_id": "0_userdata.0.Test.Klimaanlage.Mode",
              "acl": {
                "object": 1636,
                "state": 1636,
                "owner": "system.user.admin",
                "ownerGroup": "system.group.administrator"
              },
              "from": "system.adapter.admin.0",
              "user": "system.user.admin",
              "ts": 1729510343814
            }
            

            ebenso der Alias-DP "Mode":

            {
              "_id": "alias.0.TestKlimaVirtual.MODE",
              "common": {
                "name": "MODE",
                "role": "level.mode.airconditioner",
                "type": "number",
                "read": true,
                "write": true,
                "alias": {
                  "id": "0_userdata.0.Test.Klimaanlage.Mode"
                },
                "states": {
                  "0": "OFF",
                  "1": "COOL",
                  "2": "HEAT",
                  "3": "FAN_ONLY",
                  "4": "DRY",
                  "5": "AUTO"
                }
              },
              "native": {},
              "type": "state",
              "acl": {
                "object": 1636,
                "state": 1636,
                "owner": "system.user.admin",
                "ownerGroup": "system.group.administrator"
              },
              "from": "system.adapter.admin.0",
              "user": "system.user.admin",
              "ts": 1729511052706
            }
            

            Meine Testdatenpunkte sind immer noch die gleichen:
            a4ce43ac-aac9-4091-80c2-3ec9110b0414-image.png

            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
            • D Offline
              D Offline
              drloksoft
              schrieb am zuletzt editiert von
              #6510

              @armilar ja, genau, so sollte es im Frontend aussehen. Einziges Makel aus meiner Sicht ist, dass wenn der Zustand OFF ist, noch immer das icon von AC in grün angezeigt wird. Das verwirrt ein wenig. Die beiden pfeile unten rechts, sind die ein refresh icon?

              Wenn ich analog zu Dir Testdatenpunkte mit einem MODE in numbers erstelle, erhalte ich das gleiche Ergebnis.

              ArmilarA 2 Antworten Letzte Antwort
              0
              • D drloksoft

                @armilar ja, genau, so sollte es im Frontend aussehen. Einziges Makel aus meiner Sicht ist, dass wenn der Zustand OFF ist, noch immer das icon von AC in grün angezeigt wird. Das verwirrt ein wenig. Die beiden pfeile unten rechts, sind die ein refresh icon?

                Wenn ich analog zu Dir Testdatenpunkte mit einem MODE in numbers erstelle, erhalte ich das gleiche Ergebnis.

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

                @drloksoft

                Die beiden Pfeile schalten den Swing-Mode On/Off

                Wir könnten das Script noch ändern, in dem die Farben bei ausgeschalteter Anlage ausgegraut sind... Aber das machen wir ganz am Ende

                Das ist der Alias...
                f5dc0b85-c349-44c9-b7cc-5c15a3d89396-image.png

                bekommst du das nachgebaut?

                Wenn ich analog zu Dir Testdatenpunkte mit einem MODE in numbers erstelle, erhalte ich das gleiche Ergebnis.

                Number ist korrekt. Wir mappen danach per Script von den virtuellen Datenpunkten in den HASS Adapter... Da können wir alles so konvertieren, wie es HA benötigt.

                Zunächst erstmal das Virtuelle Device nachbauen...

                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
                • D drloksoft

                  @armilar ja, genau, so sollte es im Frontend aussehen. Einziges Makel aus meiner Sicht ist, dass wenn der Zustand OFF ist, noch immer das icon von AC in grün angezeigt wird. Das verwirrt ein wenig. Die beiden pfeile unten rechts, sind die ein refresh icon?

                  Wenn ich analog zu Dir Testdatenpunkte mit einem MODE in numbers erstelle, erhalte ich das gleiche Ergebnis.

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

                  @drloksoft

                  Mit dem folgenden Teil sollte die Sysnchronisation zwischen Mode und Setpoint bereits funktionieren (ggfs. Datenpunkte in 0_userdata checken)

                  Einfach neues JS-Script erzeugen und reinkopieren...

                  const vMode = ['off', 'cool', 'heat', 'fan_only', 'dry', 'auto'];
                  
                  // Synchronisation Mode (HASS --> ioBroker)
                  on({ id: [].concat(['hass.0.entities.climate.106838462bc1.state']), change: 'ne' }, async (obj) => {
                      setStateDelayed('0_userdata.0.Test.Klimaanlage.Mode', { val: (vMode.indexOf(obj.state ? obj.state.val : '')), ack: false }, parseInt(((0) || '').toString(), 10), false);
                  });
                  
                  // Modeänderung aus NSPanel (ioBroker --> HASS)
                  on({ id: [].concat(['0_userdata.0.Test.Klimaanlage.Mode']), change: 'ne' }, async (obj) => {
                      setStateDelayed('hass.0.entities.climate.106838462bc1.set_hvac_mode', { val: (vMode[(obj.state ? obj.state.val : '')]), ack: false }, parseInt(((0) || '').toString(), 10), false);
                  });
                  
                  // Synchronisation der SOLL-Temperatur (HASS --> ioBroker)
                  on({ id: [].concat(['hass.0.entities.climate.106838462bc1.temperature']), change: 'ne' }, async (obj) => {
                       setStateDelayed('0_userdata.0.Test.Klimaanlage.Soll_Temperatur', { val: (obj.state ? obj.state.val : ''), ack: false }, parseInt(((0) || '').toString(), 10), false);
                  });
                  
                  // Senden der Solltemperatur (ioBroker an HASS)
                  on({ id: [].concat(['0_userdata.0.Test.Klimaanlage.Soll_Temperatur']), change: 'ne' }, async (obj) => {
                      setStateDelayed('hass.0.entities.climate.106838462bc1.set_temperature', { val: (['{"temperature":',(obj.state ? obj.state.val : ''),'}'].join('')), ack: false }, parseInt(((0) || '').toString(), 10), false);
                  });
                  

                  Fehlt aktuell noch die Auswertung des Swing-/Fan-Mode und die Sonderbehandlung für On/Off

                  Funktioniert das bis hierher?

                  EDIT: Noch kurz einen DP ausgetauscht... Kanns halt nicht testen 😉

                  EDIT 2: Mapping von .state erfolgt ja auch aus Array... habs noch geändert

                  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.

                  D 1 Antwort Letzte Antwort
                  1
                  • ArmilarA Armilar

                    @drloksoft

                    Mit dem folgenden Teil sollte die Sysnchronisation zwischen Mode und Setpoint bereits funktionieren (ggfs. Datenpunkte in 0_userdata checken)

                    Einfach neues JS-Script erzeugen und reinkopieren...

                    const vMode = ['off', 'cool', 'heat', 'fan_only', 'dry', 'auto'];
                    
                    // Synchronisation Mode (HASS --> ioBroker)
                    on({ id: [].concat(['hass.0.entities.climate.106838462bc1.state']), change: 'ne' }, async (obj) => {
                        setStateDelayed('0_userdata.0.Test.Klimaanlage.Mode', { val: (vMode.indexOf(obj.state ? obj.state.val : '')), ack: false }, parseInt(((0) || '').toString(), 10), false);
                    });
                    
                    // Modeänderung aus NSPanel (ioBroker --> HASS)
                    on({ id: [].concat(['0_userdata.0.Test.Klimaanlage.Mode']), change: 'ne' }, async (obj) => {
                        setStateDelayed('hass.0.entities.climate.106838462bc1.set_hvac_mode', { val: (vMode[(obj.state ? obj.state.val : '')]), ack: false }, parseInt(((0) || '').toString(), 10), false);
                    });
                    
                    // Synchronisation der SOLL-Temperatur (HASS --> ioBroker)
                    on({ id: [].concat(['hass.0.entities.climate.106838462bc1.temperature']), change: 'ne' }, async (obj) => {
                         setStateDelayed('0_userdata.0.Test.Klimaanlage.Soll_Temperatur', { val: (obj.state ? obj.state.val : ''), ack: false }, parseInt(((0) || '').toString(), 10), false);
                    });
                    
                    // Senden der Solltemperatur (ioBroker an HASS)
                    on({ id: [].concat(['0_userdata.0.Test.Klimaanlage.Soll_Temperatur']), change: 'ne' }, async (obj) => {
                        setStateDelayed('hass.0.entities.climate.106838462bc1.set_temperature', { val: (['{"temperature":',(obj.state ? obj.state.val : ''),'}'].join('')), ack: false }, parseInt(((0) || '').toString(), 10), false);
                    });
                    

                    Fehlt aktuell noch die Auswertung des Swing-/Fan-Mode und die Sonderbehandlung für On/Off

                    Funktioniert das bis hierher?

                    EDIT: Noch kurz einen DP ausgetauscht... Kanns halt nicht testen 😉

                    EDIT 2: Mapping von .state erfolgt ja auch aus Array... habs noch geändert

                    D Offline
                    D Offline
                    drloksoft
                    schrieb am zuletzt editiert von
                    #6513

                    @armilar super! Danke! Ich gucke es mir an und baue es nach. Melde mich umgehend.

                    D 1 Antwort Letzte Antwort
                    0
                    • D drloksoft

                      @armilar super! Danke! Ich gucke es mir an und baue es nach. Melde mich umgehend.

                      D Offline
                      D Offline
                      drloksoft
                      schrieb am zuletzt editiert von drloksoft
                      #6514

                      @Armilar, soweit funktioniert es! Ich habe nun den Alias für das Test-Gerät in die NSPanel.ts übernommen und das JavaScript aktiviert. Auch wenn ich den MODE in der VIS ändere, bekomme ich sekunden später den neuen MODE im NSPANEL. Großartig!

                      Der Power State ist natürlih noch nicht synchron. Aber das könnte ich ja auch mit dem JavaScript syncronisieren, oder?

                      T ArmilarA 2 Antworten Letzte Antwort
                      0
                      • D drloksoft

                        @Armilar, soweit funktioniert es! Ich habe nun den Alias für das Test-Gerät in die NSPanel.ts übernommen und das JavaScript aktiviert. Auch wenn ich den MODE in der VIS ändere, bekomme ich sekunden später den neuen MODE im NSPANEL. Großartig!

                        Der Power State ist natürlih noch nicht synchron. Aber das könnte ich ja auch mit dem JavaScript syncronisieren, oder?

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

                        @drloksoft
                        Mich hat auch der Männerschnupfen erwischt, aber wie ich sehe war @Armilar ja ganz fleißig. Ich schau gelegentlich mal rein.

                        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

                        ArmilarA 1 Antwort Letzte Antwort
                        0
                        • T TT-Tom

                          @drloksoft
                          Mich hat auch der Männerschnupfen erwischt, aber wie ich sehe war @Armilar ja ganz fleißig. Ich schau gelegentlich mal rein.

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

                          @tt-tom ganz gute Besserung 😊

                          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
                          • D drloksoft

                            @Armilar, soweit funktioniert es! Ich habe nun den Alias für das Test-Gerät in die NSPanel.ts übernommen und das JavaScript aktiviert. Auch wenn ich den MODE in der VIS ändere, bekomme ich sekunden später den neuen MODE im NSPANEL. Großartig!

                            Der Power State ist natürlih noch nicht synchron. Aber das könnte ich ja auch mit dem JavaScript syncronisieren, oder?

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

                            @drloksoft

                            Ja der kann auf die gleiche Art und Weise synchronisiert werden... momentchen...

                            // Synchronisierung Power (HASS --> ioBroker)
                            on({ id: [].concat(['hass.0.entities.climate.106838462bc1.onoff']), change: 'ne' }, async (obj) => {
                                let vStateBool = false;
                                if ((obj.state ? obj.state.val : '') == 1) {
                                    vStateBool = true;
                                }
                                setStateDelayed('0_userdata.0.Test.Klimaanlage.Power', { val: vStateBool, ack: false }, parseInt(((0) || '').toString(), 10), false);
                            });
                            
                            // Synchronisierung Power (ioBroker--> HASS)
                            on({ id: [].concat(['0_userdata.0.Test.Klimaanlage.Power']), change: 'ne' }, async (obj) => {
                                if ((obj.state ? obj.state.val : '')) {
                                    setStateDelayed('hass.0.entities.climate.106838462bc1.turn_on', { val: true, ack: false }, parseInt(((0) || '').toString(), 10), false);
                                } else {
                                    setStateDelayed('hass.0.entities.climate.106838462bc1.turn_off', { val: true, ack: false }, parseInt(((0) || '').toString(), 10), false);
                                }
                            });
                            

                            unten drunter einfügen

                            EDIT: Kleiner Gedankenfehler, da die beide auf "true" geschaltet werden

                            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
                            • D Offline
                              D Offline
                              drloksoft
                              schrieb am zuletzt editiert von
                              #6518

                              @armilar Das läuft fantastisch!
                              Ob es nun wohl möglich ist, die Temperatur und controls auszublenden im NSPanel, wenn der Zustand off ist? Ich versuche es gerade DAU-fähig zu machen.

                              ArmilarA 2 Antworten Letzte Antwort
                              0
                              • D drloksoft

                                @armilar Das läuft fantastisch!
                                Ob es nun wohl möglich ist, die Temperatur und controls auszublenden im NSPanel, wenn der Zustand off ist? Ich versuche es gerade DAU-fähig zu machen.

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

                                @drloksoft

                                Ob es nun wohl möglich ist, die Temperatur und controls auszublenden im NSPanel, wenn der Zustand off ist?

                                Dafür werden wir ein/zwei Tage benötigen, da es eine Änderung am Skript (Versionsänderung) ist... 😊

                                Du könntest aber noch das Popup aktivieren. Versuche mal wie weit du kommst?

                                1893cad6-b9cb-4567-ad00-f508cdc6662a-image.png

                                Objektdaten für den die Swing-Modes

                                {
                                  "common": {
                                    "name": "popupKlima_Mode_1",
                                    "desc": "Manuell erzeugt",
                                    "role": "state",
                                    "type": "string",
                                    "read": true,
                                    "write": true,
                                    "def": 0,
                                    "states": {
                                      "0": "Vertical Swing",
                                      "1": "Highest",
                                      "2": "High",
                                      "3": "Low",
                                      "4": "Lowest"
                                    }
                                  },
                                  "type": "state",
                                  "native": {},
                                  "_id": "0_userdata.0.Test.Klimaanlage.popupKlima_Mode_1",
                                  "acl": {
                                    "object": 1636,
                                    "state": 1636,
                                    "owner": "system.user.admin",
                                    "ownerGroup": "system.group.administrator"
                                  },
                                  "from": "system.adapter.admin.0",
                                  "user": "system.user.admin",
                                  "ts": 1729522650366
                                }
                                

                                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.

                                D 1 Antwort Letzte Antwort
                                1
                                • ArmilarA Armilar

                                  @drloksoft

                                  Ob es nun wohl möglich ist, die Temperatur und controls auszublenden im NSPanel, wenn der Zustand off ist?

                                  Dafür werden wir ein/zwei Tage benötigen, da es eine Änderung am Skript (Versionsänderung) ist... 😊

                                  Du könntest aber noch das Popup aktivieren. Versuche mal wie weit du kommst?

                                  1893cad6-b9cb-4567-ad00-f508cdc6662a-image.png

                                  Objektdaten für den die Swing-Modes

                                  {
                                    "common": {
                                      "name": "popupKlima_Mode_1",
                                      "desc": "Manuell erzeugt",
                                      "role": "state",
                                      "type": "string",
                                      "read": true,
                                      "write": true,
                                      "def": 0,
                                      "states": {
                                        "0": "Vertical Swing",
                                        "1": "Highest",
                                        "2": "High",
                                        "3": "Low",
                                        "4": "Lowest"
                                      }
                                    },
                                    "type": "state",
                                    "native": {},
                                    "_id": "0_userdata.0.Test.Klimaanlage.popupKlima_Mode_1",
                                    "acl": {
                                      "object": 1636,
                                      "state": 1636,
                                      "owner": "system.user.admin",
                                      "ownerGroup": "system.group.administrator"
                                    },
                                    "from": "system.adapter.admin.0",
                                    "user": "system.user.admin",
                                    "ts": 1729522650366
                                  }
                                  
                                  D Offline
                                  D Offline
                                  drloksoft
                                  schrieb am zuletzt editiert von
                                  #6520

                                  @armilar perfekt! Ich setze mich nachher daran!

                                  1 Antwort Letzte Antwort
                                  1
                                  • D Offline
                                    D Offline
                                    drloksoft
                                    schrieb am zuletzt editiert von
                                    #6521

                                    @Armilar @TT-Tom ... wieder ne Männergripp-Nacht...

                                    Verstehe ich denn die Konfiguration richtig?

                                    "items": [{   
                                                    id: "alias.0.TestKlimaVirtual", 
                                                    minValue: 50, 
                                                    maxValue: 250,
                                                    stepValue: 5,
                                                    //iconArray: ['power-standby','air-conditioner','snowflake','fire','alpha-e-circle-outline','fan','water-percent','swap-vertical-bold'],
                                                    popupThermoMode1: ['Vertical Swing','Highest','High','Low','Lowest'],
                                                    popupThermoMode2: ['Quiet','low','medium','high','auto'],
                                                    popUpThermoName: ["Swing Mode", 'Fan Mode'],
                                                    setThermoAlias: ['POPUPKLIMA_MODE_1','POPUP_KLIMA_MODE_2'],
                                                    icon: 'fan',
                                                    
                                                 }]
                                    

                                    Annahme:
                                    popupThermoMode1 wird durch das setting "setThermoAlias" auf POPUPKLIMA_MODE_1 gelenkt, richtig?
                                    Angezeigt bekomme ich alles vermeintlich richtig im Panel und kann auch das Objekt von POPUPKLIMA_MODE_1 mit den Werten füllen, die in popupThermoMode1 angezeigt wrden. Toll!

                                    Wenn ich ins Popup Menü gehe zeigt der Log:

                                    javascript.0	12:58:40.918	warn	at GenerateDetailPage (script.js.NSPanel.NSPanelWohnzimmer:10304:29)
                                    javascript.0	12:58:40.918	warn	at HandleMessage (script.js.NSPanel.NSPanelWohnzimmer:4701:45)
                                    javascript.0	12:58:40.918	warn	at script.js.NSPanel.NSPanelWohnzimmer:4429:21
                                    javascript.0	12:58:40.918	warn	at step (script.js.NSPanel.NSPanelWohnzimmer:33:23)
                                    javascript.0	12:58:40.918	warn	at Object.next (script.js.NSPanel.NSPanelWohnzimmer:14:53)
                                    javascript.0	12:58:40.918	warn	at script.js.NSPanel.NSPanelWohnzimmer:8:71
                                    javascript.0	12:58:40.918	warn	at __awaiter (script.js.NSPanel.NSPanelWohnzimmer:4:12)
                                    javascript.0	12:58:40.918	info	script.js.NSPanel.NSPanelWohnzimmer: GenerateDetailPage -> payload: [{"payload":"entityUpdateDetail~alias.0.NSPanel.wohnzimmer.AirConTest~~11487~Swing Mode~modus1~Lowest~Vertical Swing?Highest?High?Low?Lowest~Fan Mode~modus2~null~Quiet?low?medium?high?auto~~~~~"}]
                                    javascript.0	12:58:40.918	info	script.js.NSPanel.NSPanelWohnzimmer: function SendToPanel payload: entityUpdateDetail~alias.0.NSPanel.wohnzimmer.AirConTest~~11487~Swing Mode~modus1~Lowest~Vertical Swing?Highest?High?Low?Lowest~Fan Mode~modus2~null~Quiet?low?medium?high?auto~~~~~
                                    

                                    Wenn ich den Swing Mode ändere (also PopupKlima_Mode_1) kommt im Log:

                                    javascript.0	12:59:40.610	info	script.js.NSPanel.NSPanelWohnzimmer: HandleButtonEvent übergebene Werte event - buttonPress2 - alias.0.NSPanel.wohnzimmer.AirConTest - mode-modus1 - 1 - PageId: 0
                                    javascript.0	12:59:40.612	info	script.js.NSPanel.NSPanelWohnzimmer: HandleButtonEvent buttonAction: mode-modus1
                                    javascript.0	12:59:40.612	info	script.js.NSPanel.NSPanelWohnzimmer: findPageItem -> pageItem {"id":"alias.0.NSPanel.wohnzimmer.AirConTest","minValue":50,"maxValue":250,"stepValue":5,"popupThermoMode1":["Vertical Swing","Highest","High","Low","Lowest"],"popupThermoMode2":["Quiet","low","medium","high","auto"],"popUpThermoName":["Swing Mode","Fan Mode"],"setThermoAlias":["POPUPKLIMA_MODE_1","POPUP_KLIMA_MODE_2"],"icon":"fan"}
                                    javascript.0	12:59:40.612	info	script.js.NSPanel.NSPanelWohnzimmer: HandleMessage -> buttonPress2 event - buttonPress2 - alias.0.NSPanel.wohnzimmer.AirConTest - mode-modus1 - 1
                                    javascript.0	12:59:40.665	info	script.js.NSPanel.NSPanelWohnzimmer: GenerateDetailPage Übergabe Type: popupThermo - optional: undefined - pageItem.id: alias.0.NSPanel.wohnzimmer.AirConTest
                                    javascript.0	12:59:40.666	warn	at GenerateDetailPage (script.js.NSPanel.NSPanelWohnzimmer:10304:29)
                                    javascript.0	12:59:40.666	warn	at Object.<anonymous> (script.js.NSPanel.NSPanelWohnzimmer:5869:25)
                                    javascript.0	12:59:40.667	info	script.js.NSPanel.NSPanelWohnzimmer: GenerateDetailPage -> payload: [{"payload":"entityUpdateDetail~alias.0.NSPanel.wohnzimmer.AirConTest~~11487~Swing Mode~modus1~Highest~Vertical Swing?Highest?High?Low?Lowest~Fan Mode~modus2~null~Quiet?low?medium?high?auto~~~~~"}]
                                    javascript.0	12:59:40.667	info	script.js.NSPanel.NSPanelWohnzimmer: function SendToPanel payload: entityUpdateDetail~alias.0.NSPanel.wohnzimmer.AirConTest~~11487~Swing Mode~modus1~Highest~Vertical Swing?Highest?High?Low?Lowest~Fan Mode~modus2~null~Quiet?low?medium?high?auto~~~~~
                                    

                                    Wenn ich am Fan mode (also popup2) etwas ändern möchte, erhalte ich:

                                    javascript.0	13:01:00.000	info	script.js.NSPanel.NSPanelWohnzimmer: function SendToPanel val-payload: time~13:00
                                    javascript.0	13:01:02.716	info	script.js.NSPanel.NSPanelWohnzimmer: HandleButtonEvent übergebene Werte event - buttonPress2 - alias.0.NSPanel.wohnzimmer.AirConTest - mode-modus2 - 2 - PageId: 0
                                    javascript.0	13:01:02.716	info	script.js.NSPanel.NSPanelWohnzimmer: HandleButtonEvent buttonAction: mode-modus2
                                    javascript.0	13:01:02.716	info	script.js.NSPanel.NSPanelWohnzimmer: findPageItem -> pageItem {"id":"alias.0.NSPanel.wohnzimmer.AirConTest","minValue":50,"maxValue":250,"stepValue":5,"popupThermoMode1":["Vertical Swing","Highest","High","Low","Lowest"],"popupThermoMode2":["Quiet","low","medium","high","auto"],"popUpThermoName":["Swing Mode","Fan Mode"],"setThermoAlias":["POPUPKLIMA_MODE_1","POPUP_KLIMA_MODE_2"],"icon":"fan"}
                                    javascript.0	13:01:02.716	info	script.js.NSPanel.NSPanelWohnzimmer: HandleMessage -> buttonPress2 event - buttonPress2 - alias.0.NSPanel.wohnzimmer.AirConTest - mode-modus2 - 2
                                    

                                    Card Config:

                                    {
                                        "type": "cardThermo",
                                        "heading": "Test Klimaanlage",
                                        "items": [{   
                                                    id: "alias.0.NSPanel.wohnzimmer.AirConTest",
                                                    minValue: 50, 
                                                    maxValue: 250,
                                                    stepValue: 5,
                                                    popupThermoMode1: ['Vertical Swing','Highest','High','Low','Lowest'],
                                                    popupThermoMode2: ['Quiet','low','medium','high','auto'],
                                                    popUpThermoName: ["Swing Mode", 'Fan Mode'],
                                                    setThermoAlias: ['POPUPKLIMA_MODE_1','POPUP_KLIMA_MODE_2'],
                                                    icon: 'fan',
                                                    
                                                 }]
                                    };
                                    

                                    Popup_klima_1 object data:

                                    {
                                      "common": {
                                        "name": "popupKlima_Mode_1",
                                        "desc": "Manuell erzeugt",
                                        "role": "state",
                                        "type": "string",
                                        "read": true,
                                        "write": true,
                                        "def": 0,
                                        "states": {
                                          "0": "Vertical Swing",
                                          "1": "Highest",
                                          "2": "High",
                                          "3": "Low",
                                          "4": "Lowest"
                                        }
                                      },
                                      "type": "state",
                                      "native": {},
                                      "_id": "0_userdata.0.KlimaWohnzimmer.popupKlima_Mode_1",
                                      "acl": {
                                        "object": 1636,
                                        "state": 1636,
                                        "owner": "system.user.admin",
                                        "ownerGroup": "system.group.administrator"
                                      },
                                      "from": "system.adapter.admin.0",
                                      "user": "system.user.admin",
                                      "ts": 1729532163304
                                    }
                                    

                                    Popup_klima_2 object Data:

                                    {
                                      "common": {
                                        "name": "popupKlima_Mode_2",
                                        "desc": "Manually created",
                                        "role": "state",
                                        "type": "string",
                                        "read": true,
                                        "write": true,
                                        "def": 0,
                                        "states": {
                                          "0": "Quiet",
                                          "1": "low",
                                          "2": "medium",
                                          "3": "high",
                                          "4": "auto"
                                        }
                                      },
                                      "type": "state",
                                      "native": {},
                                      "_id": "0_userdata.0.KlimaWohnzimmer.popupKlima_Mode_2",
                                      "acl": {
                                        "object": 1636,
                                        "state": 1636,
                                        "owner": "system.user.admin",
                                        "ownerGroup": "system.group.administrator"
                                      },
                                      "from": "system.adapter.admin.0",
                                      "user": "system.user.admin",
                                      "ts": 1729595400017
                                    }
                                    

                                    Zumindest kann ich schon mal den Swing mode setzen.

                                    ArmilarA 1 Antwort Letzte Antwort
                                    1
                                    • D drloksoft

                                      @Armilar @TT-Tom ... wieder ne Männergripp-Nacht...

                                      Verstehe ich denn die Konfiguration richtig?

                                      "items": [{   
                                                      id: "alias.0.TestKlimaVirtual", 
                                                      minValue: 50, 
                                                      maxValue: 250,
                                                      stepValue: 5,
                                                      //iconArray: ['power-standby','air-conditioner','snowflake','fire','alpha-e-circle-outline','fan','water-percent','swap-vertical-bold'],
                                                      popupThermoMode1: ['Vertical Swing','Highest','High','Low','Lowest'],
                                                      popupThermoMode2: ['Quiet','low','medium','high','auto'],
                                                      popUpThermoName: ["Swing Mode", 'Fan Mode'],
                                                      setThermoAlias: ['POPUPKLIMA_MODE_1','POPUP_KLIMA_MODE_2'],
                                                      icon: 'fan',
                                                      
                                                   }]
                                      

                                      Annahme:
                                      popupThermoMode1 wird durch das setting "setThermoAlias" auf POPUPKLIMA_MODE_1 gelenkt, richtig?
                                      Angezeigt bekomme ich alles vermeintlich richtig im Panel und kann auch das Objekt von POPUPKLIMA_MODE_1 mit den Werten füllen, die in popupThermoMode1 angezeigt wrden. Toll!

                                      Wenn ich ins Popup Menü gehe zeigt der Log:

                                      javascript.0	12:58:40.918	warn	at GenerateDetailPage (script.js.NSPanel.NSPanelWohnzimmer:10304:29)
                                      javascript.0	12:58:40.918	warn	at HandleMessage (script.js.NSPanel.NSPanelWohnzimmer:4701:45)
                                      javascript.0	12:58:40.918	warn	at script.js.NSPanel.NSPanelWohnzimmer:4429:21
                                      javascript.0	12:58:40.918	warn	at step (script.js.NSPanel.NSPanelWohnzimmer:33:23)
                                      javascript.0	12:58:40.918	warn	at Object.next (script.js.NSPanel.NSPanelWohnzimmer:14:53)
                                      javascript.0	12:58:40.918	warn	at script.js.NSPanel.NSPanelWohnzimmer:8:71
                                      javascript.0	12:58:40.918	warn	at __awaiter (script.js.NSPanel.NSPanelWohnzimmer:4:12)
                                      javascript.0	12:58:40.918	info	script.js.NSPanel.NSPanelWohnzimmer: GenerateDetailPage -> payload: [{"payload":"entityUpdateDetail~alias.0.NSPanel.wohnzimmer.AirConTest~~11487~Swing Mode~modus1~Lowest~Vertical Swing?Highest?High?Low?Lowest~Fan Mode~modus2~null~Quiet?low?medium?high?auto~~~~~"}]
                                      javascript.0	12:58:40.918	info	script.js.NSPanel.NSPanelWohnzimmer: function SendToPanel payload: entityUpdateDetail~alias.0.NSPanel.wohnzimmer.AirConTest~~11487~Swing Mode~modus1~Lowest~Vertical Swing?Highest?High?Low?Lowest~Fan Mode~modus2~null~Quiet?low?medium?high?auto~~~~~
                                      

                                      Wenn ich den Swing Mode ändere (also PopupKlima_Mode_1) kommt im Log:

                                      javascript.0	12:59:40.610	info	script.js.NSPanel.NSPanelWohnzimmer: HandleButtonEvent übergebene Werte event - buttonPress2 - alias.0.NSPanel.wohnzimmer.AirConTest - mode-modus1 - 1 - PageId: 0
                                      javascript.0	12:59:40.612	info	script.js.NSPanel.NSPanelWohnzimmer: HandleButtonEvent buttonAction: mode-modus1
                                      javascript.0	12:59:40.612	info	script.js.NSPanel.NSPanelWohnzimmer: findPageItem -> pageItem {"id":"alias.0.NSPanel.wohnzimmer.AirConTest","minValue":50,"maxValue":250,"stepValue":5,"popupThermoMode1":["Vertical Swing","Highest","High","Low","Lowest"],"popupThermoMode2":["Quiet","low","medium","high","auto"],"popUpThermoName":["Swing Mode","Fan Mode"],"setThermoAlias":["POPUPKLIMA_MODE_1","POPUP_KLIMA_MODE_2"],"icon":"fan"}
                                      javascript.0	12:59:40.612	info	script.js.NSPanel.NSPanelWohnzimmer: HandleMessage -> buttonPress2 event - buttonPress2 - alias.0.NSPanel.wohnzimmer.AirConTest - mode-modus1 - 1
                                      javascript.0	12:59:40.665	info	script.js.NSPanel.NSPanelWohnzimmer: GenerateDetailPage Übergabe Type: popupThermo - optional: undefined - pageItem.id: alias.0.NSPanel.wohnzimmer.AirConTest
                                      javascript.0	12:59:40.666	warn	at GenerateDetailPage (script.js.NSPanel.NSPanelWohnzimmer:10304:29)
                                      javascript.0	12:59:40.666	warn	at Object.<anonymous> (script.js.NSPanel.NSPanelWohnzimmer:5869:25)
                                      javascript.0	12:59:40.667	info	script.js.NSPanel.NSPanelWohnzimmer: GenerateDetailPage -> payload: [{"payload":"entityUpdateDetail~alias.0.NSPanel.wohnzimmer.AirConTest~~11487~Swing Mode~modus1~Highest~Vertical Swing?Highest?High?Low?Lowest~Fan Mode~modus2~null~Quiet?low?medium?high?auto~~~~~"}]
                                      javascript.0	12:59:40.667	info	script.js.NSPanel.NSPanelWohnzimmer: function SendToPanel payload: entityUpdateDetail~alias.0.NSPanel.wohnzimmer.AirConTest~~11487~Swing Mode~modus1~Highest~Vertical Swing?Highest?High?Low?Lowest~Fan Mode~modus2~null~Quiet?low?medium?high?auto~~~~~
                                      

                                      Wenn ich am Fan mode (also popup2) etwas ändern möchte, erhalte ich:

                                      javascript.0	13:01:00.000	info	script.js.NSPanel.NSPanelWohnzimmer: function SendToPanel val-payload: time~13:00
                                      javascript.0	13:01:02.716	info	script.js.NSPanel.NSPanelWohnzimmer: HandleButtonEvent übergebene Werte event - buttonPress2 - alias.0.NSPanel.wohnzimmer.AirConTest - mode-modus2 - 2 - PageId: 0
                                      javascript.0	13:01:02.716	info	script.js.NSPanel.NSPanelWohnzimmer: HandleButtonEvent buttonAction: mode-modus2
                                      javascript.0	13:01:02.716	info	script.js.NSPanel.NSPanelWohnzimmer: findPageItem -> pageItem {"id":"alias.0.NSPanel.wohnzimmer.AirConTest","minValue":50,"maxValue":250,"stepValue":5,"popupThermoMode1":["Vertical Swing","Highest","High","Low","Lowest"],"popupThermoMode2":["Quiet","low","medium","high","auto"],"popUpThermoName":["Swing Mode","Fan Mode"],"setThermoAlias":["POPUPKLIMA_MODE_1","POPUP_KLIMA_MODE_2"],"icon":"fan"}
                                      javascript.0	13:01:02.716	info	script.js.NSPanel.NSPanelWohnzimmer: HandleMessage -> buttonPress2 event - buttonPress2 - alias.0.NSPanel.wohnzimmer.AirConTest - mode-modus2 - 2
                                      

                                      Card Config:

                                      {
                                          "type": "cardThermo",
                                          "heading": "Test Klimaanlage",
                                          "items": [{   
                                                      id: "alias.0.NSPanel.wohnzimmer.AirConTest",
                                                      minValue: 50, 
                                                      maxValue: 250,
                                                      stepValue: 5,
                                                      popupThermoMode1: ['Vertical Swing','Highest','High','Low','Lowest'],
                                                      popupThermoMode2: ['Quiet','low','medium','high','auto'],
                                                      popUpThermoName: ["Swing Mode", 'Fan Mode'],
                                                      setThermoAlias: ['POPUPKLIMA_MODE_1','POPUP_KLIMA_MODE_2'],
                                                      icon: 'fan',
                                                      
                                                   }]
                                      };
                                      

                                      Popup_klima_1 object data:

                                      {
                                        "common": {
                                          "name": "popupKlima_Mode_1",
                                          "desc": "Manuell erzeugt",
                                          "role": "state",
                                          "type": "string",
                                          "read": true,
                                          "write": true,
                                          "def": 0,
                                          "states": {
                                            "0": "Vertical Swing",
                                            "1": "Highest",
                                            "2": "High",
                                            "3": "Low",
                                            "4": "Lowest"
                                          }
                                        },
                                        "type": "state",
                                        "native": {},
                                        "_id": "0_userdata.0.KlimaWohnzimmer.popupKlima_Mode_1",
                                        "acl": {
                                          "object": 1636,
                                          "state": 1636,
                                          "owner": "system.user.admin",
                                          "ownerGroup": "system.group.administrator"
                                        },
                                        "from": "system.adapter.admin.0",
                                        "user": "system.user.admin",
                                        "ts": 1729532163304
                                      }
                                      

                                      Popup_klima_2 object Data:

                                      {
                                        "common": {
                                          "name": "popupKlima_Mode_2",
                                          "desc": "Manually created",
                                          "role": "state",
                                          "type": "string",
                                          "read": true,
                                          "write": true,
                                          "def": 0,
                                          "states": {
                                            "0": "Quiet",
                                            "1": "low",
                                            "2": "medium",
                                            "3": "high",
                                            "4": "auto"
                                          }
                                        },
                                        "type": "state",
                                        "native": {},
                                        "_id": "0_userdata.0.KlimaWohnzimmer.popupKlima_Mode_2",
                                        "acl": {
                                          "object": 1636,
                                          "state": 1636,
                                          "owner": "system.user.admin",
                                          "ownerGroup": "system.group.administrator"
                                        },
                                        "from": "system.adapter.admin.0",
                                        "user": "system.user.admin",
                                        "ts": 1729595400017
                                      }
                                      

                                      Zumindest kann ich schon mal den Swing mode setzen.

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

                                      @drloksoft sagte in SONOFF NSPanel mit Lovelace UI:

                                      Echte Männergrippen muss man ernst nehmen 😊

                                      Die Warnungen kannst du erstmal ignorieren. Die hatte ich bereits bei meinen Tests ebenfalls auf dem Schirm.

                                      Ist ehrlich gesagt schon etwas her, dass ich an der cardThermo gearbeitet habe... Ist aber kein Problem... ist als wäre es gestern gewesen 😉

                                      Die Warnungen kommen aus dem Abschnitt, wo der letzte gewählte Eintrag im Popup (sollte eigentlich blau hinterlegt sein) nicht geladen werden kann. Da müssen wir zum zusätzlichen Doing noch ein Bug-Fix machen (ist mir aber ebenfalls erst gestern aufgefallen). Bei ausschließlich numerischen Werten passt es - bei "strings" knallt es...

                                      Wenn die Seite grundsätzlich mit Ausnahme dieser (benannten Warnungen) läuft, dann kannst du den Swing-Mode (und analog Fan-Mode) setzen und entsprechend zwischen HA zum ioBroker oder umgekehrt von ioBroker zum HA mappen.

                                      Den Swing-Mode sehe ich mir ebenfalls mal an...

                                      Der Rest kommt mit dem Versions-Upgrade...

                                      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.

                                      D 1 Antwort Letzte Antwort
                                      2
                                      • ArmilarA Armilar

                                        @drloksoft sagte in SONOFF NSPanel mit Lovelace UI:

                                        Echte Männergrippen muss man ernst nehmen 😊

                                        Die Warnungen kannst du erstmal ignorieren. Die hatte ich bereits bei meinen Tests ebenfalls auf dem Schirm.

                                        Ist ehrlich gesagt schon etwas her, dass ich an der cardThermo gearbeitet habe... Ist aber kein Problem... ist als wäre es gestern gewesen 😉

                                        Die Warnungen kommen aus dem Abschnitt, wo der letzte gewählte Eintrag im Popup (sollte eigentlich blau hinterlegt sein) nicht geladen werden kann. Da müssen wir zum zusätzlichen Doing noch ein Bug-Fix machen (ist mir aber ebenfalls erst gestern aufgefallen). Bei ausschließlich numerischen Werten passt es - bei "strings" knallt es...

                                        Wenn die Seite grundsätzlich mit Ausnahme dieser (benannten Warnungen) läuft, dann kannst du den Swing-Mode (und analog Fan-Mode) setzen und entsprechend zwischen HA zum ioBroker oder umgekehrt von ioBroker zum HA mappen.

                                        Den Swing-Mode sehe ich mir ebenfalls mal an...

                                        Der Rest kommt mit dem Versions-Upgrade...

                                        D Offline
                                        D Offline
                                        drloksoft
                                        schrieb am zuletzt editiert von
                                        #6523

                                        @armilar ok, perfekt! Ich freu' mich drauf!

                                        T 1 Antwort Letzte Antwort
                                        0
                                        • D drloksoft

                                          @armilar ok, perfekt! Ich freu' mich drauf!

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

                                          @drloksoft

                                          einen Fehler konnten wir schon mal eingrenzen. Alias Datenpunkt dürfen keine Unterstriche haben.

                                          setThermoAlias: ['POPUPKLIMA_MODE_1','POPUP_KLIMA_MODE_2'],
                                          

                                          muss dann so aussehen.

                                          setThermoAlias: ['POPUPKLIMAMODE1','POPUPKLIMAMODE2'],
                                          

                                          du musst also deine Datenpunkte da nochmal anpassen.

                                          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

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          750

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          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