0
Answered

button with 3 different status

Duncanvsmith996 7 years ago in Products / KNX updated by Vladimir Ovchinnikov (expert) 5 years ago 9

I get 3 fan statuses low (0/1), med (0/1) and high(0/1). I want to change and indication of a button in 3 different states.What button type must I use (trigger)?

thanks!

Hi. Look at this example. Have a nice day! 3_State_Buttons.irpz

Answered

Hello, it cannot be made with the simple buttons. The graphic item regularry controls only one channel, but not 3 of them.

But please look at the attached solution (you can see it how it works when conneced to some equipment).


3 knx connamds from one btn.irpz


Здравствуйте! А возможно ли всё таки реализовать 3 состояния одной кнопки? Либо, подскажите как это сделать через скрипт.Предложенный вариант выше не подходит (с 3-мя элементами), т.к. нет места для расположения этих элементов. 

+1

3_State_Buttons.irpz откройте и посмотрите, реализовано с помощью скрипта. Места много не занимает, достаточно "одного" элемента))

+1

Добрый день.

Если под состояниями имеются в виду States, то можете использовать в качестве образца приложенный проект.

multistate.irpz

А это разве не просто кнопка будет в анимации?
Мне нужно, чтоб от трех фитбеков на 1 нопку приходил сигнал и менялся State

В примере использован один фидбэк. Можете использовать три. Код:

var device = IR.GetDevice("Modbus TCP");

IR.AddListener(IR.EVENT_TAG_CHANGE, device, function(name, value)
{
if ((name == "mb_CtrlLight_00") && (value == 0))
{
IR.Log("Value = 0.");
IR.GetPage("Page 1").GetItem("Item 1").State = 0;
}
if ((name == "mb_CtrlLight_01") && (value == 1))
{
IR.Log("Value = 1.");
IR.GetPage("Page 1").GetItem("Item 1").State = 1;
}
if ((name == "mb_CtrlLight_02") && (value == 2))
{
IR.Log("Value = 2.");
IR.GetPage("Page 1").GetItem("Item 1").State = 2;
}
});

Фидбэки mb_CtrlLight_00, mb_CtrlLight_01 и mb_CtrlLight_02 должны существовать в драйвере.

Great thanks for your replies!!!