Skip to content
  • Home
  • 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
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Visualisierung
  4. MQTT und Milight

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    3.5k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.1k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

MQTT und Milight

Scheduled Pinned Locked Moved Visualisierung
7 Posts 4 Posters 2.1k Views 5 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.
  • M Offline
    M Offline
    mtaxer
    wrote on last edited by
    #1

    Guten Morgen,

    ich verwende den Milight Hub (Arduino) (https://github.com/sidoh/esp8266_milight_hub) und binde ihn über den MQTT Adapter in ioBroker an.

    Der Hub hat den Vorteil, dass ich nicht pro 4 Kanäle einen Originalgateway verwenden muss. 1 Milight Hub (Arduino) kann quasi unendlich viele Module steuern.

    Der Hub nimmt auch die Signale von der Originalfernbedienung entgegen. Eine Synchronisation mit ioBroker ist dadurch möglich. Womit wir auch schon bei meinem Problem wären.

    Als Beispiel soll eine RGBW Controller von Milight (https://www.amazon.de/Wireless-Steuermo … F1G6PE5GED) dienen. Ich verwende jetzt nur mal die Aus- und Einschaltfunktion.

    Im Vis Adapter habe ich einen Schalter (fancyswitch – Schieber dunkel Aus/Ein) und jeweils ein Symbol welches „Licht an“ und „Licht aus“ grafisch darstellt. Gesteuert über die Sichtbarkeit (Objekt ID und Wert).

    Grafiken für An und Aus

    Objekt ID: mqtt.0.milight.commands.0xE233.rgbw.4

    Bedingung: ==

    Wert: {"state":"ON"} bzw. {"state":"OFF"}

    Fancyswitch

    Objekt ID: mqtt.0.milight.commands.0xE233.rgbw.4

    Falsch-Wert: {"state":"OFF"}

    Wahr-Wert: {"state":"ON"}

    Drücke ich nun den Schalter in der Vis, schaltet sich der LED Stripe „Ein“ bzw. „Aus“. Auch die Grafiken für den Status ändern sich wie gewünscht mit.

    Drücke ich die Originalfernbedienung schaltet der LED Stripe wie gewollt und auch die Grafiken in der Vis ändern sich auch mit. Nur der Schalter wird nicht mit synchronisiert. Und genau das ist mein Problem. Gibt es eine Möglichkeit den Schalter auch Synchron zu bekommen?

    SG

    Mario

    S Jan PuchtaJ 2 Replies Last reply
    0
    • R Offline
      R Offline
      RappiRN
      Most Active
      wrote on last edited by
      #2

      Milight ist leider nicht bidirektional, d.h. es kommen keine Rückmeldungen, weshalb auch keine Meldung kommt, wenn du per FB schaltest, das ist beim Gateway das Gleiche.

      Ob es aber vielleicht in deiner Konstellation möglich wäre, MQTT mitzuteilen, dass die FB einen Befehl über dein Gerät gesendet hat, das weiß ich nicht!

      Edit: Man, man wieder nicht richtig zu Ende gelesen. :? Hast du noch einen anderen Datenpunkt außer rgb und hast du auch mal einen anderen Schalter ausprobiert, ich hatte den Fancy-Switch auch schon mal verwendet, hatte da irgendwie das Problem, dass dieser von allein zurück geschaltet hat,obwohl das Objekt noch an war!? Is aber auch schon ewig her.

      Aber diese Möglichkeit, doch eine Rückmeldung zu bekommen interesssiert mich! :D

      Enrico

      1 Reply Last reply
      0
      • M Offline
        M Offline
        mtaxer
        wrote on last edited by
        #3

        @RappiRN:

        Edit: Man, man wieder nicht richtig zu Ende gelesen. :? Hast du noch einen anderen Datenpunkt außer rgb und hast du auch mal einen anderen Schalter ausprobiert, ich hatte den Fancy-Switch auch schon mal verwendet, hatte da irgendwie das Problem, dass dieser von allein zurück geschaltet hat,obwohl das Objekt noch an war!? Is aber auch schon ewig her. `
        kann schon mal passieren :) … Datenpunkt gibt es pro Kanal nur einen. Die verschiedenen Möglichkeiten, Ein/Aus - RGB(W) - Brightness, HUE usw., werden dann anhand des Befehles im Feld "Wert" ausgeführt.

        Einen anderen Schalter hab ich auch schon versucht - hqwidgets - On/Off. Aber leider das selbe Verhalten. Der Status des Schalters wird beim Betätigen der Originalfernbedienung nicht mit synchronisiert. Nur die Symbole für "EIN/AUS" laufen synchron ...

        SG

        Mario

        1 Reply Last reply
        0
        • M mtaxer

          Guten Morgen,

          ich verwende den Milight Hub (Arduino) (https://github.com/sidoh/esp8266_milight_hub) und binde ihn über den MQTT Adapter in ioBroker an.

          Der Hub hat den Vorteil, dass ich nicht pro 4 Kanäle einen Originalgateway verwenden muss. 1 Milight Hub (Arduino) kann quasi unendlich viele Module steuern.

          Der Hub nimmt auch die Signale von der Originalfernbedienung entgegen. Eine Synchronisation mit ioBroker ist dadurch möglich. Womit wir auch schon bei meinem Problem wären.

          Als Beispiel soll eine RGBW Controller von Milight (https://www.amazon.de/Wireless-Steuermo … F1G6PE5GED) dienen. Ich verwende jetzt nur mal die Aus- und Einschaltfunktion.

          Im Vis Adapter habe ich einen Schalter (fancyswitch – Schieber dunkel Aus/Ein) und jeweils ein Symbol welches „Licht an“ und „Licht aus“ grafisch darstellt. Gesteuert über die Sichtbarkeit (Objekt ID und Wert).

          Grafiken für An und Aus

          Objekt ID: mqtt.0.milight.commands.0xE233.rgbw.4

          Bedingung: ==

          Wert: {"state":"ON"} bzw. {"state":"OFF"}

          Fancyswitch

          Objekt ID: mqtt.0.milight.commands.0xE233.rgbw.4

          Falsch-Wert: {"state":"OFF"}

          Wahr-Wert: {"state":"ON"}

          Drücke ich nun den Schalter in der Vis, schaltet sich der LED Stripe „Ein“ bzw. „Aus“. Auch die Grafiken für den Status ändern sich wie gewünscht mit.

          Drücke ich die Originalfernbedienung schaltet der LED Stripe wie gewollt und auch die Grafiken in der Vis ändern sich auch mit. Nur der Schalter wird nicht mit synchronisiert. Und genau das ist mein Problem. Gibt es eine Möglichkeit den Schalter auch Synchron zu bekommen?

          SG

          Mario

          S Offline
          S Offline
          slemy
          wrote on last edited by
          #4

          @bigd-73
          Hi,
          kannst du mir zeigen was ich da eintragen soll ?
          Neue Bitmap.jpg
          möchte es auch über MQTT versuchen .
          THX

          1 Reply Last reply
          0
          • S Offline
            S Offline
            slemy
            wrote on last edited by slemy
            #5

            ok soweit bin ich jetzt auch, State ändert sich nun auch egal was man macht mit der Fernbedienung was über milight-smart-light.0 Adapter nicht ging da nicht bidirektional ist, jetzt wäre ein Blockly Skript gut das Objekt ID und Wert ausliest zum beispiel {"state":"ON"} dann hier milight-smart-light.0.Wohnzimmer.rgbw-1.onoff auf True ändert oder so, dann kann man in VIS weiter machen damit Ein“ bzw. „Aus“. Auch die Grafiken für den Status ändern, oder kann uns einer jetzt irgenwie helfen, da man jetzt den Wert True/False ändern kann .

            so etwa nur das es falsch ist

            
            BlocklyJavascriptTypeScript
            Skript läuft nicht
            13:43:02.256	info	javascript.0 Stop script script.js.common.milight-test
            Ausgewählte Blöcke exportieren
            <xml xmlns="http://www.w3.org/1999/xhtml">
              <block type="on" id="%jCw~L#4N0zp0S+ckKh!" x="-362" y="-212">
                <field name="OID">mqtt.0.milight.updates.0x8B4C.rgbw.1</field>
                <field name="CONDITION">any</field>
                <field name="ACK_CONDITION"></field>
                <statement name="STATEMENT">
                  <block type="controls_if" id="}q*Y+Q=G?dlNXxBC,es9">
                    <value name="IF0">
                      <block type="logic_compare" id="c_5km@iv_$eUTk~_^PE=">
                        <field name="OP">EQ</field>
                        <value name="A">
                          <block type="text_indexOf" id="A^qFGNIsgBr`oOq!8h-8">
                            <field name="END">FIRST</field>
                            <value name="VALUE">
                              <shadow type="text" id="Wuctg26#/+xe=J4=,mTC">
                                <field name="TEXT"></field>
                              </shadow>
                              <block type="get_value" id="%YKl0:.qf:@o1ZCK$Ob#">
                                <field name="ATTR">val</field>
                                <field name="OID">mqtt.0.milight.updates.0x8B4C.rgbw.0</field>
                              </block>
                            </value>
                            <value name="FIND">
                              <shadow type="text" id="?).tM_iUlCX{0Sk]A`0+">
                                <field name="TEXT">{"state":"ON"}</field>
                              </shadow>
                            </value>
                          </block>
                        </value>
                      </block>
                    </value>
                    <statement name="DO0">
                      <block type="control" id="S4bM^)qJZ^OGY-nA%zUC">
                        <mutation delay_input="true"></mutation>
                        <field name="OID">milight-smart-light.0.Wohnzimmer.rgbw-1.onoff</field>
                        <field name="WITH_DELAY">TRUE</field>
                        <field name="DELAY_MS">5</field>
                        <field name="UNIT">sec</field>
                        <field name="CLEAR_RUNNING">TRUE</field>
                        <value name="VALUE">
                          <block type="logic_boolean" id="RZOsT6ym3.4,3{SLUA(G">
                            <field name="BOOL">FALSE</field>
                          </block>
                        </value>
                      </block>
                    </statement>
                  </block>
                </statement>
              </block>
            </xml>
            <xml xmlns="http://www.w3.org/1999/xhtml">
              <block type="on" id="%jCw~L#4N0zp0S+ckKh!" x="-362" y="-212">
                <field name="OID">mqtt.0.milight.updates.0x8B4C.rgbw.1</field>
                <field name="CONDITION">any</field>
                <field name="ACK_CONDITION"></field>
                <statement name="STATEMENT">
                  <block type="controls_if" id="}q*Y+Q=G?dlNXxBC,es9">
                    <value name="IF0">
                      <block type="logic_compare" id="c_5km@iv_$eUTk~_^PE=">
                        <field name="OP">EQ</field>
                        <value name="A">
                          <block type="text_indexOf" id="A^qFGNIsgBr`oOq!8h-8">
                            <field name="END">FIRST</field>
                            <value name="VALUE">
                              <shadow type="text" id="Wuctg26#/+xe=J4=,mTC">
                                <field name="TEXT"></field>
                              </shadow>
                              <block type="get_value" id="%YKl0:.qf:@o1ZCK$Ob#">
                                <field name="ATTR">val</field>
                                <field name="OID">mqtt.0.milight.updates.0x8B4C.rgbw.0</field>
                              </block>
                            </value>
                            <value name="FIND">
                              <shadow type="text" id="?).tM_iUlCX{0Sk]A`0+">
                                <field name="TEXT">{"state":"ON"}</field>
                              </shadow>
                            </value>
                          </block>
                        </value>
                      </block>
                    </value>
                    <statement name="DO0">
                      <block type="control" id="S4bM^)qJZ^OGY-nA%zUC">
                        <mutation delay_input="true"></mutation>
                        <field name="OID">milight-smart-light.0.Wohnzimmer.rgbw-1.onoff</field>
                        <field name="WITH_DELAY">TRUE</field>
                        <field name="DELAY_MS">5</field>
                        <field name="UNIT">sec</field>
                        <field name="CLEAR_RUNNING">TRUE</field>
                        <value name="VALUE">
                          <block type="logic_boolean" id="RZOsT6ym3.4,3{SLUA(G">
                            <field name="BOOL">FALSE</field>
                          </block>
                        </value>
                      </block>
                    </statement>
                  </block>
                </statement>
              </block>
            </xml>
            

            sk.jpg

            milight.jpg

            1 Reply Last reply
            0
            • S Offline
              S Offline
              slemy
              wrote on last edited by slemy
              #6

              Soweit Funktioniert der Skript, jetzt fehlt noch ein Widgets .
              Neue Bitm.jpg

              
              BlocklyJavascriptTypeScript
              Protokoll
              Ausgewählte Blöcke exportieren
              <xml xmlns="http://www.w3.org/1999/xhtml">
                <block type="on" id="%jCw~L#4N0zp0S+ckKh!" x="-362" y="-212">
                  <field name="OID">mqtt.0.milight.states.0x8B4C.rgbw.1</field>
                  <field name="CONDITION">ne</field>
                  <field name="ACK_CONDITION"></field>
                  <statement name="STATEMENT">
                    <block type="controls_if" id="#~LwQDZv;s`9}d1b31!D">
                      <value name="IF0">
                        <block type="logic_compare" id="ml[0rp4*`32z;f(Xn(yp">
                          <field name="OP">EQ</field>
                          <value name="A">
                            <block type="text_indexOf" id="+hluwdt?P?HdmjYqn7o+">
                              <field name="END">FIRST</field>
                              <value name="VALUE">
                                <shadow type="text" id="Wuctg26#/+xe=J4=,mTC">
                                  <field name="TEXT"></field>
                                </shadow>
                                <block type="get_value" id="T{CtVxufq?]ZOMyH!j^/">
                                  <field name="ATTR">val</field>
                                  <field name="OID">mqtt.0.milight.updates.0x8B4C.rgbw.1</field>
                                </block>
                              </value>
                              <value name="FIND">
                                <shadow type="text" id="I0@ht-D6/ho-^j!PcXi`">
                                  <field name="TEXT">{"state":"ON"</field>
                                </shadow>
                              </value>
                            </block>
                          </value>
                        </block>
                      </value>
                      <statement name="DO0">
                        <block type="control" id="ZAJ,lw=wCeRXF-7pT,Rb">
                          <mutation delay_input="false"></mutation>
                          <field name="OID">milight-smart-light.0.Wohnzimmer.rgbw-1.ON-vis</field>
                          <field name="WITH_DELAY">FALSE</field>
                          <value name="VALUE">
                            <block type="logic_boolean" id="f{3dvxe1/3UH*Oe(.0nr">
                              <field name="BOOL">FALSE</field>
                            </block>
                          </value>
                        </block>
                      </statement>
                      <next>
                        <block type="controls_if" id="=Pe$=o0Z){n[a;8Uc!1C">
                          <value name="IF0">
                            <block type="logic_compare" id="4DMLBm_zpY66Z7hbBgO!">
                              <field name="OP">EQ</field>
                              <value name="A">
                                <block type="text_indexOf" id="TFQVxOrzqAc%kK0=(jfy">
                                  <field name="END">FIRST</field>
                                  <value name="VALUE">
                                    <shadow type="text" id="Wuctg26#/+xe=J4=,mTC">
                                      <field name="TEXT"></field>
                                    </shadow>
                                    <block type="get_value" id="6F21.nAl#2wziFbKLg(t">
                                      <field name="ATTR">val</field>
                                      <field name="OID">mqtt.0.milight.updates.0x8B4C.rgbw.1</field>
                                    </block>
                                  </value>
                                  <value name="FIND">
                                    <shadow type="text" id="XSv,%Om4w_hSKgH`ZH%$">
                                      <field name="TEXT">{"state":"OFF"</field>
                                    </shadow>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO0">
                            <block type="control" id="NE:@ofbcXgHP)8TDyJwI">
                              <mutation delay_input="false"></mutation>
                              <field name="OID">milight-smart-light.0.Wohnzimmer.rgbw-1.ON-vis</field>
                              <field name="WITH_DELAY">FALSE</field>
                              <value name="VALUE">
                                <block type="logic_boolean" id="{21,w2p;-)=w$(a4m-5v">
                                  <field name="BOOL">TRUE</field>
                                </block>
                              </value>
                            </block>
                          </statement>
                        </block>
                      </next>
                    </block>
                  </statement>
                </block>
              </xml>
              <xml xmlns="http://www.w3.org/1999/xhtml">
                <block type="on" id="%jCw~L#4N0zp0S+ckKh!" x="-362" y="-212">
                  <field name="OID">mqtt.0.milight.states.0x8B4C.rgbw.1</field>
                  <field name="CONDITION">ne</field>
                  <field name="ACK_CONDITION"></field>
                  <statement name="STATEMENT">
                    <block type="controls_if" id="#~LwQDZv;s`9}d1b31!D">
                      <value name="IF0">
                        <block type="logic_compare" id="ml[0rp4*`32z;f(Xn(yp">
                          <field name="OP">EQ</field>
                          <value name="A">
                            <block type="text_indexOf" id="+hluwdt?P?HdmjYqn7o+">
                              <field name="END">FIRST</field>
                              <value name="VALUE">
                                <shadow type="text" id="Wuctg26#/+xe=J4=,mTC">
                                  <field name="TEXT"></field>
                                </shadow>
                                <block type="get_value" id="T{CtVxufq?]ZOMyH!j^/">
                                  <field name="ATTR">val</field>
                                  <field name="OID">mqtt.0.milight.updates.0x8B4C.rgbw.1</field>
                                </block>
                              </value>
                              <value name="FIND">
                                <shadow type="text" id="I0@ht-D6/ho-^j!PcXi`">
                                  <field name="TEXT">{"state":"ON"</field>
                                </shadow>
                              </value>
                            </block>
                          </value>
                        </block>
                      </value>
                      <statement name="DO0">
                        <block type="control" id="ZAJ,lw=wCeRXF-7pT,Rb">
                          <mutation delay_input="false"></mutation>
                          <field name="OID">milight-smart-light.0.Wohnzimmer.rgbw-1.ON-vis</field>
                          <field name="WITH_DELAY">FALSE</field>
                          <value name="VALUE">
                            <block type="logic_boolean" id="f{3dvxe1/3UH*Oe(.0nr">
                              <field name="BOOL">FALSE</field>
                            </block>
                          </value>
                        </block>
                      </statement>
                      <next>
                        <block type="controls_if" id="=Pe$=o0Z){n[a;8Uc!1C">
                          <value name="IF0">
                            <block type="logic_compare" id="4DMLBm_zpY66Z7hbBgO!">
                              <field name="OP">EQ</field>
                              <value name="A">
                                <block type="text_indexOf" id="TFQVxOrzqAc%kK0=(jfy">
                                  <field name="END">FIRST</field>
                                  <value name="VALUE">
                                    <shadow type="text" id="Wuctg26#/+xe=J4=,mTC">
                                      <field name="TEXT"></field>
                                    </shadow>
                                    <block type="get_value" id="6F21.nAl#2wziFbKLg(t">
                                      <field name="ATTR">val</field>
                                      <field name="OID">mqtt.0.milight.updates.0x8B4C.rgbw.1</field>
                                    </block>
                                  </value>
                                  <value name="FIND">
                                    <shadow type="text" id="XSv,%Om4w_hSKgH`ZH%$">
                                      <field name="TEXT">{"state":"OFF"</field>
                                    </shadow>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO0">
                            <block type="control" id="NE:@ofbcXgHP)8TDyJwI">
                              <mutation delay_input="false"></mutation>
                              <field name="OID">milight-smart-light.0.Wohnzimmer.rgbw-1.ON-vis</field>
                              <field name="WITH_DELAY">FALSE</field>
                              <value name="VALUE">
                                <block type="logic_boolean" id="{21,w2p;-)=w$(a4m-5v">
                                  <field name="BOOL">TRUE</field>
                                </block>
                              </value>
                            </block>
                          </statement>
                        </block>
                      </next>
                    </block>
                  </statement>
                </block>
              </xml>
              
              1 Reply Last reply
              0
              • M mtaxer

                Guten Morgen,

                ich verwende den Milight Hub (Arduino) (https://github.com/sidoh/esp8266_milight_hub) und binde ihn über den MQTT Adapter in ioBroker an.

                Der Hub hat den Vorteil, dass ich nicht pro 4 Kanäle einen Originalgateway verwenden muss. 1 Milight Hub (Arduino) kann quasi unendlich viele Module steuern.

                Der Hub nimmt auch die Signale von der Originalfernbedienung entgegen. Eine Synchronisation mit ioBroker ist dadurch möglich. Womit wir auch schon bei meinem Problem wären.

                Als Beispiel soll eine RGBW Controller von Milight (https://www.amazon.de/Wireless-Steuermo … F1G6PE5GED) dienen. Ich verwende jetzt nur mal die Aus- und Einschaltfunktion.

                Im Vis Adapter habe ich einen Schalter (fancyswitch – Schieber dunkel Aus/Ein) und jeweils ein Symbol welches „Licht an“ und „Licht aus“ grafisch darstellt. Gesteuert über die Sichtbarkeit (Objekt ID und Wert).

                Grafiken für An und Aus

                Objekt ID: mqtt.0.milight.commands.0xE233.rgbw.4

                Bedingung: ==

                Wert: {"state":"ON"} bzw. {"state":"OFF"}

                Fancyswitch

                Objekt ID: mqtt.0.milight.commands.0xE233.rgbw.4

                Falsch-Wert: {"state":"OFF"}

                Wahr-Wert: {"state":"ON"}

                Drücke ich nun den Schalter in der Vis, schaltet sich der LED Stripe „Ein“ bzw. „Aus“. Auch die Grafiken für den Status ändern sich wie gewünscht mit.

                Drücke ich die Originalfernbedienung schaltet der LED Stripe wie gewollt und auch die Grafiken in der Vis ändern sich auch mit. Nur der Schalter wird nicht mit synchronisiert. Und genau das ist mein Problem. Gibt es eine Möglichkeit den Schalter auch Synchron zu bekommen?

                SG

                Mario

                Jan PuchtaJ Offline
                Jan PuchtaJ Offline
                Jan Puchta
                wrote on last edited by
                #7

                @bigd-73 hallo,
                keine ahnung ob du hier noch aktiv bist,
                hast du zeit und kannst du mir bei meinem problem helfen?
                komme nicht weiter https://forum.iobroker.net/topic/26275/mqtt-milight-hub-newbie

                Danke

                1 Reply Last reply
                0
                Reply
                • Reply as topic
                Log in to reply
                • Oldest to Newest
                • Newest to Oldest
                • Most Votes


                Support us

                ioBroker
                Community Adapters
                Donate

                642

                Online

                32.7k

                Users

                82.4k

                Topics

                1.3m

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

                • Don't have an account? Register

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