Great feedback on all this and I too have this problem. At first I thought it was the way I was instantiating device channels in the sketch like this:
Code: Select all
// set up channels
ZUNO_SETUP_CHANNELS(
ZUNO_SWITCH_BINARY(getterMasterEnable, setterMasterEnable), // this is channel 1: the master enable switch
ZUNO_SENSOR_MULTILEVEL_HUMIDITY(getterHumidity), // this is channel 2: the device sensor for the ambient humidity
ZUNO_SWITCH_MULTILEVEL(getterDehumid, setterDehumid), // this is channel 3: the slider to set the target dehumidity level
ZUNO_SWITCH_BINARY(getterRelayEnable, setterRelayEnable) // this is channel 4: sensor to pass the value of the dehumidifer relay
);
Note the first and fourth definitions are for BINARY SWITCHES. It doesn't work and the issue is at the Z-Wave internals level. Here is a screenshot of what is created in the Z-Uno MCU (using ZWave JS API viewer to view, see
https://github.com/zwave-js for more information):
- ZWave_Node_create.png (89.85 KiB) Viewed 2562 times
You can see that only three device values have been created for the Z-Uno including only ONE instance of the Binary Switch.
Moreover, is appears that an attempt to create a multiple device class somehow screws up the api calls on the Z-Uno and at least on my viewer, node interview fails and doesn't return after initial boot (upper right corner is a stuck node interview request on the Z-Uno).
So it appears that the only way to properly use a device class in only once and then use the channels documented here to identify multiple instances. Too bad because it was just be easier to work with multiple device (class) channels.... Thanks all for point me in the right direction.