So I have been struggling with this for the last several days and I am trying to find a stable solution.
A bit of background… I have 3 MultiSensor Gen2s from a SmartThings setup last year. It all worked really well but then the ST cloud started getting wonky and I wanted something more within my control. After some other HA iterations I ended up with HomeAssistant. I made the move and got the ZW090 Aeotec USB Stick.
Current problem, openzwave is able to easily see the devices, and I am able to modify all of the parameters, except one, which is the problem… Parameter 5.
DSB05 Parameters Map (http://aeotec.com/z-wave-sensor/1323-multisensor-guide.html):
Battery Power Multisensor
Wake up the Multisensor before sending in configurations
- Tap the Multisensor button located inside the back panel 3 times repeatedly (Make sure that the red LED remains on)
- Go to your Z-Wave software and enter the configurations below:
Parameter 3: 240 (Timeout period of no-motion after motion sensor trigger [timeout every 240 seconds after triggering motion])
Parameter 4: 1 (Enable PIR Motion Sensor)
Parameter 101: 225 (Sets sensors [Light, Humidity, Temperature, and Battery] to be reported in group 1)
Parameter 111: 600 (Sets the interval of reports for group 1 [report parameter 101 every 10 minutes or 600 seconds]) - Put the Multisensor to sleep to conserve battery power, tap the button on the Multisensor 3 times repeatedly. The red LED should turn off to indicate that it is asleep.
What this doesn’t spell out is that Parameter 5 enables/disables the binary reporting (true/false). Instead, the lack of this parameter enables the “Basic Reporting” where HIGH(motion)=255 and LOW(no-motion)=0. HomeAssistant doesn’t see this value as the typical on/off and ignores it all together.
OpenZWave has Parameter 5 in its configs with a value=“1” (Basic Reporting) defaulted. However, no matter what happens after the device has joined the network, the value doesn’t get stored by HomeAssistant.
##configuration.yaml
zwave:
usb_path: /dev/zwave
config_path: /srv/homeassistant/homeassistant_venv/lib/python3.4/site-packages/libopenzwave-0.3.1-py3.4-linux-armv7l.egg/config
autoheal: false
polling_interval: 60000
##dsb05.xml (modified) : Line 22
< Value type="list" index="5" genre="config" label="Command Options" min="1" max="2" value="2" size="1">
< Help>Which commands to send when PIR motion sensor triggered
< Item label="Basic Set (default)" value="1" />
< Item label="Binary Sensor Report" value="2" />
However, it gets stored as:
##zwcfg_#####.xml
< Value type=“list” genre=“config” instance=“1” index=“5” label=“Command Options” units="" read_only=“false” write_only=“false” verify_changes=“false” poll_intensity=“0” min=“1” max=“2” vindex=“0” size=“1” />
< Help>Which commands to send when PIR motion sensor triggered
< Item label=“Basic Set (default)” value=“1” />
< Item label=“Binary Sensor Report” value=“2” />
“value” is no longer there and “vindex” has been added with a value of “0”.
I can update the zwcfg to my liking and restart the service, if I manually wake up the sensors they will take the configuration. The trouble comes when the HA service restarts it will somehow reset Parameter 5, reverting it back to Basic Report 0/255. Looking back into the zwcfg all of the needed values have been reverted.
As mentioned in several other threads before using ‘set_config_parameter’ within the HA front end to modify P:5 will lock up the HA service.
Any help/experience would be helpful.