Корзина  (пустая) 0 руб.
Корзина  (пустая) 0 руб.
Корзина  (пустая) 0 руб.
Корзина  (пустая) 0 руб.
Добро пожаловать, Гость
Логин: Пароль: Запомнить меня

ТЕМА: Scene Activation

Scene Activation 07 Окт 2016 11:39 #18930

  • syntez
  • syntez аватар
  • Вне сайта
  • Осваиваюсь на форуме
  • Сообщений: 22
  • Спасибо получено: 5
  • Репутация: 0
Добрый день, уважаемые Гуру!

Помогите, пожалуйста, разобраться с Fibaro Dimmer 2 и его Scene Activation
В скриптах еще студент :blush: :lol: , накидал небольшой скрипт для спальни
S1 - основной выключатель, S2 - выключатель у кровати
В комнате есть led лента, подключенная к fibaro rgbw

Задача следующая: При нажатии на S1 - включается только диммер,
Реально - включается диммер и led на ту яркость, которая указана для S2 :whistle:
Если же задать конкретное включение led, то свет вообще не работает как надо - включается и сразу же выключается (( (а хотелось бы задать сцену основного света на S1)

Такое ощущение. что нажатие на S1 обрабатывает зачем то команду для S2 ( "sceneActivation")) == 26 )
Зачем он так делает? (
Настройки в диммере все по дефолту кроме включенного параметра Scene Activation

Id диммера 11
Id Led 22
 
--[[
%% properties
11 sceneActivation
%% globals
--]]
 
local startSource = fibaro:getSourceTrigger();
local BedRoomDim = fibaro:getValue(11, 'value');
local BedRoomLed = fibaro:getValue(22, 'value');
 
fibaro:debug('BedRoomDim value = ' .. BedRoomDim)
fibaro:debug('BedRoomLed value = ' .. BedRoomLed)
 
local name = tonumber(fibaro:getValue(11, "sceneActivation"));
 
if
  ( tonumber(fibaro:getValue(11, "sceneActivation")) == 16 )
  then
       fibaro:debug("1 click s1 "..name);
    if
    (BedRoomDim == '0')
          then
         fibaro:call(11, "setValue", "99")
         --fibaro:call(22, "setValue", "10") -- если эта строка активна, свет вообще включается и сразу же выключается :(
       else
         fibaro:call(11, 'turnOff')
         fibaro:call(22, 'turnOff')
    end
elseif
  ( tonumber(fibaro:getValue(11, "sceneActivation")) == 26 )
  then
 
  fibaro:debug("1 click s2 "..name);
 
    if 
       (BedRoomLed == '0')
          then
 
         fibaro:call(22, "setValue", "1")
       else
         fibaro:call(11, 'turnOff')
         fibaro:call(22, 'turnOff')
    end
 
end
 
Последнее редактирование: 07 Окт 2016 11:46 от syntez.

Scene Activation 10 Окт 2016 12:37 #18968

  • syntez
  • syntez аватар
  • Вне сайта
  • Осваиваюсь на форуме
  • Сообщений: 22
  • Спасибо получено: 5
  • Репутация: 0
Удалось разобраться,
включив debug
local scene = fibaro:getValue(11, 'sceneActivation') 
fibaro:debug(scene);

Дело оказалось в том, что при нажатии на S1 срабатывала scene activation 16 и 26 одновременно, а 26 срабатывала из-за того, что рядом с кабелем к S2 вплотную шел кабель от розетки 220v с включенной зарядкой телефона.... вот такая загагулина :blink: :silly: :ohmy:
походу какие то наводки ловил....
Последнее редактирование: 10 Окт 2016 12:38 от syntez.
Время создания страницы: 0.194 секунд