I did decide to upgrade from 3.3M1 to 3.3M2, first on my test system (basically a Rpi3 hot spare of the Rpi4 production and then (after the steps below) on production.
- On the test system I had 3 three devices, luckily all the same, that had the dreaded “Handler error”.
- Following the idea from a previous post in this thread I tried,
log:set Debug org.openhab.core
, then went into the UI to update one parameter on one of the devices (was not sure what was the problem at this point) and was rewarded with a very descriptive
2022-03-09 09:49:45.092 [DEBUG] [st.core.internal.thing.ThingResource] - Config description validation exception occurred for thingUID zwave:device:f1c43721:node101 - Messages: {config_12_1=The value 1 does not match allowed parameter options. Allowed options are: [ParameterOption [value="2", label="physical toggle and Z-Wave control disabled"]]}
- Interesting is that the value of “1” is the default, but nevertheless I went into the Zwave DB, saw the problem. Although “1” is the default, there was no option for “1”, just “2”. Made the change. Downloaded a new XML. Added it to my existing custom zwave .jar. And Tada! (the normal process is to make the change, ask for review and in a few days the Zwave .jar will be updated)
Leaving out my opinion as to whether this “strict validation” is a step forward for OH usability and reputation, I can now sleep easy knowing the default value on this device is “strictly validated”.
Since there are hundreds of Zwave devices and the Zwave DB is community maintained, I thought to document the steps here as this is likely to occur as more folks upgrade.
Bob