Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
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.0k

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

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

SONOFF NSPanel mit Lovelace UI

SONOFF NSPanel mit Lovelace UI

Scheduled Pinned Locked Moved Hardware
lovelace uinspanelsonoff
7.7k Posts 271 Posters 6.7m Views 253 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • L Lokverführer

    Hallo zusammen,

    ich bin neu im Thema und habe schon erfolgreich eine Abfallkalender-Seite eingebunden. Nun würde mich mich gerne an die cardPower wagen. Meine Skriptversion ist 4.3.3.43.

    Ich habe aus dem Wiki eine Beispielkarte kopiert und bei den pages hinzugefügt (mehr sollte für die Demo ja nicht notwendig sein?):

    let CardPowerExample: PageType =
    {
        'type': 'cardPower',
        'heading': 'Energiefluss',
        'useColor': true,
        'items': [
            {  }
        ]
    };
    

    Beim Compilieren wird aber direkt dieser Fehler ausgegeben:
    [error]: javascript.0 (1572800) script.js.common.NSPanel.NSPanel1: TypeScript compilation failed: 'useColor': true,
    ERROR: Object literal may only specify known properties, and ''useColor'' does not exist in type 'PagePower'.

    Wird die Zeile 'useColor" entfernt, tritt der Fehler nicht mehr auf, es wird aber auch keine Karte angezeigt.

    T Do not disturb
    T Do not disturb
    ticaki
    wrote on last edited by ticaki
    #5602

    @lokverführer

    hast du sie unten in pages aufgenommen? Btw. wie kommst du auf useColor - in der Wiki steht es ohne.

    https://github.com/joBr99/nspanel-lovelace-ui/wiki/NSPanel-Page-‐-Typen_How-2_Beispiele#page-beispiele

    Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

    Spenden

    1 Reply Last reply
    0
    • L Offline
      L Offline
      Lokverführer
      wrote on last edited by
      #5603

      @ticaki
      Und hier steht es mit useColor :
      https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Card-Definitionen-(Seiten)#cardpower-ab-ts-script-v341

      In Pages habe ich die CardPowerExample mit aufgenommen

      T 1 Reply Last reply
      0
      • L Lokverführer

        @ticaki
        Und hier steht es mit useColor :
        https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Card-Definitionen-(Seiten)#cardpower-ab-ts-script-v341

        In Pages habe ich die CardPowerExample mit aufgenommen

        T Do not disturb
        T Do not disturb
        ticaki
        wrote on last edited by
        #5604

        @lokverführer sagte in SONOFF NSPanel mit Lovelace UI:

        @ticaki
        Und hier steht es mit useColor :
        https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Card-Definitionen-(Seiten)#cardpower-ab-ts-script-v341

        Danke dann muß das noch korrigiert werden.

        Beim eigentlichen Problem kann ich dir leider nicht helfen.

        Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

        Spenden

        ArmilarA 1 Reply Last reply
        2
        • T ticaki

          @lokverführer sagte in SONOFF NSPanel mit Lovelace UI:

          @ticaki
          Und hier steht es mit useColor :
          https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Card-Definitionen-(Seiten)#cardpower-ab-ts-script-v341

          Danke dann muß das noch korrigiert werden.

          Beim eigentlichen Problem kann ich dir leider nicht helfen.

          ArmilarA Offline
          ArmilarA Offline
          Armilar
          Most Active Forum Testing
          wrote on last edited by Armilar
          #5605

          @ticaki
          @Lokverführer

          let CardPowerExample: PageType =
          {
              'type': 'cardPower',
              'heading': 'Energiefluss',
              'items': [
                  {  }
              ]
          };
          

          Habe das useColor bei der cardPower aus dem Wiki entfernt, da es sich mit den Types beißt und in der Card auch keinen Sinn macht...

          Der Rest sollte so funktionieren... 😊

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

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

          T 1 Reply Last reply
          3
          • ArmilarA Armilar

            @ticaki
            @Lokverführer

            let CardPowerExample: PageType =
            {
                'type': 'cardPower',
                'heading': 'Energiefluss',
                'items': [
                    {  }
                ]
            };
            

            Habe das useColor bei der cardPower aus dem Wiki entfernt, da es sich mit den Types beißt und in der Card auch keinen Sinn macht...

            Der Rest sollte so funktionieren... 😊

            T Offline
            T Offline
            TT-Tom
            wrote on last edited by
            #5606

            @armilar
            @Lokverführer

            der Demomodus wird nicht funktionieren. suche bitte im script diese Stelle

            function GeneratePowerPage(page: NSPanel.PagePower): NSPanel.Payload[] {
                try {
            
                    if (!page.items[0].id) throw new Error ('Missing pageItem.id for PowerPage!');
            
                    let obj:object = {};
                    let demoMode = false;        
                    if (page.items[0].id == undefined){
                        log('No PageItem defined - cardPower demo mode active', 'info');
                        demoMode = true;
                    }
            

            und lösche diese Zeile.

             if (!page.items[0].id) throw new Error ('Missing pageItem.id for PowerPage!');
            

            dann sollte der Demomodus laufen.

            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 Reply Last reply
            3
            • P Offline
              P Offline
              patricknitsch
              wrote on last edited by
              #5607

              Hallo, ich habe ein kleines Problem mit meinen Hardwaretasten. Ich habe Rule 1 eingefügt, um nach oben und auf Home springen zu können. Die Home Funktion auf Button 2 funktioniert problemlos. Bei Button 1 springt das Panel aber nicht in die übergeordnete Seite.

              In Tasmota wird der Befehl richtig ausgegeben. Topic passt dabei auch:

              21:18:20.859 RUL: BUTTON1#STATE performs "Publish Sonoff/NSPanelOG/tele/RESULT {"CustomRecv":"event,buttonPress1,hwbtn,bUp"}"
              21:18:20.871 MQT: Sonoff/NSPanelOG/tele/RESULT = {"CustomRecv":"event,buttonPress1,hwbtn,bUp"}
              

              In IOBroker erhalte ich aber folgende Fehlermeldung:

              script.js.common.NSPanel_OG.NSPanel_OG_0_1: Please report to developer: Unknown NSPanel.EventMethod: buttonPress1
              

              Hat hierzu jemand eine Idee, woran es liegen könnte?

              ArmilarA 1 Reply Last reply
              0
              • P patricknitsch

                Hallo, ich habe ein kleines Problem mit meinen Hardwaretasten. Ich habe Rule 1 eingefügt, um nach oben und auf Home springen zu können. Die Home Funktion auf Button 2 funktioniert problemlos. Bei Button 1 springt das Panel aber nicht in die übergeordnete Seite.

                In Tasmota wird der Befehl richtig ausgegeben. Topic passt dabei auch:

                21:18:20.859 RUL: BUTTON1#STATE performs "Publish Sonoff/NSPanelOG/tele/RESULT {"CustomRecv":"event,buttonPress1,hwbtn,bUp"}"
                21:18:20.871 MQT: Sonoff/NSPanelOG/tele/RESULT = {"CustomRecv":"event,buttonPress1,hwbtn,bUp"}
                

                In IOBroker erhalte ich aber folgende Fehlermeldung:

                script.js.common.NSPanel_OG.NSPanel_OG_0_1: Please report to developer: Unknown NSPanel.EventMethod: buttonPress1
                

                Hat hierzu jemand eine Idee, woran es liegen könnte?

                ArmilarA Offline
                ArmilarA Offline
                Armilar
                Most Active Forum Testing
                wrote on last edited by Armilar
                #5608

                @patricknitsch sagte in SONOFF NSPanel mit Lovelace UI:

                In IOBroker erhalte ich aber folgende Fehlermeldung:

                script.js.common.NSPanel_OG.NSPanel_OG_0_1: Please report to developer: Unknown NSPanel.EventMethod: buttonPress1
                

                Hat hierzu jemand eine Idee, woran es liegen könnte?

                ja - es gibt kein buttonPress1, sondern ausschließlich die Methode buttonPress2 und auch wenn man es vermutet, so gibt es keinen Zusammenhang mit den Hardware-Buttons

                7ada9d30-a756-4d2f-9925-7b1c2e7d927e-image.png

                ein bUp wird ebenfalls per buttonPress2 gesendet:

                https://github.com/joBr99/nspanel-lovelace-ui/tree/main/HMI#messages-from-nextion-display

                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.

                P 1 Reply Last reply
                0
                • ArmilarA Armilar

                  @patricknitsch sagte in SONOFF NSPanel mit Lovelace UI:

                  In IOBroker erhalte ich aber folgende Fehlermeldung:

                  script.js.common.NSPanel_OG.NSPanel_OG_0_1: Please report to developer: Unknown NSPanel.EventMethod: buttonPress1
                  

                  Hat hierzu jemand eine Idee, woran es liegen könnte?

                  ja - es gibt kein buttonPress1, sondern ausschließlich die Methode buttonPress2 und auch wenn man es vermutet, so gibt es keinen Zusammenhang mit den Hardware-Buttons

                  7ada9d30-a756-4d2f-9925-7b1c2e7d927e-image.png

                  ein bUp wird ebenfalls per buttonPress2 gesendet:

                  https://github.com/joBr99/nspanel-lovelace-ui/tree/main/HMI#messages-from-nextion-display

                  P Offline
                  P Offline
                  patricknitsch
                  wrote on last edited by
                  #5609

                  @armilar Dann funktioniert die Anleitung Rule 1 mit den Hardware Buttons gar nicht mehr?

                  ArmilarA 1 Reply Last reply
                  0
                  • P patricknitsch

                    @armilar Dann funktioniert die Anleitung Rule 1 mit den Hardware Buttons gar nicht mehr?

                    ArmilarA Offline
                    ArmilarA Offline
                    Armilar
                    Most Active Forum Testing
                    wrote on last edited by Armilar
                    #5610

                    @patricknitsch

                    Doch klar funktioniert die noch... ist nur ein Fehler drin.

                    dürfte eher so aussehen:

                    Rule1 on Button1#state do Publish %topic%/tele/RESULT {"CustomRecv":"event,buttonPress2,hwbtn,bUp"} endon on Button2#state do Publish %topic%/tele/RESULT {"CustomRecv":"event,buttonPress2,hwbtn,bHome"} endon
                    Rule1 1
                    

                    EDIT: Habe es im Wiki ebenfalls korrigiert.

                    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.

                    P 1 Reply Last reply
                    1
                    • ArmilarA Armilar

                      @patricknitsch

                      Doch klar funktioniert die noch... ist nur ein Fehler drin.

                      dürfte eher so aussehen:

                      Rule1 on Button1#state do Publish %topic%/tele/RESULT {"CustomRecv":"event,buttonPress2,hwbtn,bUp"} endon on Button2#state do Publish %topic%/tele/RESULT {"CustomRecv":"event,buttonPress2,hwbtn,bHome"} endon
                      Rule1 1
                      

                      EDIT: Habe es im Wiki ebenfalls korrigiert.

                      P Offline
                      P Offline
                      patricknitsch
                      wrote on last edited by
                      #5611

                      @armilar Funktioniert! Danke 🙂

                      1 Reply Last reply
                      1
                      • M Offline
                        M Offline
                        maik5066
                        wrote on last edited by
                        #5612

                        Hallo Leute, ich würde gern WLED nutzen, ich habe mir alle Anleitungen durchgelesen leider funktioniert es bei mir nicht.

                        Wenn es jemand, funktionierend umgesetzt hat, könnt ihr mir das Skript und die CARD zuschicken oder am besten posten.
                        Vielen Dank

                        1 Reply Last reply
                        0
                        • T Offline
                          T Offline
                          TT-Tom
                          wrote on last edited by
                          #5613

                          @maik5066

                          Was funktioniert denn nicht bei dir??

                          Welche Fehlermeldungen hast du bekommen??

                          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

                          M 1 Reply Last reply
                          0
                          • T TT-Tom

                            @maik5066

                            Was funktioniert denn nicht bei dir??

                            Welche Fehlermeldungen hast du bekommen??

                            M Offline
                            M Offline
                            maik5066
                            wrote on last edited by
                            #5614

                            @TT-Tom , danke für deine Rückmeldung. Ich habe das js Skript genutzt und die drei hilfsdatenpunkte angelegt. Wenn ich, wie in der Anleitung das Card Grip kopiere findet er die variable index01 nicht.

                            Wäre es nicht möglich, direkt die Effekte datenpunkte des WLED Adapter zu nutzen z. Bsp. fx.

                            Habt ihr ein funktionierendes bespiel was ich mir kopieren kann.

                            T 1 Reply Last reply
                            0
                            • N Offline
                              N Offline
                              nono87
                              wrote on last edited by
                              #5615

                              Guten Morgen,

                              ich habe meine Mähroboter wieder aus dem Winterschlaf geholt und wollte diesen gleich einbinden.
                              Bisher klappt auch alles wie gewünscht nur leider stoße ich jetzt an meine Grenzen.
                              Der Worx gibt als Status eine Zahl mit den States dahinter mit. Diese Zahlen kann ich mittels Info Alias anzeigen. Schöner wäre es natürlich wenn dort als Text steht was gerade passiert. Sei es als Wert oder als Text unter dem Wert.

                              Ich hoffe dazu gibt es bereits eine Lösung

                              ArmilarA 1 Reply Last reply
                              0
                              • M maik5066

                                @TT-Tom , danke für deine Rückmeldung. Ich habe das js Skript genutzt und die drei hilfsdatenpunkte angelegt. Wenn ich, wie in der Anleitung das Card Grip kopiere findet er die variable index01 nicht.

                                Wäre es nicht möglich, direkt die Effekte datenpunkte des WLED Adapter zu nutzen z. Bsp. fx.

                                Habt ihr ein funktionierendes bespiel was ich mir kopieren kann.

                                T Offline
                                T Offline
                                TT-Tom
                                wrote on last edited by
                                #5616

                                @maik5066 sagte in SONOFF NSPanel mit Lovelace UI:

                                @TT-Tom , danke für deine Rückmeldung. Ich habe das js Skript genutzt und die drei hilfsdatenpunkte angelegt. Wenn ich, wie in der Anleitung das Card Grip kopiere findet er die variable index01 nicht.

                                Das "parent": Index01, kannst du weglassen. Wenn deine Seite eine SubPage ist, dann solltest du folgende Parameter setzen

                                'subPage': true,
                                    'parent': Seite von wo du gesprungen bist ,
                                    'home': 'Startseite',
                                

                                Wäre es nicht möglich, direkt die Effekte datenpunkte des WLED Adapter zu nutzen z. Bsp. fx.

                                Das Zusatzscript nutzt die Effekte auf dem Datenpunkt, leider kann das Panel nur einen Index aus der Liste zurücksenden. Deswegen dieser Umweg mit den Hilfsdatenpunkten und Script.

                                Habt ihr ein funktionierendes bespiel was ich mir kopieren kann.

                                Das Beispiel aus dem Wiki läuft, wenn sich der Adapter/WLED nicht so stark geändert hat.

                                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

                                M 2 Replies Last reply
                                1
                                • N nono87

                                  Guten Morgen,

                                  ich habe meine Mähroboter wieder aus dem Winterschlaf geholt und wollte diesen gleich einbinden.
                                  Bisher klappt auch alles wie gewünscht nur leider stoße ich jetzt an meine Grenzen.
                                  Der Worx gibt als Status eine Zahl mit den States dahinter mit. Diese Zahlen kann ich mittels Info Alias anzeigen. Schöner wäre es natürlich wenn dort als Text steht was gerade passiert. Sei es als Wert oder als Text unter dem Wert.

                                  Ich hoffe dazu gibt es bereits eine Lösung

                                  ArmilarA Offline
                                  ArmilarA Offline
                                  Armilar
                                  Most Active Forum Testing
                                  wrote on last edited by
                                  #5617

                                  @nono87

                                  42becf05-8fde-4625-9cbf-1ad9222dcbae-image.png

                                  Habe da ein paar Datenpunkte angelegt, weil ich den Landroid ausschließlich per Script steuere und lasse u.a. die Texte von Status und Error ebenfalls einfließen. Man könnte jetzt einfach die Objektdaten nehmen, die sind aber lediglich in englisch und ich wollte die in deutsch. Somit habe ich die übersetzt.

                                  let serial = '2021302673020008XXXX'
                                  
                                  //Datenpunkte anlegen
                                  createState('0_userdata.0.WorxLandroid.' + serial + '.ErrorCode');
                                  createState('0_userdata.0.WorxLandroid.' + serial + '.Status');
                                  createState('0_userdata.0.WorxLandroid.' + serial + '.Betriebsstunden_Maeher');
                                  createState('0_userdata.0.WorxLandroid.' + serial + '.Betriebszeit_Maeher');
                                  createState('0_userdata.0.WorxLandroid.' + serial + '.Betriebsstunden_Klingen');
                                  createState('0_userdata.0.WorxLandroid.' + serial + '.Betriebszeit_Klingen');
                                  createState('0_userdata.0.WorxLandroid.' + serial + '.Betriebsstrecke_km');
                                  
                                  on({id: [].concat(['worx.0.' + serial + '.mower.error']), change: "any"}, async function (obj) {
                                    switch (obj.state.val) {
                                        case 0:
                                          setState('0_userdata.0.WorxLandroid.' + serial + '.ErrorCode', 'Kein Fehler');
                                          break;
                                        case 1:
                                          setState('0_userdata.0.WorxLandroid.' + serial + '.ErrorCode', 'Gefangen');
                                          break;
                                        case 2:
                                          setState('0_userdata.0.WorxLandroid.' + serial + '.ErrorCode', 'Angehoben');
                                          break;
                                        case 3:
                                          setState('0_userdata.0.WorxLandroid.' + serial + '.ErrorCode', 'Draht nicht angeschlossen');
                                          break;
                                        case 4:
                                          setState('0_userdata.0.WorxLandroid.' + serial + '.ErrorCode', 'Außerhalb der Begrenzung');
                                          break;
                                        case 5:
                                          setState('0_userdata.0.WorxLandroid.' + serial + '.ErrorCode', 'Regen');
                                          break;
                                        case 6:
                                          setState('0_userdata.0.WorxLandroid.' + serial + '.ErrorCode', 'Schließe Akku-Klappe');
                                          break;
                                        case 7:
                                          setState('0_userdata.0.WorxLandroid.' + serial + '.ErrorCode', 'Akku-Klappe offen');
                                          break;
                                        case 8:
                                          setState('0_userdata.0.WorxLandroid.' + serial + '.ErrorCode', 'Klingen-Motor blockiert');
                                          break;
                                        case 9:
                                          setState('0_userdata.0.WorxLandroid.' + serial + '.ErrorCode', 'Antrieb blockiert');
                                          break;
                                        case 10:
                                          setState('0_userdata.0.WorxLandroid.' + serial + '.ErrorCode', 'Eingeschlossen Timeout');
                                          break;
                                        case 11:
                                          setState('0_userdata.0.WorxLandroid.' + serial + '.ErrorCode', 'Upside down');
                                          break;
                                        case 12:
                                          setState('0_userdata.0.WorxLandroid.' + serial + '.ErrorCode', 'Akku niedrig');
                                          break;
                                        case 13:
                                          setState('0_userdata.0.WorxLandroid.' + serial + '.ErrorCode', 'Drahtpolung falsch');
                                          break;
                                        case 14:
                                          setState('0_userdata.0.WorxLandroid.' + serial + '.ErrorCode', 'Ladefehler');
                                          break;
                                        case 15:
                                          setState('0_userdata.0.WorxLandroid.' + serial + '.ErrorCode', 'Timeout finding home');
                                          break;
                                        case 16:
                                          setState('0_userdata.0.WorxLandroid.' + serial + '.ErrorCode', 'Mower locked');
                                          break;
                                        case 17:
                                          setState('0_userdata.0.WorxLandroid.' + serial + '.ErrorCode', 'Akku zu heiß');
                                          break;
                                        case 18:
                                          setState('0_userdata.0.WorxLandroid.' + serial + '.ErrorCode', 'Dummy Model');
                                          break;
                                        case 19:
                                          setState('0_userdata.0.WorxLandroid.' + serial + '.ErrorCode', 'Akku-Klappe Timeout');
                                          break;
                                        case 20:
                                          setState('0_userdata.0.WorxLandroid.' + serial + '.ErrorCode', 'wire sync');
                                          break;
                                        case 21:
                                          setState('0_userdata.0.WorxLandroid.' + serial + '.ErrorCode', 'msg num');
                                          break;
                                    }
                                  });
                                  
                                  on({id: [].concat(['worx.0.' + serial + '.mower.batteryState']), change: "any"}, async function (obj) {
                                      console.log("Batteriestatus: " + obj.state.val + "%");
                                      console.log("Status: " + getState('worx.0.' + serial + '.mower.status').val);
                                      if (obj.state.val < 100 && parseInt(getState('worx.0.' + serial + '.mower.status').val) == 1) {
                                          setState('0_userdata.0.WorxLandroid.' + serial + '.Status', 'Akku wird aufgeladen');
                                      }
                                      if (obj.state.val = 100 && parseInt(getState('worx.0.' + serial + '.mower.status').val) == 1) {
                                          setState('0_userdata.0.WorxLandroid.' + serial + '.Status', 'Ausgangsposition');
                                      }
                                  });
                                  
                                  on({id: [].concat(['worx.0.' + serial + '.mower.status']), change: "any"}, async function (obj) {
                                      switch (obj.state.val) {
                                          case 0:
                                              setState('0_userdata.0.WorxLandroid.' + serial + '.Status', 'Leerlauf');
                                              break;
                                          case 1:
                                              if (getState('worx.0.' + serial + '.mower.batteryState').val <= 10) {
                                                  setState('0_userdata.0.WorxLandroid.' + serial + '.Status', 'Ladestation');
                                              } else {
                                                  setState('0_userdata.0.WorxLandroid.' + serial + '.Status', 'Ausgangsposition');
                                              }
                                              break;
                                          case 2:
                                              setState('0_userdata.0.WorxLandroid.' + serial + '.Status', 'Start Sequence');
                                              break;
                                          case 3:
                                              setState('0_userdata.0.WorxLandroid.' + serial + '.Status', 'Verlasse Ladestation');
                                              break;
                                          case 4:
                                              setState('0_userdata.0.WorxLandroid.' + serial + '.Status', 'Folge Draht');
                                              break;
                                          case 5:
                                              setState('0_userdata.0.WorxLandroid.' + serial + '.Status', 'Suche Ladestation');
                                              break;
                                          case 6:
                                              setState('0_userdata.0.WorxLandroid.' + serial + '.Status', 'Suche Draht');
                                              break;
                                          case 7:
                                              setState('0_userdata.0.WorxLandroid.' + serial + '.Status', 'Mähen');
                                              break;
                                          case 8:
                                              setState('0_userdata.0.WorxLandroid.' + serial + '.Status', 'Angehoben');
                                              break;
                                          case 9:
                                              setState('0_userdata.0.WorxLandroid.' + serial + '.Status', 'Eingeschlossen');
                                              break;
                                          case 10:
                                              setState('0_userdata.0.WorxLandroid.' + serial + '.Status', 'Messer blockiert');
                                              break;
                                          case 11:
                                              setState('0_userdata.0.WorxLandroid.' + serial + '.Status', 'Debug');
                                              break;
                                          case 12:
                                              setState('0_userdata.0.WorxLandroid.' + serial + '.Status', 'Remote control');
                                              break;
                                          case 13:
                                              setState('0_userdata.0.WorxLandroid.' + serial + '.Status', 'escape from off limits');
                                              break;
                                          case 30:
                                              setState('0_userdata.0.WorxLandroid.' + serial + '.Status', 'Fahrt zur Ladestation');
                                              break;
                                          case 30:
                                              setState('0_userdata.0.WorxLandroid.' + serial + '.Status', 'Zonen Training');
                                              break;
                                          case 30:
                                              setState('0_userdata.0.WorxLandroid.' + serial + '.Status', 'Rasenkantenschnitt');
                                              break;
                                          case 30:
                                              setState('0_userdata.0.WorxLandroid.' + serial + '.Status', 'Suche Zone');
                                              break;
                                          case 30:
                                              setState('0_userdata.0.WorxLandroid.' + serial + '.Status', 'Pause');
                                              break;
                                      }
                                  });
                                  
                                  on({id: [].concat(['worx.0.' + serial + '.mower.totalTime']), change: "any"}, async function (obj) {
                                      setState('0_userdata.0.WorxLandroid.' + serial + '.Betriebsstunden_Maeher', Math.round((parseFloat((obj.state ? obj.state.val : "")) / 60)*100)/100);
                                  
                                      let diff = obj.state.val;
                                      console.log("Minuten gesamt: " + diff); 
                                      
                                      let days = Math.floor(diff / 60 / 24);
                                      diff = diff - (days * 60 * 24)
                                  
                                      let hours = Math.floor(diff / 60)
                                      diff = diff - (hours * 60)
                                    
                                      console.log("Betriebszeit Mäher: " + days + " Tage, " +  hours + " Stunden, " + diff + " Minuten")
                                      
                                      setState('0_userdata.0.WorxLandroid.' + serial + '.Betriebszeit_Maeher', days + " T. " +  hours + " Std. " + diff + " Min.");
                                  });
                                  
                                  on({id: [].concat(['worx.0.' + serial + '.mower.totalBladeTime']), change: "any"}, async function (obj) {
                                      setState('0_userdata.0.WorxLandroid.' + serial + '.Betriebsstunden_Klingen', Math.round((parseFloat((obj.state ? obj.state.val : "")) / 60)*100)/100);
                                      
                                      let diff = obj.state.val;
                                      console.log("Minuten Klingen: " + diff); 
                                      
                                      let days = Math.floor(diff / 60 / 24);
                                      diff = diff - (days * 60 * 24)
                                  
                                      let hours = Math.floor(diff / 60)
                                      diff = diff - (hours * 60)
                                    
                                      console.log("Betriebszeit Klingen: " + days + " Tage, " +  hours + " Stunden, " + diff + " Minuten")
                                      
                                      setState('0_userdata.0.WorxLandroid.' + serial + '.Betriebszeit_Klingen', days + " T. " +  hours + " Std. " + diff + " Min.");
                                  });
                                  
                                  on({id: [].concat(['worx.0.' + serial + '.mower.totalDistance']), change: "any"}, async function (obj) {
                                    setState('0_userdata.0.WorxLandroid.' + serial + '.Betriebsstrecke_km', (parseFloat((obj.state ? obj.state.val : "")) / 1000));
                                  });
                                  

                                  Falls du das Script im Spoiler gebrauchen kannst? Ein JS-Script anlegen, die Seriennummer aus dem Worx Adapter einfügen und starten.

                                  Die Infos kannst du dann per Alias info in die Card bringen 😊

                                  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 Reply Last reply
                                  0
                                  • N Offline
                                    N Offline
                                    nono87
                                    wrote on last edited by
                                    #5618

                                    @armilar said in SONOFF NSPanel mit Lovelace UI:

                                    Die Infos kannst du dann per Alias info in die Card bringen

                                    Die Daten habe ich soweit schon aufbereitet, aber mir fehlt es dann noch das ich diese im Panel anzeigen lassen kann.

                                    Ich versuche es mal anders.

                                    zM_7kxKp.jpeg

                                    Wie in dem Bild zu sehen werden die Zustände nur als Zahlen dargestellt. Da hätte ich gern das es in Wörtern steht 😊
                                    oder von mir aus auch unter der Zahl.

                                    ArmilarA 1 Reply Last reply
                                    0
                                    • N nono87

                                      @armilar said in SONOFF NSPanel mit Lovelace UI:

                                      Die Infos kannst du dann per Alias info in die Card bringen

                                      Die Daten habe ich soweit schon aufbereitet, aber mir fehlt es dann noch das ich diese im Panel anzeigen lassen kann.

                                      Ich versuche es mal anders.

                                      zM_7kxKp.jpeg

                                      Wie in dem Bild zu sehen werden die Zustände nur als Zahlen dargestellt. Da hätte ich gern das es in Wörtern steht 😊
                                      oder von mir aus auch unter der Zahl.

                                      ArmilarA Offline
                                      ArmilarA Offline
                                      Armilar
                                      Most Active Forum Testing
                                      wrote on last edited by Armilar
                                      #5619

                                      @nono87

                                      Hast du das JS-Script im Spoiler nicht gesehen?

                                      Das macht exakt das was du brauchst...

                                      39115ef1-f479-4bf7-8587-ee0cc65fa795-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.

                                      N 1 Reply Last reply
                                      0
                                      • ArmilarA Armilar

                                        @nono87

                                        Hast du das JS-Script im Spoiler nicht gesehen?

                                        Das macht exakt das was du brauchst...

                                        39115ef1-f479-4bf7-8587-ee0cc65fa795-image.png

                                        N Offline
                                        N Offline
                                        nono87
                                        wrote on last edited by
                                        #5620

                                        @armilar

                                        Ich habe immer gedacht das nur Zahlen angezeigt werden können und keine Texte drum habe ich es auch nicht probiert, weil ich sonst immer nur die States der Geräte genommen habe und dort eben Zahlen waren.

                                        Super. Auf jeden fall vielen Dank für den Gedankenanstoss 😊

                                        ArmilarA 1 Reply Last reply
                                        1
                                        • N nono87

                                          @armilar

                                          Ich habe immer gedacht das nur Zahlen angezeigt werden können und keine Texte drum habe ich es auch nicht probiert, weil ich sonst immer nur die States der Geräte genommen habe und dort eben Zahlen waren.

                                          Super. Auf jeden fall vielen Dank für den Gedankenanstoss 😊

                                          ArmilarA Offline
                                          ArmilarA Offline
                                          Armilar
                                          Most Active Forum Testing
                                          wrote on last edited by
                                          #5621

                                          @nono87

                                          Das NSPanel kennt nur Text... Zahlen und Icons sind ebenfalls Strings 😉

                                          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.

                                          N P 2 Replies Last reply
                                          1
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          623

                                          Online

                                          32.4k

                                          Users

                                          81.3k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe