ZUNO_FLOWSTOP()

This macro is used to setup binary switch channel of type flow stop for Z-Uno board using ZUNO_SETUP_CHANNELS. Z-Uno understands two ways to define a channel: using getter function and using a variable.
  • With getter definition the getter function is called each time a value is requested. This allows to do some calculus before returning a value.
  • With variable definition Z-Uno will automatically return the variable status. This allows to minimize your code.
ZUNO_FLOWSTOP(getter, setter) getter pointer to a user defined function, which is supposed to return current value for this channel. setter pointer to a user defined function, which is called when new value is received for this channel. Functions getter should return 0 for Closed and any non-zero value for Open BYTE getter(void) Functions setter accepts next values:
  • 0 for closed
  • 1-99 for open
  • >=100 - reserved value
void setter(BYTE value) Channel generated using this macro will have Z-Wave Device Class GENERIC_TYPE_SWITCH_BINARY / SPECIFIC_TYPE_VALVE_OPEN_CLOSE with Switch Binary Command Class. You can make a battery power flow stop using FLiRS power mode (see ZUNO_SETUP_SLEEPING_MODE).
        ZUNO_SETUP_CHANNELS(ZUNO_FLOWSTOP(getterFunction, setterFunction));
           
void setup() {
    ...
}

void loop() {
    ...
}

BYTE getterFunction() {
    return currentValue;
}

void setterFunction(BYTE newValue) {
    ...
}
        
    
ZUNO_FLOWSTOP(variable, NULL) variable variable that stores the current value for this channel. 0 for Closed and any non-zero value for Open Variable change can be detected using function zunoIsChannelUpdated(channelNum).
        ZUNO_SETUP_CHANNELS(ZUNO_FLOWSTOP(flowStatus, NULL));

byte flowStatus = 0;

void setup() {
    ...
}

void loop() {
    ...
    flowStatus = ...;
    ...
}