[vc_row full_width="" parallax="" parallax_image="" seperator_indeed_locker="Indeed Social Locker" lk_sl="" lk_t="" lk_la="horizontal" lk_dc="true" lk_dfn="true" lk_lt="2" lk_etl="0" lk_tl="30" lk_nru="0" lk_rl="0" lk_lra="30" lk_lrt="days" lk_io="" lk_lp="50" lk_dm="0" lk_thm="0" lk_tuo="0" lk_dt=" "][vc_column width="1/1" css=".vc_custom_1442767910088{background-color: #f4f4f4 !important;}"][vc_row_inner][vc_column_inner el_class="" width="1/4" css=".vc_custom_1442917949199{padding-top: 10px !important;padding-bottom: 5px !important;padding-left: 10px !important;}"][vc_single_image image="16142" alignment="center" style="vc_box_circle_2" border_color="grey" img_link_large="" img_link_target="_self" css_animation="" img_size="60x60"][/vc_column_inner][vc_column_inner el_class="" width="3/4"][vc_column_text]
New: Read this article in english
This article is now available in english on siio.com.[/vc_column_text][/vc_column_inner][/vc_row_inner][/vc_column][/vc_row][vc_row][vc_column][vc_column_text]Hat man mehrere Fibaro RGB Module im Einsatz, so kann es sinnvoll sein diese zu synchron zu steuern. Hier ein kleines LUA Script für das Fibaro Home Center 2, welches genau das löst.
In unserem Wohnzimmer mit offener Küche Amerikanischer Art verwende ich inzwischen drei Fibaro RGB Module, welche ein LED Stripe in der Küche, ein LED Stripe hinter dem Treppengeländer und eine LED Wofi Leuchte ansteuern. Da ich mich von meiner eigenen Wohnung penetriert fühle, wenn alle LEDs eine andere Farbe haben, musste eine Lösung her.
Mit folgendem LUA Script können beliebig viele LED Stripes auf die gleiche Farbe synchronisiert werden wie ein zuvor definierter "MASTER" - Bitte beachte, auch der ein- bzw. ausschalt- Zustand wird synchronisiert, sowie auch die Programme.
Folgendes Script einfach in eine LUA Szene kopieren und mit den eigenen Variablen für den Master und den bzw. die Slaves befüllen:
--[[ %% properties 155 color %% globals --]] local id_master = 155; -- ID des Master (bitte ID aendern) local id_slaves = {125,184}; -- ID des Slaves, getrennt durch Komma {1}, {1,2,3} local debug = true; -- Debug an oder aus if debug then fibaro:debug("Syncing RGB"); end function split(s, pattern, maxsplit) local pattern = pattern or ' ' local maxsplit = maxsplit or -1 local s = s local t = {} local patsz = #pattern while maxsplit ~= 0 do local curpos = 1 local found = string.find(s, pattern) if found ~= nil then table.insert(t, string.sub(s, curpos, found - 1)) curpos = found + patsz s = string.sub(s, curpos) else table.insert(t, string.sub(s, curpos)) break end maxsplit = maxsplit - 1 if maxsplit == 0 then table.insert(t, string.sub(s, curpos - patsz - 1)) end end return t end local result = split(fibaro:getValue(id_master, "color"), ',') if debug then fibaro:debug(result[1]..","..result[2]..","..result[3]..","..result[4]); end for i = 1, #id_slaves do if (result[1] == "0" and result[2] == "0" and result[3] == "0" and result[4] == "0" and (tonumber(fibaro:getValue(id_master, "currentProgramID")) > 0)) then if debug then fibaro:debug(fibaro:getValue(id_master, "currentProgramID")); end fibaro:call(id_slaves[i], "startProgram", fibaro:getValue(id_master, "currentProgramID")); else fibaro:call(id_slaves[i], "setColor", result[1], result[2], result[3], result[4]) end end
Damit die Szene auch in der HC2 Oberfläche hübsch aussieht hier noch ein passendes Icon
[/vc_column_text][/vc_column][/vc_row]