A few months ago, I reported an issue with the MultiInstanceCmdEncap swapping the command and instance parameters in the return handler. I encountered this while porting over a CT-100 driver with humidity support. At the time, I was able to work around the issue like so:
def zwaveEvent(hubitat.zwave.commands.multiinstancev1.MultiInstanceCmdEncap cmd) {
def instance = cmd.command
cmd.command = cmd.instance
cmd.instance = cmd.command
def encapsulatedCommand = cmd.encapsulatedCommand([0x31: 2])
log.debug ("multiinstancev1.MultiInstanceCmdEncap: command from instance ${cmd.instance}: ${encapsulatedCommand}")
if (encapsulatedCommand) {
return zwaveEvent(encapsulatedCommand)
}
}
This issue was addressed in the 1.1.4 release, however after applying the update and removing the workaround in my driver, my driver no longer works. The event handler above never even gets called. I suspect that the bug fix broke a related piece of code.
Is anyone else successfully using MultiInstanceCmdEncap in a driver right now, or is it broken for everyone? Tagging @joshua since you mentioned issues with this in another post.