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

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

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

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.
  • P PROcrastinator

    @tt-tom Der Teil stammt aus diesem Post.
    Ich verstehe, als const wird die Zeit mit Datum einmal beim Starten des Skripts hinterlegt und kann nicht mehr geändert werden. Ich habe das am Anfang des Skripts mal auskommentiert. Soweit ich es nachvollziehen kann wird nun der Zeitpunkt von 0 Uhr nur bis zum aktuellen Zeitpunkt dargestellt, allerdings fehlen die X Achsen Ticks komplett. Auch die Y-Achse macht nicht, was im Panel Skript eingetragen ist, sondern skaliert die Achse auf die Werte, die auch tatsächlich vorkommen.

    674ad412-8681-4b70-b741-820d9fbb32a3-panel.jpg

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

    @procrastinator sagte in SONOFF NSPanel mit Lovelace UI:

    Soweit ich es nachvollziehen kann wird nun der Zeitpunkt von 0 Uhr nur bis zum aktuellen Zeitpunkt dargestellt,

    das Script kann nicht in die Zukunft sehen

    allerdings fehlen die X Achsen Ticks komplett. Auch die Y-Achse macht nicht, was im Panel Skript eingetragen ist, sondern skaliert die Achse auf die Werte, die auch tatsächlich vorkommen.

    poste mal das aktuelle Script, was du nutzt und den Inhalt vom Datenpunkt

    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

    P 1 Antwort Letzte Antwort
    0
    • T TT-Tom

      @procrastinator sagte in SONOFF NSPanel mit Lovelace UI:

      Soweit ich es nachvollziehen kann wird nun der Zeitpunkt von 0 Uhr nur bis zum aktuellen Zeitpunkt dargestellt,

      das Script kann nicht in die Zukunft sehen

      allerdings fehlen die X Achsen Ticks komplett. Auch die Y-Achse macht nicht, was im Panel Skript eingetragen ist, sondern skaliert die Achse auf die Werte, die auch tatsächlich vorkommen.

      poste mal das aktuelle Script, was du nutzt und den Inhalt vom Datenpunkt

      P Offline
      P Offline
      PROcrastinator
      schrieb am zuletzt editiert von
      #3125

      @tt-tom Das es nicht in die Zukunft sehen kann ist mir klar. Aber ist es möglich die X Achse von 0 bis 0 Uhr zu fixieren und während des Tages dann die Daten aufzufüllen?

      Mein Skript:

      const sourceDP = 'alias.0.NSPanel_1.Sensor_temp_gewächshaus.ACTUAL';
      const targetDP = '0_userdata.0.NSPanel.1.Charts.Temp_Gewächshaus';
      const numberOfHoursAgo = 24;   // Period of time in hours which shall be visualized 
      const xAxisTicksEveryM = 240;   // Time after x axis gets a tick in minutes
      const xAxisLabelEveryM = 240;  // Time after x axis is labeled in minutes
      const historyInstance = 'history.0';
      //const date = new Date();
      //const start_date = new Date(date.getFullYear(), date.getMonth(), date.getDate(), 0, 0, 0);
      //const end_date = new Date(date.getFullYear(), date.getMonth(), date.getDate(), 23, 59, 59);
       
      
      const Debug = false;
      const maxX = 1420;
      const limitMeasurements = 35;
      
      createState(targetDP, "", {
              name: 'SensorGrid',
              desc: 'Sensor Values [~<time>:<value>]*',
              type: 'string',
              role: 'value',
      });
      
      on({id: sourceDP, change: "any"}, async function (obj) {
                      let date = new Date;
                      let start_date = new Date(date.getFullYear(), date.getMonth(), date.getDate(), 0, 0, 0);
                      let end_date = new Date(date.getFullYear(), date.getMonth(), date.getDate(), 23, 59, 59);
                      
                  
                      sendTo(historyInstance, 'getHistory', {
                          id: sourceDP,
                              options: {
                              start:    start_date, 
                              end:      end_date,
                              count:     limitMeasurements,
                              limit:     limitMeasurements,
                              aggregate: 'average'
                          }
                      }, function (result) {
                          var ticksAndLabels = ""
                          var coordinates = "";
                          var cardLChartString = "";
                  
                          let ticksAndLabelsList = []
                          var ts = Math.round(start_date.getTime() / 1000);
                          var tsYesterday = Math.round(end_date.getTime() / 1000);
                          
                          for (var x = tsYesterday, i = 0; x < ts; x += (xAxisTicksEveryM * 60), i += xAxisTicksEveryM)
      
              {
                  if (i % xAxisLabelEveryM) 
                  {
                      ticksAndLabelsList.push(i);
                  } else 
                  {
                      var currentDate = new Date(x * 1000);
                      // Hours part from the timestamp
                      var hours = "0" + currentDate.getHours();
                      // Minutes part from the timestamp
                      var minutes = "0" + currentDate.getMinutes();
                      // Seconds part from the timestamp
                      var seconds = "0" + currentDate.getSeconds();
                      var formattedTime = hours.slice(-2) + ':' + minutes.slice(-2);
                      ticksAndLabelsList.push(String(i) + "^" + formattedTime);
                  }
              }
              ticksAndLabels = ticksAndLabelsList.join("+");        
      
              let list = [];
              let offSetTime = Math.round(result.result[0].ts / 1000);
              let counter = Math.round((result.result[result.result.length -1 ].ts / 1000 - offSetTime) / maxX);        
              for (var i = 0; i <  result.result.length; i++) 
              {           
                  var time = Math.round(((result.result[i].ts / 1000) - offSetTime) / counter);
                  var value = Math.round(result.result[i].val * 10);
                  if ((value != null) && (value != 0)){
                      list.push(time + ":" + value)
                  }
              }
      
              coordinates = list.join("~");
              cardLChartString = ticksAndLabels + '~' + coordinates
              setState(targetDP, cardLChartString, true);
              
              if (Debug) console.log(cardLChartString);
          });    
      });
      

      Und das Objekt:

      ~33:229~100:222~167:219~234:214~300:209~367:203~500:195~567:192~634:197~701:208~767:224~834:235~901:250~967:292~1034:287~1101:294~1168:306~1234:323~1301:323~1368:324~1434:333
      

      Und die fesgelegte Skalierung im Panel Skript:

      let Temp_Gewaechshaus = <PageChart>
      {
          "type": "cardLChart",
          "heading": "Gewächshaus",
          "useColor": true,
          'items': [<PageItem>{ 
                      id: 'alias.0.NSPanel_1.Chart_temp_gewaechshaus',
                      yAxis: 'Temperatur [°C]',
                      yAxisTicks: [0,50, 100, 150, 200,250, 300,350, 400],
                      onColor: Yellow
                   }]
      };
      

      Ich habe das Skript auch durchsucht, ob da irgendwo die Skalierung weiter unten nochmal auftaucht aber habe nix gefunden.
      Vielen Dank, Roland

      T 1 Antwort Letzte Antwort
      0
      • P PROcrastinator

        @tt-tom Das es nicht in die Zukunft sehen kann ist mir klar. Aber ist es möglich die X Achse von 0 bis 0 Uhr zu fixieren und während des Tages dann die Daten aufzufüllen?

        Mein Skript:

        const sourceDP = 'alias.0.NSPanel_1.Sensor_temp_gewächshaus.ACTUAL';
        const targetDP = '0_userdata.0.NSPanel.1.Charts.Temp_Gewächshaus';
        const numberOfHoursAgo = 24;   // Period of time in hours which shall be visualized 
        const xAxisTicksEveryM = 240;   // Time after x axis gets a tick in minutes
        const xAxisLabelEveryM = 240;  // Time after x axis is labeled in minutes
        const historyInstance = 'history.0';
        //const date = new Date();
        //const start_date = new Date(date.getFullYear(), date.getMonth(), date.getDate(), 0, 0, 0);
        //const end_date = new Date(date.getFullYear(), date.getMonth(), date.getDate(), 23, 59, 59);
         
        
        const Debug = false;
        const maxX = 1420;
        const limitMeasurements = 35;
        
        createState(targetDP, "", {
                name: 'SensorGrid',
                desc: 'Sensor Values [~<time>:<value>]*',
                type: 'string',
                role: 'value',
        });
        
        on({id: sourceDP, change: "any"}, async function (obj) {
                        let date = new Date;
                        let start_date = new Date(date.getFullYear(), date.getMonth(), date.getDate(), 0, 0, 0);
                        let end_date = new Date(date.getFullYear(), date.getMonth(), date.getDate(), 23, 59, 59);
                        
                    
                        sendTo(historyInstance, 'getHistory', {
                            id: sourceDP,
                                options: {
                                start:    start_date, 
                                end:      end_date,
                                count:     limitMeasurements,
                                limit:     limitMeasurements,
                                aggregate: 'average'
                            }
                        }, function (result) {
                            var ticksAndLabels = ""
                            var coordinates = "";
                            var cardLChartString = "";
                    
                            let ticksAndLabelsList = []
                            var ts = Math.round(start_date.getTime() / 1000);
                            var tsYesterday = Math.round(end_date.getTime() / 1000);
                            
                            for (var x = tsYesterday, i = 0; x < ts; x += (xAxisTicksEveryM * 60), i += xAxisTicksEveryM)
        
                {
                    if (i % xAxisLabelEveryM) 
                    {
                        ticksAndLabelsList.push(i);
                    } else 
                    {
                        var currentDate = new Date(x * 1000);
                        // Hours part from the timestamp
                        var hours = "0" + currentDate.getHours();
                        // Minutes part from the timestamp
                        var minutes = "0" + currentDate.getMinutes();
                        // Seconds part from the timestamp
                        var seconds = "0" + currentDate.getSeconds();
                        var formattedTime = hours.slice(-2) + ':' + minutes.slice(-2);
                        ticksAndLabelsList.push(String(i) + "^" + formattedTime);
                    }
                }
                ticksAndLabels = ticksAndLabelsList.join("+");        
        
                let list = [];
                let offSetTime = Math.round(result.result[0].ts / 1000);
                let counter = Math.round((result.result[result.result.length -1 ].ts / 1000 - offSetTime) / maxX);        
                for (var i = 0; i <  result.result.length; i++) 
                {           
                    var time = Math.round(((result.result[i].ts / 1000) - offSetTime) / counter);
                    var value = Math.round(result.result[i].val * 10);
                    if ((value != null) && (value != 0)){
                        list.push(time + ":" + value)
                    }
                }
        
                coordinates = list.join("~");
                cardLChartString = ticksAndLabels + '~' + coordinates
                setState(targetDP, cardLChartString, true);
                
                if (Debug) console.log(cardLChartString);
            });    
        });
        

        Und das Objekt:

        ~33:229~100:222~167:219~234:214~300:209~367:203~500:195~567:192~634:197~701:208~767:224~834:235~901:250~967:292~1034:287~1101:294~1168:306~1234:323~1301:323~1368:324~1434:333
        

        Und die fesgelegte Skalierung im Panel Skript:

        let Temp_Gewaechshaus = <PageChart>
        {
            "type": "cardLChart",
            "heading": "Gewächshaus",
            "useColor": true,
            'items': [<PageItem>{ 
                        id: 'alias.0.NSPanel_1.Chart_temp_gewaechshaus',
                        yAxis: 'Temperatur [°C]',
                        yAxisTicks: [0,50, 100, 150, 200,250, 300,350, 400],
                        onColor: Yellow
                     }]
        };
        

        Ich habe das Skript auch durchsucht, ob da irgendwo die Skalierung weiter unten nochmal auftaucht aber habe nix gefunden.
        Vielen Dank, Roland

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

        @procrastinator sagte in SONOFF NSPanel mit Lovelace UI:

        for (var x = tsYesterday, i = 0; x < ts; x += (xAxisTicksEveryM * 60), i += xAxisTicksEveryM)
        

        bitte ändern, da dein Diagramm vorwärts zählt

        for (var x = ts, i = 0; x < tsYesterday; x += (xAxisTicksEveryM * 60), i += xAxisTicksEveryM)
        

        mit der Y-Achse gibt es schon ein Issue von mir, es werden auch keine negativen Werte angezeigt. Kannst dich ja mit ran hängen.

        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

        P 1 Antwort Letzte Antwort
        0
        • D Offline
          D Offline
          danny_v1
          schrieb am zuletzt editiert von
          #3127

          @tt-tom Hatte ich schon mal aber da gab es keine richtige Antwort.

          Ich hab ein kleines Blockly gemacht, welches die Sekunden in eine Zeit umwandelt. Ich muss da nur noch einen Umschalter reinmachen ob der Timer ein Timer ist oder eine Uhrzeit, damit die Uhrzeit nicht runter gezählt wird sobald sie eingestellt ist.

          <xml xmlns="https://developers.google.com/blockly/xml">
            <variables>
              <variable id="86:D-8adXijp2={gDX23">min</variable>
              <variable id="r9w9}E;K]NRS:pL{,V%4">std</variable>
            </variables>
            <block type="on_ext" id="!*|$z^H*ZXYt?sTK*chm" x="113" y="-587">
              <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
              <field name="CONDITION">ne</field>
              <field name="ACK_CONDITION"></field>
              <value name="OID0">
                <shadow type="field_oid" id="3SKRKl%A3kg+R46C@SrH">
                  <field name="oid">0_userdata.0.Timer.ACTUAL</field>
                </shadow>
              </value>
              <statement name="STATEMENT">
                <block type="controls_if" id="W6j|lu.e?F64/a5R2+!/">
                  <mutation elseif="1"></mutation>
                  <value name="IF0">
                    <block type="logic_compare" id="dPXpAnMtYN|vo{ZN@DRD">
                      <field name="OP">GT</field>
                      <value name="A">
                        <block type="on_source" id="q%h;;.j:aF8eLOq0W)fx">
                          <field name="ATTR">state.val</field>
                        </block>
                      </value>
                      <value name="B">
                        <block type="math_number" id="he4I6e,jS?x1P-coYg^,">
                          <field name="NUM">59</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <statement name="DO0">
                    <block type="variables_set" id="4HBrdd2#s0t5dUuWCV]~">
                      <field name="VAR" id="86:D-8adXijp2={gDX23">min</field>
                      <value name="VALUE">
                        <block type="math_modulo" id="WyYd?3;TUi[Kj9N;RmA#">
                          <value name="DIVIDEND">
                            <shadow type="math_number" id="tt^3A#VF#m;Gx;b:9XAg">
                              <field name="NUM">64</field>
                            </shadow>
                            <block type="on_source" id="}%42#6@f[Qz95@2:Lpd[">
                              <field name="ATTR">state.val</field>
                            </block>
                          </value>
                          <value name="DIVISOR">
                            <shadow type="math_number" id=".?7hFOLfC.1YQ/rTW;k?">
                              <field name="NUM">60</field>
                            </shadow>
                          </value>
                        </block>
                      </value>
                      <next>
                        <block type="variables_set" id="Hh;MTmaxBD^(@s$]K!+b">
                          <field name="VAR" id="r9w9}E;K]NRS:pL{,V%4">std</field>
                          <value name="VALUE">
                            <block type="math_arithmetic" id="%Pxsz^z:`Mk[Xh1{@ZO.">
                              <field name="OP">DIVIDE</field>
                              <value name="A">
                                <shadow type="math_number" id="?XvM(/Z9rJaq_ByB;-1[">
                                  <field name="NUM">1</field>
                                </shadow>
                                <block type="math_arithmetic" id="Jwo8Gdsf6DZ*}M~2bWGw">
                                  <field name="OP">MINUS</field>
                                  <value name="A">
                                    <shadow type="math_number" id="o@Ul)m+x=)jF0lth.WFY">
                                      <field name="NUM">1</field>
                                    </shadow>
                                    <block type="on_source" id="I#VoJa5*b[jW|6-Xs2XC">
                                      <field name="ATTR">state.val</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <shadow type="math_number" id="F`mWn%m$vLIkOw)!z$9O">
                                      <field name="NUM">1</field>
                                    </shadow>
                                    <block type="variables_get" id="yj#G1*{JMSv%[.EgGLpY">
                                      <field name="VAR" id="86:D-8adXijp2={gDX23">min</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <value name="B">
                                <shadow type="math_number" id="tO2o(96fy:qz!j)X}2kc">
                                  <field name="NUM">60</field>
                                </shadow>
                              </value>
                            </block>
                          </value>
                        </block>
                      </next>
                    </block>
                  </statement>
                  <value name="IF1">
                    <block type="logic_compare" id="bbBvgb;%w7.;$TL8gcXc">
                      <field name="OP">LTE</field>
                      <value name="A">
                        <block type="on_source" id="@{!BfD!,1MGg0JjPX`/@">
                          <field name="ATTR">state.val</field>
                        </block>
                      </value>
                      <value name="B">
                        <block type="math_number" id="r}]UJd|1{2B27+@L|frZ">
                          <field name="NUM">59</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <statement name="DO1">
                    <block type="variables_set" id="y!YFxqxr,A[jgGh)Jn5Q">
                      <field name="VAR" id="86:D-8adXijp2={gDX23">min</field>
                      <value name="VALUE">
                        <block type="on_source" id=",Az_K{xVZWGMGEy6MuU-">
                          <field name="ATTR">state.val</field>
                        </block>
                      </value>
                    </block>
                  </statement>
                  <next>
                    <block type="control" id="tOGxdGp,[2b$rHwHUp{v">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                      <field name="OID">0_userdata.0.Timer.Zeit.std</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                        <block type="variables_get" id="vMtU^(jbol6i,-I.X.a%">
                          <field name="VAR" id="r9w9}E;K]NRS:pL{,V%4">std</field>
                        </block>
                      </value>
                      <next>
                        <block type="control" id="Zz[)mx.;P1$=RD3TrsFs">
                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                          <field name="OID">0_userdata.0.Timer.Zeit.min</field>
                          <field name="WITH_DELAY">FALSE</field>
                          <value name="VALUE">
                            <block type="variables_get" id="Ol~.{Zw2xyMb@R2OFP`7">
                              <field name="VAR" id="86:D-8adXijp2={gDX23">min</field>
                            </block>
                          </value>
                          <next>
                            <block type="control" id="w5?op69x/#WL)ChDImu#">
                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                              <field name="OID">0_userdata.0.Timer.Zeit.Zeit</field>
                              <field name="WITH_DELAY">FALSE</field>
                              <value name="VALUE">
                                <block type="text_join" id="Dz..P0PH}U+y*,=x.[2M">
                                  <mutation items="5"></mutation>
                                  <value name="ADD0">
                                    <block type="variables_get" id=",E+RX=qXxg79m#+J=X6G">
                                      <field name="VAR" id="r9w9}E;K]NRS:pL{,V%4">std</field>
                                    </block>
                                  </value>
                                  <value name="ADD1">
                                    <block type="text" id="pRoD#[vtwzAnWY@)zz-m">
                                      <field name="TEXT">:</field>
                                    </block>
                                  </value>
                                  <value name="ADD2">
                                    <block type="variables_get" id=")8Mo94l4kYjL!OEqB#Q=">
                                      <field name="VAR" id="86:D-8adXijp2={gDX23">min</field>
                                    </block>
                                  </value>
                                  <value name="ADD3">
                                    <block type="text" id="@pQu}W.@VrE32ny[x#n_">
                                      <field name="TEXT">:</field>
                                    </block>
                                  </value>
                                  <value name="ADD4">
                                    <block type="text" id="0E!wP$K[R4C)Z@BJNtY-">
                                      <field name="TEXT">00</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </next>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </statement>
            </block>
            <block type="schedule" id="CT1[DYShkPFSs,*O#g]:" x="763" y="-537">
              <field name="SCHEDULE">*/10 * * * * *</field>
              <statement name="STATEMENT">
                <block type="controls_if" id="0HEj[/r]9f6D|B8;Y`[?">
                  <value name="IF0">
                    <block type="time_compare_ex" id="FI~[ksEr0IwTcg=QkwBE">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="false" actual_time="true"></mutation>
                      <field name="USE_ACTUAL_TIME">TRUE</field>
                      <field name="OPTION">==</field>
                      <value name="START_TIME">
                        <shadow type="text" id="XL89tet[4DQ5cb)y~yt=">
                          <field name="TEXT">12:00</field>
                        </shadow>
                        <block type="get_value" id="x@I%dHA33Pol:IzuUQ_[">
                          <field name="ATTR">val</field>
                          <field name="OID">0_userdata.0.Timer.Zeit.Zeit</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <statement name="DO0">
                    <block type="control" id="Xyt]m1MR,knVLpkR_8-.">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                      <field name="OID">0_userdata.0.Timer.Zeit.Alarm</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                        <block type="logic_boolean" id="sMK/cam7xTpNI]G-!EO7">
                          <field name="BOOL">TRUE</field>
                        </block>
                      </value>
                    </block>
                  </statement>
                </block>
              </statement>
            </block>
          </xml>
          
          T 1 Antwort Letzte Antwort
          0
          • D danny_v1

            @tt-tom Hatte ich schon mal aber da gab es keine richtige Antwort.

            Ich hab ein kleines Blockly gemacht, welches die Sekunden in eine Zeit umwandelt. Ich muss da nur noch einen Umschalter reinmachen ob der Timer ein Timer ist oder eine Uhrzeit, damit die Uhrzeit nicht runter gezählt wird sobald sie eingestellt ist.

            <xml xmlns="https://developers.google.com/blockly/xml">
              <variables>
                <variable id="86:D-8adXijp2={gDX23">min</variable>
                <variable id="r9w9}E;K]NRS:pL{,V%4">std</variable>
              </variables>
              <block type="on_ext" id="!*|$z^H*ZXYt?sTK*chm" x="113" y="-587">
                <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                <field name="CONDITION">ne</field>
                <field name="ACK_CONDITION"></field>
                <value name="OID0">
                  <shadow type="field_oid" id="3SKRKl%A3kg+R46C@SrH">
                    <field name="oid">0_userdata.0.Timer.ACTUAL</field>
                  </shadow>
                </value>
                <statement name="STATEMENT">
                  <block type="controls_if" id="W6j|lu.e?F64/a5R2+!/">
                    <mutation elseif="1"></mutation>
                    <value name="IF0">
                      <block type="logic_compare" id="dPXpAnMtYN|vo{ZN@DRD">
                        <field name="OP">GT</field>
                        <value name="A">
                          <block type="on_source" id="q%h;;.j:aF8eLOq0W)fx">
                            <field name="ATTR">state.val</field>
                          </block>
                        </value>
                        <value name="B">
                          <block type="math_number" id="he4I6e,jS?x1P-coYg^,">
                            <field name="NUM">59</field>
                          </block>
                        </value>
                      </block>
                    </value>
                    <statement name="DO0">
                      <block type="variables_set" id="4HBrdd2#s0t5dUuWCV]~">
                        <field name="VAR" id="86:D-8adXijp2={gDX23">min</field>
                        <value name="VALUE">
                          <block type="math_modulo" id="WyYd?3;TUi[Kj9N;RmA#">
                            <value name="DIVIDEND">
                              <shadow type="math_number" id="tt^3A#VF#m;Gx;b:9XAg">
                                <field name="NUM">64</field>
                              </shadow>
                              <block type="on_source" id="}%42#6@f[Qz95@2:Lpd[">
                                <field name="ATTR">state.val</field>
                              </block>
                            </value>
                            <value name="DIVISOR">
                              <shadow type="math_number" id=".?7hFOLfC.1YQ/rTW;k?">
                                <field name="NUM">60</field>
                              </shadow>
                            </value>
                          </block>
                        </value>
                        <next>
                          <block type="variables_set" id="Hh;MTmaxBD^(@s$]K!+b">
                            <field name="VAR" id="r9w9}E;K]NRS:pL{,V%4">std</field>
                            <value name="VALUE">
                              <block type="math_arithmetic" id="%Pxsz^z:`Mk[Xh1{@ZO.">
                                <field name="OP">DIVIDE</field>
                                <value name="A">
                                  <shadow type="math_number" id="?XvM(/Z9rJaq_ByB;-1[">
                                    <field name="NUM">1</field>
                                  </shadow>
                                  <block type="math_arithmetic" id="Jwo8Gdsf6DZ*}M~2bWGw">
                                    <field name="OP">MINUS</field>
                                    <value name="A">
                                      <shadow type="math_number" id="o@Ul)m+x=)jF0lth.WFY">
                                        <field name="NUM">1</field>
                                      </shadow>
                                      <block type="on_source" id="I#VoJa5*b[jW|6-Xs2XC">
                                        <field name="ATTR">state.val</field>
                                      </block>
                                    </value>
                                    <value name="B">
                                      <shadow type="math_number" id="F`mWn%m$vLIkOw)!z$9O">
                                        <field name="NUM">1</field>
                                      </shadow>
                                      <block type="variables_get" id="yj#G1*{JMSv%[.EgGLpY">
                                        <field name="VAR" id="86:D-8adXijp2={gDX23">min</field>
                                      </block>
                                    </value>
                                  </block>
                                </value>
                                <value name="B">
                                  <shadow type="math_number" id="tO2o(96fy:qz!j)X}2kc">
                                    <field name="NUM">60</field>
                                  </shadow>
                                </value>
                              </block>
                            </value>
                          </block>
                        </next>
                      </block>
                    </statement>
                    <value name="IF1">
                      <block type="logic_compare" id="bbBvgb;%w7.;$TL8gcXc">
                        <field name="OP">LTE</field>
                        <value name="A">
                          <block type="on_source" id="@{!BfD!,1MGg0JjPX`/@">
                            <field name="ATTR">state.val</field>
                          </block>
                        </value>
                        <value name="B">
                          <block type="math_number" id="r}]UJd|1{2B27+@L|frZ">
                            <field name="NUM">59</field>
                          </block>
                        </value>
                      </block>
                    </value>
                    <statement name="DO1">
                      <block type="variables_set" id="y!YFxqxr,A[jgGh)Jn5Q">
                        <field name="VAR" id="86:D-8adXijp2={gDX23">min</field>
                        <value name="VALUE">
                          <block type="on_source" id=",Az_K{xVZWGMGEy6MuU-">
                            <field name="ATTR">state.val</field>
                          </block>
                        </value>
                      </block>
                    </statement>
                    <next>
                      <block type="control" id="tOGxdGp,[2b$rHwHUp{v">
                        <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                        <field name="OID">0_userdata.0.Timer.Zeit.std</field>
                        <field name="WITH_DELAY">FALSE</field>
                        <value name="VALUE">
                          <block type="variables_get" id="vMtU^(jbol6i,-I.X.a%">
                            <field name="VAR" id="r9w9}E;K]NRS:pL{,V%4">std</field>
                          </block>
                        </value>
                        <next>
                          <block type="control" id="Zz[)mx.;P1$=RD3TrsFs">
                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                            <field name="OID">0_userdata.0.Timer.Zeit.min</field>
                            <field name="WITH_DELAY">FALSE</field>
                            <value name="VALUE">
                              <block type="variables_get" id="Ol~.{Zw2xyMb@R2OFP`7">
                                <field name="VAR" id="86:D-8adXijp2={gDX23">min</field>
                              </block>
                            </value>
                            <next>
                              <block type="control" id="w5?op69x/#WL)ChDImu#">
                                <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                <field name="OID">0_userdata.0.Timer.Zeit.Zeit</field>
                                <field name="WITH_DELAY">FALSE</field>
                                <value name="VALUE">
                                  <block type="text_join" id="Dz..P0PH}U+y*,=x.[2M">
                                    <mutation items="5"></mutation>
                                    <value name="ADD0">
                                      <block type="variables_get" id=",E+RX=qXxg79m#+J=X6G">
                                        <field name="VAR" id="r9w9}E;K]NRS:pL{,V%4">std</field>
                                      </block>
                                    </value>
                                    <value name="ADD1">
                                      <block type="text" id="pRoD#[vtwzAnWY@)zz-m">
                                        <field name="TEXT">:</field>
                                      </block>
                                    </value>
                                    <value name="ADD2">
                                      <block type="variables_get" id=")8Mo94l4kYjL!OEqB#Q=">
                                        <field name="VAR" id="86:D-8adXijp2={gDX23">min</field>
                                      </block>
                                    </value>
                                    <value name="ADD3">
                                      <block type="text" id="@pQu}W.@VrE32ny[x#n_">
                                        <field name="TEXT">:</field>
                                      </block>
                                    </value>
                                    <value name="ADD4">
                                      <block type="text" id="0E!wP$K[R4C)Z@BJNtY-">
                                        <field name="TEXT">00</field>
                                      </block>
                                    </value>
                                  </block>
                                </value>
                              </block>
                            </next>
                          </block>
                        </next>
                      </block>
                    </next>
                  </block>
                </statement>
              </block>
              <block type="schedule" id="CT1[DYShkPFSs,*O#g]:" x="763" y="-537">
                <field name="SCHEDULE">*/10 * * * * *</field>
                <statement name="STATEMENT">
                  <block type="controls_if" id="0HEj[/r]9f6D|B8;Y`[?">
                    <value name="IF0">
                      <block type="time_compare_ex" id="FI~[ksEr0IwTcg=QkwBE">
                        <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="false" actual_time="true"></mutation>
                        <field name="USE_ACTUAL_TIME">TRUE</field>
                        <field name="OPTION">==</field>
                        <value name="START_TIME">
                          <shadow type="text" id="XL89tet[4DQ5cb)y~yt=">
                            <field name="TEXT">12:00</field>
                          </shadow>
                          <block type="get_value" id="x@I%dHA33Pol:IzuUQ_[">
                            <field name="ATTR">val</field>
                            <field name="OID">0_userdata.0.Timer.Zeit.Zeit</field>
                          </block>
                        </value>
                      </block>
                    </value>
                    <statement name="DO0">
                      <block type="control" id="Xyt]m1MR,knVLpkR_8-.">
                        <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                        <field name="OID">0_userdata.0.Timer.Zeit.Alarm</field>
                        <field name="WITH_DELAY">FALSE</field>
                        <value name="VALUE">
                          <block type="logic_boolean" id="sMK/cam7xTpNI]G-!EO7">
                            <field name="BOOL">TRUE</field>
                          </block>
                        </value>
                      </block>
                    </statement>
                  </block>
                </statement>
              </block>
            </xml>
            
            T Offline
            T Offline
            tobiasp
            schrieb am zuletzt editiert von tobiasp
            #3128

            Hallo zusammen,ich mal wieder.
            Habe heute das Update durchgeführt.
            Wasjetzt ist, das der Bildschwirm "schwarz" wird und wenn ich ihn berühre kommt der "Normale Screensaver".
            Was muss ich ändern das immer der "normale" bleibt?
            Daaanke

            T 1 Antwort Letzte Antwort
            0
            • T tobiasp

              Hallo zusammen,ich mal wieder.
              Habe heute das Update durchgeführt.
              Wasjetzt ist, das der Bildschwirm "schwarz" wird und wenn ich ihn berühre kommt der "Normale Screensaver".
              Was muss ich ändern das immer der "normale" bleibt?
              Daaanke

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

              @tobiasp

              Was für ein Update, ein paar Infos muss du schon geben.

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

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

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

              T 1 Antwort Letzte Antwort
              0
              • T TT-Tom

                @tobiasp

                Was für ein Update, ein paar Infos muss du schon geben.

                T Offline
                T Offline
                tobiasp
                schrieb am zuletzt editiert von tobiasp
                #3130

                @tt-tom
                Ok habe auf die aktuelle Version aktualisiert (Berry 8 und Nextion 4.1.1)

                T 1 Antwort Letzte Antwort
                0
                • T tobiasp

                  @tt-tom
                  Ok habe auf die aktuelle Version aktualisiert (Berry 8 und Nextion 4.1.1)

                  T Offline
                  T Offline
                  tobiasp
                  schrieb am zuletzt editiert von
                  #3131

                  @tobiasp
                  So habe gerade Nextion nocheinmal geflasht und alles ist wieder normal.
                  Danke trotzdem

                  T 1 Antwort Letzte Antwort
                  0
                  • T tobiasp

                    @tobiasp
                    So habe gerade Nextion nocheinmal geflasht und alles ist wieder normal.
                    Danke trotzdem

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

                    @tobiasp okay

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

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

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

                    1 Antwort Letzte Antwort
                    0
                    • C Offline
                      C Offline
                      carlos
                      schrieb am zuletzt editiert von
                      #3133

                      Habe seit Java script 7.0.5 aktuell 7.1.0 folgenden Fehler:

                      14.6.2023, 09:16:28.744	[info ]: javascript.0 (12132) Stop script script.js.NSPanels.NsPanelTS40514_
                      14.6.2023, 09:16:30.334	[info ]: javascript.0 (12132) script.js.NSPanels.NsPanelTS40514_: compiling TypeScript source...
                      14.6.2023, 09:16:30.937	[error]: javascript.0 (12132) script.js.NSPanels.NsPanelTS40514_: TypeScript compilation failed:
                              if ((pageItem.useColor || useColors) && ((typeof (value) === 'boolean' && value) || value > (pageItem.minValueBrightness !== undefined ? pageItem.minValueBrightness : 0))) {
                                                                                                                  ^
                      ERROR: Operator '>' cannot be applied to types 'number | boolean' and 'number'.
                      

                      7.0.3 fumktioniert

                      ArmilarA 1 Antwort Letzte Antwort
                      0
                      • C carlos

                        Habe seit Java script 7.0.5 aktuell 7.1.0 folgenden Fehler:

                        14.6.2023, 09:16:28.744	[info ]: javascript.0 (12132) Stop script script.js.NSPanels.NsPanelTS40514_
                        14.6.2023, 09:16:30.334	[info ]: javascript.0 (12132) script.js.NSPanels.NsPanelTS40514_: compiling TypeScript source...
                        14.6.2023, 09:16:30.937	[error]: javascript.0 (12132) script.js.NSPanels.NsPanelTS40514_: TypeScript compilation failed:
                                if ((pageItem.useColor || useColors) && ((typeof (value) === 'boolean' && value) || value > (pageItem.minValueBrightness !== undefined ? pageItem.minValueBrightness : 0))) {
                                                                                                                    ^
                        ERROR: Operator '>' cannot be applied to types 'number | boolean' and 'number'.
                        

                        7.0.3 fumktioniert

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

                        @carlos

                        Ja, JS-Adapter (stable) ist immer noch 6.1.4.

                        Größer 7.0.3 funktioniert bei mir auch nicht...

                        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.

                        GarganoG 1 Antwort Letzte Antwort
                        0
                        • C Offline
                          C Offline
                          chuckle
                          schrieb am zuletzt editiert von
                          #3135

                          Hallo zusammen

                          Auch nach viel Lesen scheitere ich immer noch am "waiting for content" Bildschirm. Ich weiss echt nicht was ich noch prüfen soll.
                          Die MQTT Verbindung steht aber das Panel scheint immer mit unknown command zu antworten.
                          Hier mal meine Konfig:
                          08251fbd-1612-44ff-9946-6550bdf12b4c-grafik.png 68a657d1-7bd3-4b99-9db5-e51e40e30415-grafik.png 731dc7e4-4939-4d9e-81e9-4df53bcd560b-grafik.png d456eb8f-00b9-41ab-95bd-fa357ab4e1cc-grafik.png

                          Das ist dann eine Payload im CustomSend:
                          entityUpd~Büro~button~bPrev~~65535~button~bNext~~65535~deletedeletedelete~~delete~

                          Und das Panel sendet dann im STAT RESULT zurück
                          {
                          "Command": "Unknown"
                          }

                          Was habe ich falsch gemacht, ich blicks wirklich nicht mehr. Hoffe ihr könnt mir helfen.

                          1 Antwort Letzte Antwort
                          0
                          • T Offline
                            T Offline
                            TT-Tom
                            schrieb am zuletzt editiert von
                            #3136

                            @chuckle
                            nimm mal die Websockets raus.

                            kannst du mal auf der Tasmota Konsole schauen was dort ankommt.

                            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

                            C 1 Antwort Letzte Antwort
                            0
                            • T TT-Tom

                              @chuckle
                              nimm mal die Websockets raus.

                              kannst du mal auf der Tasmota Konsole schauen was dort ankommt.

                              C Offline
                              C Offline
                              chuckle
                              schrieb am zuletzt editiert von
                              #3137

                              @tt-tom Websockets mal rausgenommen, hat nicht geholfen.
                              Auf der Panel Konsole sehe ich nur das:
                              d3aa7c05-9991-490d-bce5-0c6bbe0b12e5-grafik.png
                              Kann ich da noch mehr ausgeben lassen?

                              L 1 Antwort Letzte Antwort
                              0
                              • C chuckle

                                @tt-tom Websockets mal rausgenommen, hat nicht geholfen.
                                Auf der Panel Konsole sehe ich nur das:
                                d3aa7c05-9991-490d-bce5-0c6bbe0b12e5-grafik.png
                                Kann ich da noch mehr ausgeben lassen?

                                L Offline
                                L Offline
                                L4rs
                                schrieb am zuletzt editiert von
                                #3138

                                @chuckle Da bei mir der ioBroker auch als Client gegen einen Mosquitto läuft sehen meine Einstellungen etwas anders aus - ich finde allerdings Deine die IP in Deinem ersten Screenshot merkwürdig, meine IPv4 Adressen sind alle ohne irgendwelche Zusätze geschrieben.
                                Was Du noch ausprobieren könntest wäre, den MQTT Explorer herunterzuladen und gegen den ioBroker zu connecten, um die Einstellungen zu verifizieren.

                                Gruß, Lars

                                C 1 Antwort Letzte Antwort
                                0
                                • L L4rs

                                  @chuckle Da bei mir der ioBroker auch als Client gegen einen Mosquitto läuft sehen meine Einstellungen etwas anders aus - ich finde allerdings Deine die IP in Deinem ersten Screenshot merkwürdig, meine IPv4 Adressen sind alle ohne irgendwelche Zusätze geschrieben.
                                  Was Du noch ausprobieren könntest wäre, den MQTT Explorer herunterzuladen und gegen den ioBroker zu connecten, um die Einstellungen zu verifizieren.

                                  Gruß, Lars

                                  C Offline
                                  C Offline
                                  chuckle
                                  schrieb am zuletzt editiert von
                                  #3139

                                  @l4rs Danke für die Hinweise. Das ist das Interface, ioBroker läuft auf einer ProxMox VM. Ich hatte zuerst es auch über eine Moqutto Instanz am laufen, das ging aber auch nicht, also hab ich den Server in ioBroker inkludiert.
                                  Ich habe die mqtt Verbindungen mit MQTTX getestet, das funktioniert soweit. Interessanterweise sehe ich dort die Änderung an einem Relais nicht. Aber im ioBroker sehe ich den Zustand sofort....

                                  T 1 Antwort Letzte Antwort
                                  0
                                  • C chuckle

                                    @l4rs Danke für die Hinweise. Das ist das Interface, ioBroker läuft auf einer ProxMox VM. Ich hatte zuerst es auch über eine Moqutto Instanz am laufen, das ging aber auch nicht, also hab ich den Server in ioBroker inkludiert.
                                    Ich habe die mqtt Verbindungen mit MQTTX getestet, das funktioniert soweit. Interessanterweise sehe ich dort die Änderung an einem Relais nicht. Aber im ioBroker sehe ich den Zustand sofort....

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

                                    @chuckle deine Einstellungen passen zu meinem Testsystem. Das läuft auch auf einer VM.

                                    Läuft dein Panel Script, kommen Meldungen im Log?
                                    Ggf das Script nochmal neu starten und den Debug Modus mal aktivieren im Script (Debug = True).

                                    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

                                    C 1 Antwort Letzte Antwort
                                    0
                                    • T TT-Tom

                                      @chuckle deine Einstellungen passen zu meinem Testsystem. Das läuft auch auf einer VM.

                                      Läuft dein Panel Script, kommen Meldungen im Log?
                                      Ggf das Script nochmal neu starten und den Debug Modus mal aktivieren im Script (Debug = True).

                                      C Offline
                                      C Offline
                                      chuckle
                                      schrieb am zuletzt editiert von
                                      #3141

                                      @tt-tom Panel Script läuft, Debug Modus ist bereits eingeschaltet. Messages kommen am MQTT-Broker an, aber am Panel irgendwie nicht so, das es damit was anfangen kann.

                                      T 1 Antwort Letzte Antwort
                                      0
                                      • C chuckle

                                        @tt-tom Panel Script läuft, Debug Modus ist bereits eingeschaltet. Messages kommen am MQTT-Broker an, aber am Panel irgendwie nicht so, das es damit was anfangen kann.

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

                                        @chuckle

                                        Hast du das Panel frisch geflasht. Vielleicht ist da was schief gegangen

                                        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

                                        C 1 Antwort Letzte Antwort
                                        0
                                        • T TT-Tom

                                          @chuckle

                                          Hast du das Panel frisch geflasht. Vielleicht ist da was schief gegangen

                                          C Offline
                                          C Offline
                                          chuckle
                                          schrieb am zuletzt editiert von
                                          #3143

                                          @tt-tom du meinst damit: FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v4.0.5.tft?
                                          Ja schon 3mal 😞

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          699

                                          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