Z-Wave Temperature and Humidity Sensor

Can I use one of these with OpenHAB?

https://www.aliexpress.com/item/Z-wave-Temperature-Humidity-Sensor-Smart-Home-EU-Version-868-42mhz-Z-wave-Smart-detector/32814390727.html?src=google&albslr=115606081&src=google&albch=shopping&acnt=494-037-6276&isdl=y&albcp=658432961&albag=33762888219&slnk=&trgt=61865531738&plac=&crea=en32814390727&netw=g&device=c&mtctp=&albbt=Google_7_shopping&aff_platform=google&gclid=EAIaIQobChMIx4eynfrV3AIVhoXVCh04sgIiEAkYASABEgIgw_D_BwE&gclsrc=aw.ds

If so, what do I have to install, and how do I configure it? If it’s not been done yet, can I do it myself? What is involved?

Thanks - Rowan

Yes you can. If it’s not in the zwave database ( https://www.cd-jackson.com/index.php/zwave/zwave-device-database), then its XML will need be added. Add the zwave binding and all should be good.

Thanks for your reply.

When I visit that website, I find only a JSON copy of the database, no XML at all. It does not seem to have an entry for this device (which I think is made by Homi Security) or I couldn’t find it. I’m afraid that I have no idea how to “add the XML” - which XML file do I need to modify, and what elements/attributes need to be added for this device? My addons-2.1.0-features.xml file currently contains:

  <feature name="openhab-binding-zwave" description="Z-Wave Binding" version="2.1.0">

          <feature prerequisite="false" dependency="false">openhab-runtime-base</feature>

          <feature prerequisite="false" dependency="false">openhab-transport-serial</feature>

          <bundle start-level="80">mvn:org.openhab.binding/org.openhab.binding.zwave/2.1.0</bundle>

      </feature>

I have added the Z-Wave binding to my copy of OpenHAB, and I have a “thing” called Z-Wave Serial Controller zwave:serial_zstick:6a86c233. Do I need to do anything else?

Thanks - Rowan

I have now been able to add

Z-Wave Node 3 ONLINE

Unknown Device

zwave:

and

Z-Wave Node 4 ONLINE

Unknown Device

zwave:

  I suppose that these may be the temperature measurement and the humidity measurement from the Homi device, but that the fact that they are shown as Unknown means that the XML file needs to be updated.

Thanks - Rowan

I’ve discovered that this device is made by (or designed by) Heiman, product ID HS1HT-Z. It is described in

Thanks - Rowan

The device is already in the database, you need to wake it up (press the button) to finish initialization:

https://www.cd-jackson.com/index.php/zwave/zwave-device-database/zwave-device-list/devicesummary/709

Thanks for this info. How should I have been able to find this device in the database?

  I have tried pushing the button for 2 seconds like it says in the manual, but I can't get the LED to flash like it should. Maybe the battery is flat (it shouldn't be,. because I've only had the thing for a couple of months). But I will keep trying...

Thanks - Rowan

Just type in the product name or device type:id or search for a specific manufacturer:

https://www.cd-jackson.com/index.php/zwave/zwave-device-database/zwave-device-list

I could not find that information in the manual: 10 sec long press is resetting, triple clicking within 1.5 sec is inclusion/exclusion.
More important is the wake up: the device wakes up every 300 sec, so after a couple of minutes it should show up as online.
If not, you may need to upgrade to a recent snapshot or development version of the zwave binding.

@rowan.bradley Have you been able to use your sensor?
I bought the same one, I can add it in OH but the temperature is never reported.
I can see in the logs that OH is trying to poll the device but this device is usually off and only reporting its temperature when it is waking up.
There is no button to force a wake up.
I don’t know how to progress on this issue.

No, I’m afraid that the device is still sitting on my desk doing nothing useful. If you find out how to make it work, please report it here so that I can try it.

Rowan

I have 3 of these devices and they all work fine.
There is a little hole on the side to reach the wakeup-button.

Also mine had empty batteries when they arrived.
Replace the batteries, use a needle to push the button and the devices should wake up.

It might take a few button-pushes for the devices to report temp/humidity.

2 Likes

Hi Christian,
As you suggested, I replaced the battery by a new one but unfortunately it is the same status.
When I am pressing the button 3 times with a needle, I can see that it is blinking twice.
I can see things in the logs

07:54:56.913 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - NODE 11: Application Command Request (ALIVE:VERSION)
07:54:56.914 [DEBUG] [ing.zwave.internal.protocol.ZWaveNode] - NODE 11: Incoming command class COMMAND_CLASS_VERSION, endpoint 0
07:54:56.915 [DEBUG] [ing.zwave.internal.protocol.ZWaveNode] - NODE 11: SECURITY not supported
07:54:56.916 [DEBUG] [otocol.commandclass.ZWaveCommandClass] - NODE 11: Received COMMAND_CLASS_VERSION V0 VERSION_COMMAND_CLASS_REPORT
07:54:56.917 [DEBUG] [commandclass.ZWaveVersionCommandClass] - NODE 11: Process Version Command Class Report
07:54:56.919 [DEBUG] [commandclass.ZWaveVersionCommandClass] - NODE 11: Requested Command Class = COMMAND_CLASS_ASSOCIATION, Version = 2
07:54:56.920 [DEBUG] [otocol.commandclass.ZWaveCommandClass] - NODE 11: Version = 2, version set. Enabling extra functionality.
07:54:56.921 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - NODE 11: Commands processed 1.
07:54:56.922 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - NODE 11: Checking command org.openhab.binding.zwave.internal.protocol.ZWaveCommandClassPayload@7a634a.
07:54:56.923 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - NODE 11: Command verified org.openhab.binding.zwave.internal.protocol.ZWaveCommandClassPayload@7a634a.
07:54:56.924 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - NODE 11: notifyTransactionResponse TID:363 DONE
07:54:56.926 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - TID 363: Transaction event listener: DONE: DONE -> 
07:54:56.926 [DEBUG] [nding.zwave.handler.ZWaveThingHandler] - NODE 11: Got an event from Z-Wave network: ZWaveTransactionCompletedEvent
07:54:56.927 [DEBUG] [ialization.ZWaveNodeInitStageAdvancer] - NODE 11: Node Init response (0) org.openhab.binding.zwave.internal.protocol.ZWaveTransactionResponse@fd1104
07:54:56.927 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - Transaction completed - outstandingTransactions 1
07:54:56.929 [DEBUG] [ialization.ZWaveNodeInitStageAdvancer] - NODE 11: Node Init transaction completed with response COMPLETE
07:54:56.930 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - Transaction completed - outstandingTransactions 0
07:54:56.930 [DEBUG] [ialization.ZWaveNodeInitStageAdvancer] - NODE 11: Node advancer: VERSION - checking COMMAND_CLASS_BATTERY, version is 0
07:54:56.931 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - ZWaveReceiveThread queue empty
07:54:56.931 [DEBUG] [ialization.ZWaveNodeInitStageAdvancer] - NODE 11: Node advancer: VERSION - queued   COMMAND_CLASS_BATTERY
07:54:56.932 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - Transaction SendNextMessage 0 out at start. Holdoff false.
07:54:56.932 [DEBUG] [commandclass.ZWaveVersionCommandClass] - NODE 11: Creating new message for application command VERSION_COMMAND_CLASS_GET command class COMMAND_CLASS_BATTERY
07:54:56.934 [DEBUG] [ialization.ZWaveNodeInitStageAdvancer] - NODE 11: ZWaveCommandClassTransactionPayload - send to node
07:54:56.935 [DEBUG] [zwave.internal.protocol.SerialMessage] - Assembled message buffer = 01 09 00 13 0B 02 84 08 25 36 73 
07:54:56.935 [DEBUG] [ing.zwave.internal.protocol.ZWaveNode] - NODE 11: SECURITY not supported
07:54:56.936 [DEBUG] [ing.zwave.internal.protocol.ZWaveNode] - NODE 11: Command Class COMMAND_CLASS_VERSION is NOT required to be secured
07:54:56.937 [DEBUG] [ding.zwave.handler.ZWaveSerialHandler] - NODE 11: Sending REQUEST Message = 01 09 00 13 0B 02 84 08 25 36 73 
07:54:56.937 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - NODE 11: sendTransaction org.openhab.binding.zwave.internal.protocol.transaction.ZWaveCommandClassTransactionPayload@94ed48
07:54:56.939 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - NODE 11: Bump transaction 365 priority from Config to Immediate
07:54:56.939 [DEBUG] [ding.zwave.handler.ZWaveSerialHandler] - Message SENT
07:54:56.940 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - Transaction SendNextMessage started: TID 364: [WAIT_RESPONSE] priority=Immediate, requiresResponse=true, callback: 54
07:54:56.942 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - NODE 11: Adding to device queue
07:54:56.944 [DEBUG] [ZWaveSerialHandler$ZWaveReceiveThread] - Receive Message = 06
07:54:56.944 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - NODE 11: Added 365 to queue - size 5
07:54:56.946 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - Transaction SendNextMessage 1 out at start. Holdoff false.
07:54:56.947 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - processReceiveMessage input 0<>128 : Message: class=null[0], type=ACK[2], dest=255, callback=0, payload=
07:54:56.951 [INFO ] [smarthome.event.ItemStateChangedEvent] - zwave_serial_zstick_0696af2c_serial_ack changed from 591 to 592
07:54:56.952 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - Received msg (0): Message: class=null[0], type=ACK[2], dest=255, callback=0, payload=
07:54:56.953 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - lastTransaction TID 364: [WAIT_RESPONSE] priority=Immediate, requiresResponse=true, callback: 54
07:54:56.956 [DEBUG] [ZWaveSerialHandler$ZWaveReceiveThread] - Receive Message = 01 04 01 13 01 E8 
07:54:56.958 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - Received msg: ACK
07:54:56.959 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - ZWaveReceiveThread queue empty
07:54:56.960 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - Transaction SendNextMessage 1 out at start. Holdoff false.
07:54:56.965 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - processReceiveMessage input 0<>128 : Message: class=SendData[19], type=Response[1], dest=255, callback=0, payload=01 
07:54:56.968 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - Received msg (0): Message: class=SendData[19], type=Response[1], dest=255, callback=0, payload=01 
07:54:56.969 [INFO ] [smarthome.event.ItemStateChangedEvent] - zwave_serial_zstick_0696af2c_serial_sof changed from 739 to 740
07:54:56.971 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - lastTransaction TID 364: [WAIT_RESPONSE] priority=Immediate, requiresResponse=true, callback: 54
07:54:56.973 [DEBUG] [ZWaveSerialHandler$ZWaveReceiveThread] - Receive Message = 01 05 00 13 36 00 DF 
07:54:56.976 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - Checking outstanding transactions: 1
07:54:56.977 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - processReceiveMessage input 0<>128 : Message: class=SendData[19], type=Request[0], dest=0, callback=54, payload=36 00 
07:54:56.979 [INFO ] [smarthome.event.ItemStateChangedEvent] - zwave_serial_zstick_0696af2c_serial_sof changed from 740 to 741
07:54:56.979 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - Last transaction: TID 364: [WAIT_RESPONSE] priority=Immediate, requiresResponse=true, callback: 54
07:54:56.981 [DEBUG] [ave.internal.protocol.ZWaveController] - Incoming Message: Message: class=SendData[19], type=Response[1], dest=255, callback=0, payload=01 
07:54:56.983 [DEBUG] [ol.serialmessage.SendDataMessageClass] - NODE 11: sentData successfully placed on stack.
07:54:56.985 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - TID 364: Advanced to WAIT_REQUEST

Much too short:

When I am not pressing the button, I can see this:
@sihui: By the way, how do get this nice view of the protocol exchanges? (sorry I am a newbie)

08:07:06.752 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - NODE 1: sendTransaction org.openhab.binding.zwave.internal.protocol.ZWaveSerialPayload@780f1c
08:07:06.761 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - NODE 1: Adding to device queue
08:07:06.769 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - NODE 1: Added 368 to queue - size 8
08:07:06.771 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - Transaction SendNextMessage 0 out at start. Holdoff false.
08:07:06.776 [DEBUG] [zwave.internal.protocol.SerialMessage] - Assembled message buffer = 01 05 00 48 01 3C 8F 
08:07:06.781 [DEBUG] [ding.zwave.handler.ZWaveSerialHandler] - NODE 255: Sending REQUEST Message = 01 05 00 48 01 3C 8F 
08:07:06.783 [DEBUG] [ding.zwave.handler.ZWaveSerialHandler] - Message SENT
08:07:06.785 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - Transaction SendNextMessage started: TID 368: [WAIT_REQUEST] priority=Controller, requiresResponse=true, callback: 60
08:07:06.787 [DEBUG] [ZWaveSerialHandler$ZWaveReceiveThread] - Receive Message = 06
08:07:06.817 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - processReceiveMessage input 0<>128 : Message: class=null[0], type=ACK[2], dest=255, callback=0, payload=
08:07:06.821 [INFO ] [smarthome.event.ItemStateChangedEvent] - zwave_serial_zstick_0696af2c_serial_ack changed from 596 to 597
08:07:06.824 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - Received msg (0): Message: class=null[0], type=ACK[2], dest=255, callback=0, payload=
08:07:06.827 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - lastTransaction null
08:07:06.829 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - Received msg: ACK
08:07:06.831 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - ZWaveReceiveThread queue empty
08:07:06.833 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - Transaction SendNextMessage 0 out at start. Holdoff false.
08:07:06.836 [DEBUG] [ZWaveSerialHandler$ZWaveReceiveThread] - Receive Message = 01 05 00 48 3C 23 AD 
08:07:06.842 [INFO ] [smarthome.event.ItemStateChangedEvent] - zwave_serial_zstick_0696af2c_serial_sof changed from 746 to 747
08:07:06.847 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - processReceiveMessage input 0<>128 : Message: class=RequestNodeNeighborUpdate[72], type=Request[0], dest=35, callback=60, payload=3C 23 
08:07:06.850 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - Received msg (0): Message: class=RequestNodeNeighborUpdate[72], type=Request[0], dest=35, callback=60, payload=3C 23 
08:07:06.852 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - lastTransaction null
08:07:06.853 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - Checking outstanding transactions: 0
08:07:06.855 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - Last transaction: null
08:07:06.857 [DEBUG] [ave.internal.protocol.ZWaveController] - Incoming Message: Message: class=RequestNodeNeighborUpdate[72], type=Request[0], dest=35, callback=60, payload=3C 23 
08:07:06.859 [DEBUG] [RequestNodeNeighborUpdateMessageClass] - NodeNeighborUpdate request without transaction
08:07:06.861 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - ZWaveReceiveThread queue empty
08:07:06.862 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - Transaction SendNextMessage 0 out at start. Holdoff false.
08:07:11.788 [DEBUG] [nsactionManager$ZWaveTransactionTimer] - NODE 1: TID 368: Timeout at state WAIT_REQUEST. 3 retries remaining.
08:07:11.790 [DEBUG] [nsactionManager$ZWaveTransactionTimer] - TID 368: Transaction is current transaction, so clearing!!!!!
08:07:11.794 [DEBUG] [ve.internal.protocol.ZWaveTransaction] - TID 368: Transaction CANCELLED
08:07:11.797 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - NODE 1: notifyTransactionResponse TID:368 CANCELLED
08:07:11.801 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - Transaction SendNextMessage 0 out at start. Holdoff false.
08:07:11.801 [DEBUG] [rnal.protocol.ZWaveTransactionManager] - TID 368: Transaction event listener: DONE: CANCELLED -> 
08:07:11.804 [DEBUG] [ialization.ZWaveNodeInitStageAdvancer] - NODE 1: Node Init response (0) org.openhab.binding.zwave.internal.protocol.ZWaveTransactionResponse@569884
08:15:19.884 [WARN ] [sshd.server.session.ServerSessionImpl] - exceptionCaught(ServerSessionImpl[openhab@/127.0.0.1:50068])[state=Opened] InterruptedByTimeoutException: null

This device can be tricky.
Try to exclude it (even if it is not included), then reset to factory default.
Then try again and constantly wake it up (hit the button 3 times, then hit it every second until correctly recognized)

Chris has a logviewer on his website:
https://www.cd-jackson.com/index.php/openhab/zwave-log-viewer

2 Likes

What do you expect to see in a timeframe of 0.055 seconds?
Still too short. Upload a couple of minutes to the log viewer.

1 Like

@sihui thanks for the logviewer
It is working now!

I understand how it is working now.
In fact, the device is staying awake a very short time.
So I had to wake it up manually maybe 20 times to complete its configuration.
Yes, the device is really tricky to configure!!!

Thank you all for your great support!

image

1 Like