Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. state per script ändern klappt nicht

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    state per script ändern klappt nicht

    This topic has been deleted. Only users with topic management privileges can see it.
    • Q
      quinti last edited by

      Hallo,
      habe eine Gosund WB4 RGBW LED Lampe mit Tamota 8.3.1 geflasht und per MQTT in den sonoff Adapter übernommen.
      Möchte nun per script die RGB Werte ändern. Script läuft und im iobroker log sieht man wie die states geändert werden. In der Objektliste sieht man auch den entsprechenden Wert. Leider werden die Änderungen nicht an die Lampe übergeben.
      Wenn ich in der Objektliste den Datenpunkt von Hand änderen (Wert eingebe und Häckchen setzte) klappts. Die Farbe ändert sich entsprechend und im console log von Tasmota sieht man wie der Befehl verarbeitet wird.
      Was mache ich falsch?

      Homoran 1 Reply Last reply Reply Quote 0
      • Homoran
        Homoran Global Moderator Administrators @quinti last edited by

        @quinti sagte in state per script ändern klappt nicht:

        Leider werden die Änderungen nicht an die Lampe übergeben.

        setzst du ack = true oder false?

        @quinti sagte in state per script ändern klappt nicht:

        Wert eingebe und Häckchen setzte

        Das wäre ack=true, was für einen Datenpunkt eines Adapters absolut untypisch wäre

        1 Reply Last reply Reply Quote 0
        • Q
          quinti last edited by quinti

          habs mit einem script versucht (soll so dann auch laufen) , und zum testen mit einem einfachem blockly, geht beides nicht:
          blockly.jpg

          const idTemp = 'javascript.0.temptest'/*temptest*/;
          const idRot = 'sonoff.0.LED27_Zapfstelle.Red'/*LED27 Zapfstelle  Red*/;
          const idGruen = 'sonoff.0.LED27_Zapfstelle.Green'/*LED27 Zapfstelle  Green*/;
          const idBlau = 'sonoff.0.LED27_Zapfstelle.Blue'/*LED27 Zapfstelle  Blue*/;
          const tmin = -15;  // minimale Temperatur
          const tmax = 35;   // maximale Temperatur
          const tg = 10;     // Temperatur für 100% grün
          const maxFarbe = 100;  // max. Farbwert
          
          var t = getState(idTemp).val;
          
          function farbe() {
             if(t < tmin) t = tmin;
             if(t > tmax) t = tmax;
             if(t < tg){
                setState(idRot, 0, true);
                setState(idGruen, maxFarbe * (t - tmin) / (tg - tmin), true);
                setState(idBlau, maxFarbe * (tg - t) / ( tg - tmin), true);
             } else {
                setState(idRot, maxFarbe * (t - tg) / (tmax - tg), true);
                setState(idGruen, maxFarbe * (tmax - t) / ( tmax - tg), true);
                setState(idBlau, 0, true);
             }
          }
          
          farbe();  // Skriptstart
          
          on(idTemp, function(dp) {
             
             t = dp.state.val;
             farbe();
          });
          
          paul53 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @quinti last edited by

            @quinti
            Die Werte für die Datenpunkte idRot, idGruen und idBlau müssen mit Ack = false / Block "steuere" geschrieben werden.

            Q 1 Reply Last reply Reply Quote 0
            • Q
              quinti @paul53 last edited by

              Danke das wars!!!

              1 Reply Last reply Reply Quote 0
              • First post
                Last post

              Support us

              ioBroker
              Community Adapters
              Donate

              861
              Online

              31.8k
              Users

              80.0k
              Topics

              1.3m
              Posts

              javascript
              3
              5
              238
              Loading More Posts
              • Oldest to Newest
              • Newest to Oldest
              • Most Votes
              Reply
              • Reply as topic
              Log in to reply
              Community
              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
              The ioBroker Community 2014-2023
              logo