Aotec multisensor 6 doesn't pick up parameter changes

You need to merge the master branch into the branch with your changes. This will give you at least one merge error where I changed the file to fix the parameter length. That should be the only error I guess - once it’s merged, it should be ok.

Thanks Markus - I’ll take a look over it tomorrow.

My MultiSensor 6’s are all updated to the latest firmware (1.06) and have an applicationVersion of 1.6

@chris @mstormi67 Thanks a lot for fixing it.

Would it be possible to add parameter 5, 39, 40, 41 to the list (on habmin I only get 2-4 then 42-46)?

Also, have anyone managed to get UV reports? I have now param 101 set to 241, still not getting anything on item { zwave=“3:0:command=SENSOR_MULTILEVEL,SENSOR_TYPE=27” }).

it was a syntax error … created PR#3189

On UV value - yes, I’m getting these reported. Omit the :0 .
(I have never seen values >0 … but then again, it’s raining all day over here, that’s probably why :slight_smile:

This is merged. I would expect the missing parameters to show up now as they are in the file…

Also got AEOTEC Multisensor 6. Unfortunately I need to configure PIR sensitivity as it gives false positives.
I was trying the latest snapshot of habmin for 1.8 zwave binding. It looks like habmin definition does not match device settings in my case. Also when I try to change parameter for PIR sensitivity it is reverted back.
I tried to do firmware update but it also seems not possible with my zwave.me USB dongle.

So what can I do now? Do I need to update firmware and buy AOTEC USB dongle for this?

Which parameter did you try to change ? Should be #4, with values 0-5.
Which ‘application version’ is yours? (see posts above).
Do you run on battery, with a large wakeup interval?
Try to power your sensor using USB, at least for a test.

Hi Markus,
thanks for you answer. I tried to change both: #4 (current value=5) and #6 (current value=127).
When I try to change #6 it won’t accept the change and revert back to 127.
Unfortunately I cannot change #4 because habmin gives options “Disable/Enable”.

My application version reads 1.6
My zwave binding version is: 1.8.0.201508211938
downloaded from https://openhab.ci.cloudbees.com/job/openHAB/

What must I do to get it correct? Any idea?

Go update your zwave binding. Get the latest one from Cloudbees.
Yours is as of August, and changes discussed in this thread were added in September.

Yes you’re right. Now the layout seems to be correct. Many thanks!

I believe, the ZW100-C parameter 42 Humidity Threshold is 1 byte, not 2 bytes.

Here it is defined to be 2 bytes: zw100-a.xml

        <Parameter>
            <Index>42</Index>
            <Type>short</Type>
            <Size>2</Size>
            <Minimum>0</Minimum>
            <Maximum>100</Maximum>
            <Default>10</Default>
            <Label lang="en">Humidity Threshold</Label>
            <Help lang="en"><![CDATA[ Threshold change in humidity to induce an automatic report.<br>
The unit is %.<br>
If the current humidity gap is larger than this value, sensor will send out a humidity report.]]></Help>
        </Parameter>

Setting with habmin this parameter to e.g. value 5, sent as 2 bytes, results in the device reporting back 0 as a one byte value. (I am completely new to ZWave and openHAB, hope I did interpret the hex messages correctly …)

Below is a log with zwave binding 1.8.1, parameter 42 (= 2A), value 5, sent to node #5.

Side note: setting with habmin this parameter to 5*256 = 1280 results in the device reporting back 5 as desired. Seems the device simply copies the first byte from the 2 byte value sent by habmin.

Habmin says that my device has

  • Device ID 64

  • Device Type 2

  • Version 4

  • Protocol Version 4.5

  • Application Version 1.6

    2016-02-06 09:55:42.082 [DEBUG] [ZWaveConfigurationCommandClass] - NODE 5: Creating new message for application command CONFIGURATIONCMD_SET
    2016-02-06 09:55:42.109 [DEBUG] [o.b.z.i.protocol.SerialMessage] - NODE 5: Creating empty message of class = SendData (0x13), type = Request (0x00)
    2016-02-06 09:55:42.154 [DEBUG] [b.z.i.protocol.ZWaveController] - Callback ID = 39
    2016-02-06 09:55:42.181 [DEBUG] [WaveController$ZWaveSendThread] - Took message from queue for sending. Queue length = 0
    2016-02-06 09:55:42.182 [DEBUG] [b.z.i.protocol.ZWaveController] - Enqueueing message. Queue length = 0
    2016-02-06 09:55:42.203 [DEBUG] [o.b.z.i.protocol.SerialMessage] - Assembled message buffer = 01 0D 00 13 05 06 70 04 2A 02 00 05 25 27 B9
    2016-02-06 09:55:42.249 [DEBUG] [WaveController$ZWaveSendThread] - NODE 5: Sending REQUEST Message = 01 0D 00 13 05 06 70 04 2A 02 00 05 25 27 B9
    2016-02-06 09:55:42.317 [DEBUG] [eController$ZWaveReceiveThread] - Receive Message = 01 04 01 13 01 E8
    2016-02-06 09:55:42.332 [DEBUG] [ZWaveConfigurationCommandClass] - NODE 5: Creating new message for application command CONFIGURATIONCMD_GET
    2016-02-06 09:55:42.366 [DEBUG] [eController$ZWaveReceiveThread] - Receive queue ADD: Length=1
    2016-02-06 09:55:42.366 [DEBUG] [b.z.i.protocol.ZWaveController] - Receive queue TAKE: Length=0
    2016-02-06 09:55:42.409 [DEBUG] [o.b.z.i.protocol.SerialMessage] - NODE 5: Creating empty message of class = SendData (0x13), type = Request (0x00)
    2016-02-06 09:55:42.429 [DEBUG] [o.b.z.i.protocol.SerialMessage] - Assembled message buffer = 01 04 01 13 01 E8
    2016-02-06 09:55:42.489 [DEBUG] [b.z.i.protocol.ZWaveController] - Process Message = 01 04 01 13 01 E8
    2016-02-06 09:55:42.534 [DEBUG] [b.z.i.protocol.ZWaveController] - Message: class = SendData (0x13), type = Response (0x01), payload = 01
    2016-02-06 09:55:42.580 [DEBUG] [b.z.i.p.s.SendDataMessageClass] - NODE 5: Sent Data successfully placed on stack.
    2016-02-06 09:55:42.602 [DEBUG] [eController$ZWaveReceiveThread] - Receive Message = 01 07 00 13 27 00 00 0D C1
    2016-02-06 09:55:42.644 [DEBUG] [eController$ZWaveReceiveThread] - Receive queue ADD: Length=1
    2016-02-06 09:55:42.644 [DEBUG] [b.z.i.protocol.ZWaveController] - Receive queue TAKE: Length=0
    2016-02-06 09:55:42.684 [DEBUG] [b.z.i.protocol.ZWaveController] - Callback ID = 40
    2016-02-06 09:55:42.723 [DEBUG] [o.b.z.i.protocol.SerialMessage] - Assembled message buffer = 01 09 00 13 27 00 00 0D 00 00 CF
    2016-02-06 09:55:42.795 [DEBUG] [b.z.i.protocol.ZWaveController] - Process Message = 01 09 00 13 27 00 00 0D 00 00 CF
    2016-02-06 09:55:42.837 [DEBUG] [b.z.i.protocol.ZWaveController] - Message: class = SendData (0x13), type = Request (0x00), payload = 27 00 00 0D
    2016-02-06 09:55:42.870 [DEBUG] [b.z.i.p.s.SendDataMessageClass] - NODE 5: SendData Request. CallBack ID = 39, Status = Transmission complete and ACK received(0)
    2016-02-06 09:55:42.914 [DEBUG] [.z.i.p.s.ZWaveCommandProcessor] - Sent message Message: class = SendData (0x13), type = Request (0x00), payload = 05 06 70 04 2A 02 00 05
    2016-02-06 09:55:42.955 [DEBUG] [.z.i.p.s.ZWaveCommandProcessor] - Recv message Message: class = SendData (0x13), type = Request (0x00), payload = 27 00 00 0D
    2016-02-06 09:55:42.962 [DEBUG] [.o.m.c.i.folder.FolderObserver] - Refreshing folder 'sitemaps’
    2016-02-06 09:55:43.002 [DEBUG] [.z.i.p.s.ZWaveCommandProcessor] - Checking transaction complete: class=SendData, expected=SendData, cancelled=false
    2016-02-06 09:55:43.048 [DEBUG] [.z.i.p.s.ZWaveCommandProcessor] - transaction complete!
    2016-02-06 09:55:43.074 [DEBUG] [b.z.i.protocol.ZWaveController] - Notifying event listeners: ZWaveTransactionCompletedEvent
    2016-02-06 09:55:43.126 [DEBUG] [.z.internal.ZWaveActiveBinding] - ZwaveIncomingEvent
    2016-02-06 09:55:43.151 [DEBUG] [WaveController$ZWaveSendThread] - NODE 5: Response processed after 851ms/4927ms.
    2016-02-06 09:55:43.201 [DEBUG] [WaveController$ZWaveSendThread] - Took message from queue for sending. Queue length = 0
    2016-02-06 09:55:43.201 [DEBUG] [b.z.i.protocol.ZWaveController] - Enqueueing message. Queue length = 0
    2016-02-06 09:55:43.221 [DEBUG] [.o.m.c.i.folder.FolderObserver] - Refreshing folder 'persistence’
    2016-02-06 09:55:43.259 [DEBUG] [.o.m.c.i.folder.FolderObserver] - Refreshing folder 'rules’
    2016-02-06 09:55:43.293 [DEBUG] [.o.m.c.i.folder.FolderObserver] - Refreshing folder 'scripts’
    2016-02-06 09:55:43.306 [DEBUG] [.o.m.c.i.folder.FolderObserver] - Refreshing folder 'items’
    2016-02-06 09:55:43.418 [DEBUG] [o.b.z.i.protocol.SerialMessage] - Assembled message buffer = 01 0A 00 13 05 03 70 05 2A 25 28 B2
    2016-02-06 09:55:43.460 [DEBUG] [WaveController$ZWaveSendThread] - NODE 5: Sending REQUEST Message = 01 0A 00 13 05 03 70 05 2A 25 28 B2
    2016-02-06 09:55:43.523 [DEBUG] [eController$ZWaveReceiveThread] - Receive Message = 01 04 01 13 01 E8
    2016-02-06 09:55:43.529 [DEBUG] [.io.net.http.SecureHttpContext] - checking ip is in range took 0ms
    2016-02-06 09:55:43.530 [DEBUG] [.io.net.http.SecureHttpContext] - checking ip is in range took 0ms
    2016-02-06 09:55:43.546 [DEBUG] [.io.net.http.SecureHttpContext] - checking ip is in range took 0ms
    2016-02-06 09:55:43.556 [DEBUG] [eController$ZWaveReceiveThread] - Receive queue ADD: Length=1
    2016-02-06 09:55:43.556 [DEBUG] [b.z.i.protocol.ZWaveController] - Receive queue TAKE: Length=0
    2016-02-06 09:55:43.605 [DEBUG] [.io.net.http.SecureHttpContext] - security is disabled - processing aborted!
    2016-02-06 09:55:43.705 [DEBUG] [.io.net.http.SecureHttpContext] - security is disabled - processing aborted!
    2016-02-06 09:55:43.845 [DEBUG] [.io.net.http.SecureHttpContext] - security is disabled - processing aborted!
    2016-02-06 09:55:43.879 [DEBUG] [o.b.z.i.protocol.SerialMessage] - Assembled message buffer = 01 04 01 13 01 E8
    2016-02-06 09:55:43.923 [DEBUG] [b.z.i.protocol.ZWaveController] - Process Message = 01 04 01 13 01 E8
    2016-02-06 09:55:43.969 [DEBUG] [b.z.i.protocol.ZWaveController] - Message: class = SendData (0x13), type = Response (0x01), payload = 01
    2016-02-06 09:55:44.022 [DEBUG] [b.z.i.p.s.SendDataMessageClass] - NODE 5: Sent Data successfully placed on stack.
    2016-02-06 09:55:44.064 [DEBUG] [eController$ZWaveReceiveThread] - Receive Message = 01 07 00 13 28 00 00 07 C4
    2016-02-06 09:55:44.085 [DEBUG] [eController$ZWaveReceiveThread] - Receive queue ADD: Length=1
    2016-02-06 09:55:44.086 [DEBUG] [b.z.i.protocol.ZWaveController] - Receive queue TAKE: Length=0
    2016-02-06 09:55:44.230 [DEBUG] [o.b.z.i.protocol.SerialMessage] - Assembled message buffer = 01 09 00 13 28 00 00 07 00 00 CA
    2016-02-06 09:55:44.281 [DEBUG] [b.z.i.protocol.ZWaveController] - Process Message = 01 09 00 13 28 00 00 07 00 00 CA
    2016-02-06 09:55:44.320 [DEBUG] [b.z.i.protocol.ZWaveController] - Message: class = SendData (0x13), type = Request (0x00), payload = 28 00 00 07
    2016-02-06 09:55:44.361 [DEBUG] [b.z.i.p.s.SendDataMessageClass] - NODE 5: SendData Request. CallBack ID = 40, Status = Transmission complete and ACK received(0)
    2016-02-06 09:55:44.407 [DEBUG] [.z.i.p.s.ZWaveCommandProcessor] - Sent message Message: class = SendData (0x13), type = Request (0x00), payload = 05 03 70 05 2A
    2016-02-06 09:55:44.454 [DEBUG] [.z.i.p.s.ZWaveCommandProcessor] - Recv message Message: class = SendData (0x13), type = Request (0x00), payload = 28 00 00 07
    2016-02-06 09:55:44.488 [DEBUG] [.z.i.p.s.ZWaveCommandProcessor] - Checking transaction complete: class=SendData, expected=ApplicationCommandHandler, cancelled=false
    2016-02-06 09:55:44.551 [DEBUG] [eController$ZWaveReceiveThread] - Receive Message = 01 0B 00 04 00 05 05 70 06 2A 01 00 AD
    2016-02-06 09:55:44.592 [DEBUG] [eController$ZWaveReceiveThread] - Receive queue ADD: Length=1
    2016-02-06 09:55:44.592 [DEBUG] [b.z.i.protocol.ZWaveController] - Receive queue TAKE: Length=0
    2016-02-06 09:55:44.642 [DEBUG] [o.b.z.i.protocol.SerialMessage] - Assembled message buffer = 01 0B 00 04 00 05 05 70 06 2A 01 00 AD
    2016-02-06 09:55:44.691 [DEBUG] [b.z.i.protocol.ZWaveController] - Process Message = 01 0B 00 04 00 05 05 70 06 2A 01 00 AD
    2016-02-06 09:55:44.722 [DEBUG] [b.z.i.protocol.ZWaveController] - Message: class = ApplicationCommandHandler (0x04), type = Request (0x00), payload = 00 05 05 70 06 2A 01 00
    2016-02-06 09:55:44.775 [DEBUG] [ApplicationCommandMessageClass] - NODE 5: Application Command Request (ALIVE:DONE)
    2016-02-06 09:55:44.820 [DEBUG] [ApplicationCommandMessageClass] - NODE 5: Incoming command class CONFIGURATION
    2016-02-06 09:55:44.855 [DEBUG] [ZWaveConfigurationCommandClass] - NODE 5: Received Configuration Request
    2016-02-06 09:55:44.891 [DEBUG] [ZWaveConfigurationCommandClass] - NODE 5: Node configuration report, parameter = 42, value = 0
    2016-02-06 09:55:44.932 [DEBUG] [b.z.i.protocol.ZWaveController] - Notifying event listeners: ZWaveConfigurationParameterEvent
    2016-02-06 09:55:44.979 [DEBUG] [.z.internal.ZWaveActiveBinding] - ZwaveIncomingEvent
    2016-02-06 09:55:45.008 [DEBUG] [.z.internal.ZWaveActiveBinding] - NODE 5: Got a value event from Z-Wave network, endpoint = 0, command class = CONFIGURATION, value = org.openhab.binding.zwave.internal.protocol.ConfigurationParameter@e13318
    2016-02-06 09:55:45.089 [DEBUG] [.b.z.i.p.i.ZWaveNodeSerializer] - NODE 5: Serializing to file etc\zwave\node5.xml
    2016-02-06 09:55:45.168 [DEBUG] [.z.i.p.s.ZWaveCommandProcessor] - Sent message Message: class = SendData (0x13), type = Request (0x00), payload = 05 03 70 05 2A
    2016-02-06 09:55:45.205 [DEBUG] [.z.i.p.s.ZWaveCommandProcessor] - Recv message Message: class = ApplicationCommandHandler (0x04), type = Request (0x00), payload = 00 05 05 70 06 2A 01 00
    2016-02-06 09:55:45.254 [DEBUG] [.z.i.p.s.ZWaveCommandProcessor] - Checking transaction complete: class=ApplicationCommandHandler, expected=ApplicationCommandHandler, cancelled=false
    2016-02-06 09:55:45.316 [DEBUG] [.z.i.p.s.ZWaveCommandProcessor] - transaction complete!
    2016-02-06 09:55:45.331 [DEBUG] [b.z.i.protocol.ZWaveController] - Notifying event listeners: ZWaveTransactionCompletedEvent
    2016-02-06 09:55:45.364 [DEBUG] [.z.internal.ZWaveActiveBinding] - ZwaveIncomingEvent
    2016-02-06 09:55:45.398 [DEBUG] [WaveController$ZWaveSendThread] - NODE 5: Response processed after 1892ms/4927ms.
    2016-02-06 09:55:45.412 [DEBUG] [eController$ZWaveReceiveThread] - Receive Message = 01 0B 00 04 00 05 05 70 06 2A 01 00 AD
    2016-02-06 09:55:45.486 [DEBUG] [eController$ZWaveReceiveThread] - Receive queue ADD: Length=1
    2016-02-06 09:55:45.486 [DEBUG] [b.z.i.protocol.ZWaveController] - Receive queue TAKE: Length=0
    2016-02-06 09:55:45.536 [DEBUG] [o.b.z.i.protocol.SerialMessage] - Assembled message buffer = 01 0B 00 04 00 05 05 70 06 2A 01 00 AD
    2016-02-06 09:55:45.580 [DEBUG] [b.z.i.protocol.ZWaveController] - Process Message = 01 0B 00 04 00 05 05 70 06 2A 01 00 AD
    2016-02-06 09:55:45.601 [DEBUG] [b.z.i.protocol.ZWaveController] - Message: class = ApplicationCommandHandler (0x04), type = Request (0x00), payload = 00 05 05 70 06 2A 01 00
    2016-02-06 09:55:45.650 [DEBUG] [ApplicationCommandMessageClass] - NODE 5: Application Command Request (ALIVE:DONE)
    2016-02-06 09:55:45.685 [DEBUG] [ApplicationCommandMessageClass] - NODE 5: Incoming command class CONFIGURATION
    2016-02-06 09:55:45.720 [DEBUG] [ZWaveConfigurationCommandClass] - NODE 5: Received Configuration Request
    2016-02-06 09:55:45.732 [DEBUG] [ZWaveConfigurationCommandClass] - NODE 5: Node configuration report, parameter = 42, value = 0
    2016-02-06 09:55:45.777 [DEBUG] [b.z.i.protocol.ZWaveController] - Notifying event listeners: ZWaveConfigurationParameterEvent
    2016-02-06 09:55:45.819 [DEBUG] [.z.internal.ZWaveActiveBinding] - ZwaveIncomingEvent
    2016-02-06 09:55:45.840 [DEBUG] [.z.internal.ZWaveActiveBinding] - NODE 5: Got a value event from Z-Wave network, endpoint = 0, command class = CONFIGURATION, value = org.openhab.binding.zwave.internal.protocol.ConfigurationParameter@e13318
    2016-02-06 09:55:45.937 [DEBUG] [.b.z.i.p.i.ZWaveNodeSerializer] - NODE 5: Serializing to file etc\zwave\node5.xml
    2016-02-06 09:55:46.000 [DEBUG] [.z.i.p.s.ZWaveCommandProcessor] - Sent message Message: class = SendData (0x13), type = Request (0x00), payload = 05 03 70 05 2A
    2016-02-06 09:55:46.019 [DEBUG] [.z.i.p.s.ZWaveCommandProcessor] - Recv message Message: class = ApplicationCommandHandler (0x04), type = Request (0x00), payload = 00 05 05 70 06 2A 01 00
    2016-02-06 09:55:46.066 [DEBUG] [.z.i.p.s.ZWaveCommandProcessor] - Checking transaction complete: class=ApplicationCommandHandler, expected=ApplicationCommandHandler, cancelled=false
    2016-02-06 09:55:46.129 [DEBUG] [.z.i.p.s.ZWaveCommandProcessor] - transaction complete!
    2016-02-06 09:55:46.162 [DEBUG] [b.z.i.protocol.ZWaveController] - Notifying event listeners: ZWaveTransactionCompletedEvent
    2016-02-06 09:55:46.200 [DEBUG] [.z.internal.ZWaveActiveBinding] - ZwaveIncomingEvent
    2016-02-06 09:55:46.258 [DEBUG] [eController$ZWaveReceiveThread] - Receive Message = 01 0B 00 04 00 05 05 31 05 05 01 23 E3
    2016-02-06 09:55:46.271 [DEBUG] [eController$ZWaveReceiveThread] - Receive queue ADD: Length=1
    2016-02-06 09:55:46.272 [DEBUG] [b.z.i.protocol.ZWaveController] - Receive queue TAKE: Length=0
    2016-02-06 09:55:46.308 [DEBUG] [o.b.z.i.protocol.SerialMessage] - Assembled message buffer = 01 0B 00 04 00 05 05 31 05 05 01 23 E3
    2016-02-06 09:55:46.369 [DEBUG] [b.z.i.protocol.ZWaveController] - Process Message = 01 0B 00 04 00 05 05 31 05 05 01 23 E3
    2016-02-06 09:55:46.410 [DEBUG] [b.z.i.protocol.ZWaveController] - Message: class = ApplicationCommandHandler (0x04), type = Request (0x00), payload = 00 05 05 31 05 05 01 23
    2016-02-06 09:55:46.451 [DEBUG] [ApplicationCommandMessageClass] - NODE 5: Application Command Request (ALIVE:DONE)
    2016-02-06 09:55:46.491 [DEBUG] [ApplicationCommandMessageClass] - NODE 5: Incoming command class SENSOR_MULTILEVEL
    2016-02-06 09:55:46.515 [DEBUG] [veMultiLevelSensorCommandClass] - NODE 5: Received Sensor Multi Level Request
    2016-02-06 09:55:46.541 [DEBUG] [veMultiLevelSensorCommandClass] - NODE 5: Sensor Multi Level REPORT received
    2016-02-06 09:55:46.577 [DEBUG] [veMultiLevelSensorCommandClass] - NODE 5: Sensor Type = RelativeHumidity(5), Scale = 0
    2016-02-06 09:55:46.591 [DEBUG] [veMultiLevelSensorCommandClass] - NODE 5: Sensor Value = 35

You are correct.

The 2A 01 means parameter 42 is 1 byte… I’ll update the database today…

I’ve created a PR. This PR also logs the size to make this sort of debugging simpler without having to dig into the data dump :wink:

Approximately 5 minutes after the problem was reported, the database is updated and the code improved - hmmm, I’d probably call this, say, impressive !

1 Like

I think there could be a similar problem with the 4 in 1 multi sensor. If
you set the top parameter it never sends to the device. Any info that will
help find out?

Neil

See post #5 of this thread for a link to the previous-gen multisensor’s manual, it tells you the size of the parameters, and if you find a mismatch then create a PR, please.

I am having the same issue of not being able to set the PIR sensitivity. I have the old 1.8.0-SNAPSHOT of the z-wave binding, I tried upgrading to the latest 1.9.0-SNAPSHOT. However my Habmin1 with Openhab 1.7 doesn’t seem to like it, I get stack traces in my logs. What combination of versions of each item do I need to get this working? Sorry if this is a newbie questions but so much of this is new to me. Thank you all for your great work on this project.

I solved my own issue by replacing the appropriate .xml file in the database folder inside the 1.8.0-SNAPSHOT with the version in 1.9.0-SNAPSHOT.