Send SensorMultilevel unsolicited from controller

Discussions about Z-Way software and Z-Wave technology in general
John Smith
Posts: 11
Joined: 23 Sep 2018 17:52

Send SensorMultilevel unsolicited from controller

Post by John Smith » 21 Oct 2018 16:18

I have a bunch of Spirit Z thermostats (TRV) which can use external sensor to correctly adjust room temperature. They able to accept unsolicited Sensor Multilevel from applicable sensors. The easiest way to achieve it is to use some Wall Thermostats which has correspondent association groups. But few of them have.

Another problem that I can receive data through various sources across the house, some of them collected using MQTT. So I need to translate incoming reports to unsolicited reports in ZWave network.

Is there any way to create a virtual sensor device in ZWay which will send its status to actual ZWave devices in the network? Actually I’d like to make controller send unsolicited reports to the network.

Any clues? I’m stuck.

User avatar
PoltoS
Posts: 4339
Joined: 26 Jan 2011 19:36

Re: Send SensorMultilevel unsolicited from controller

Post by PoltoS » 22 Oct 2018 09:07

There is, but using a lifehack

zway.SendData(SpiritID, [0x31, 0x03, 0x01, 0x02, 0x00, 0xC1])

Z-Wave is open now, you can check this command. If you know programming, it is even worth to make a module that allows to select a sensor and many thermostats and that will send then the updated temperature upon sensor value change. This approach will allow to easily configure your home automation and share this with the community

John Smith
Posts: 11
Joined: 23 Sep 2018 17:52

Re: Send SensorMultilevel unsolicited from controller

Post by John Smith » 23 Oct 2018 21:38

Great! Will try it on weekend and report. On success promise to contribute a module. Thanks!

steverock
Posts: 8
Joined: 14 Nov 2018 09:12

Re: Send SensorMultilevel unsolicited from controller

Post by steverock » 14 Nov 2018 09:23

Hi, this is very interesting.
I don't understand how to build the code message.
Where did you found the hex code and corresponding commands?

steverock
Posts: 8
Joined: 14 Nov 2018 09:12

Re: Send SensorMultilevel unsolicited from controller

Post by steverock » 17 Nov 2018 17:06

Hi, I made some tests and found something interesting for Eurotronic spirit z-wave trv.

First: to read the temperature from an external source you need to set parameter 8 to 128.
Then I tried to send the command zway.SendData(SpiritID, [0x31, 0x03, 0x01, 0x02, 0x00, 0xC1]) as suggested by PoltoS and noticed that TRV not responding correctly.
I changed command with sendDataSecure and valve responded with SENSOR_MULTILEVEL_GET, but we need REPORT instead.

So i look at zniffer and find that TRV sends periodically temperature report,for example, with this values:
Multilevel Sensor Report (01, 42, 03, E8).
03 and E8 are the measured temperature values, converted into decimal we have: 1000 that is 10,00 °C

Than I tried to send this:
zway.SendDataSecure(SpiritID,[0x31,0x05,0x01,0x42,0x0A,0xF0])

- 0x31 is command class: SensorMultilevel
- 0x05 is the type report
- 0x01 and 0x42: I dont know what this values means yet, but I copied it from report by TRV (probably this value is type of sensor,need to investigate)
- 0x0A and 0xF0 is 0AF0 = 2800 = 28°C

after issuing this command: valve fully closed!! so I've correctly send a report with a value of 28°C and the valve closed immediatly.
Then I tried to resend another report with 10°C zway.SendDataSecure(SpiritID,[0x31,0x05,0x01,0x42,0x03,0xE8])
and after some minutes: valve fully open!

now the question is: how to read value from a sensor and send this value as report issuing the commands I found??

ridewithstyle
Posts: 55
Joined: 02 Jan 2016 01:20

Re: Send SensorMultilevel unsolicited from controller

Post by ridewithstyle » 19 Nov 2018 16:40

Hi there,

you are trying to exactly solve my problem. :-)

I also want to send unsolicited temp reports to the spirit, so we can modify the value. I took window sensors and the temp report from the spirit and weigehd them with the math module to a sensible value.

in theory the app valueovertaker should exactly do that, but it only accepts action values not temperature readings. So maybe the app valueovertaker could be a nice blueprint for your implementation or you could extend the app? I myself have this topic in my backlog and I have to solve some more important issues first before tackling this topic. Still, maybe the app can help you.

Best regards,
rws

steverock
Posts: 8
Joined: 14 Nov 2018 09:12

Re: Send SensorMultilevel unsolicited from controller

Post by steverock » 19 Nov 2018 16:57

Hi,
I'm writing a module that read value passed by the module "association" and then send a unsolicited report to a device.

I'll take a look to valueovertaker .
thanks

ridewithstyle
Posts: 55
Joined: 02 Jan 2016 01:20

Re: Send SensorMultilevel unsolicited from controller

Post by ridewithstyle » 19 Nov 2018 17:02

thanks for the quick reply, I have a few spirits throughout the house and I am willing to beta test if the need should arise.

Thx, rws

User avatar
PoltoS
Posts: 4339
Joined: 26 Jan 2011 19:36

Re: Send SensorMultilevel unsolicited from controller

Post by PoltoS » 08 Dec 2018 23:46

Have you made progress? Would be cool to have a module for this. We can help to suggest you the correct logic and do code revision. Or even help with writing it (but we lack of time)

steverock
Posts: 8
Joined: 14 Nov 2018 09:12

Re: Send SensorMultilevel unsolicited from controller

Post by steverock » 09 Dec 2018 01:58

Hi, sorry but I'm not using zway software anymore. I decided to migrate to home assistant because zway constantly crashing on my raspberry.

Maybe in next days I'll share to you what I've discovered before switching to home assistant.

Post Reply