Which flags are accepted by ZUNO_ENABLE() and ZUNO_DISABLE()?

Discussion about Z-Uno product. Visit http://z-uno.z-wave.me for more details.
Post Reply
perjar
Posts: 57
Joined: 08 Apr 2018 18:02

Which flags are accepted by ZUNO_ENABLE() and ZUNO_DISABLE()?

Post by perjar »

Has anyone seen a more comprehensive documention of the ZUNO_ENABLE()/ZUNO_DISABLE() macros for generation 1?

What I am looking for is the complete list of accepted flags and their usage.
The reference documentation shows a few examples on this page https://z-uno.z-wave.me/Reference/ZUNO_ENABLE/

So, the following are allowed:
WITH_CC_SENSOR_BINARY
LOGGING_EVENTS
LOGGING_UART=Serial
SERVICE_LEDS
MY_LIBRARY_DEBUG
MY_LIBRARY_DEBUG_LEVEL=x
NO_MULTIBINARY_SWITCH0
NO_LOOP_MINIMALDELAY

But I know that this is not an exchaustive list because the follwing are also used in a code sample called "z-uno as a modem":
WITH_CC_SWITCH_MULTILEVEL
WITH_CC_METER
WITH_CC_SENSOR_BINARY
WITH_CC_SWITCH_COLOR
WITH_CC_SENSOR_MULTILEVEL
WITH_CC_DOORLOCK
WITH_CC_SWITCH_BINARY
WITH_CC_NOTIFICATION
WITH_CC_THERMOSTAT

On the news page (https://z-uno.z-wave.me/news/) there are a few more mentioned:
SENSORMULTILEVEL_AGGREGATION0
SENSOR_BINARY

None of the above are defined in the .h-files as far as I can tell.

If there is a NO_MULTIBINARY_SWITCH0 flag, it is not a too far-away guess that there might be a NO_MULTIBINARY_SWITCH1 too.

Surprisingly enough, the compiler accepts any flag without protest, which makes me wonder how this function really works and how to know which flags actually have an impact.

For example, ZUNO_ENABLE(MY_RANDOM_FLAG) will not generate any compilation errors, even though MY_RANDOM_FLAG is undefined. Strange.

Any ideas?
User avatar
PoltoS
Posts: 7562
Joined: 26 Jan 2011 19:36

Re: Which flags are accepted by ZUNO_ENABLE() and ZUNO_DISABLE()?

Post by PoltoS »

I think this is the full list. WITH_CC is to instruct not to optimize the code (throw away the Command Class) if no channels are defined. Aggregation0 is to aggregate all features in root device instead of channels
Post Reply