Website-Icon Dein Smart Home Blog

(Z-Wave) LED Stripe´s per Fibaro RGB Module synchronisieren

©crissxcross

LED Treppenlicht grün ©crissxcross

[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.

LED Treppenlicht lila ©crissxcross

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.

Fibaro Szene RGB synchronisieren

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

Icon Fibaro HC2 Szene RGB Modul synchronisieren

[/vc_column_text][/vc_column][/vc_row]

Die mobile Version verlassen