Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use interviewed setpoint byte size and precision in setpoint command #2458

Open
wants to merge 15 commits into
base: master
Choose a base branch
from

Conversation

Cyberwizzard
Copy link

HeatIt has a thermostat called Z-TRM3 (and perhaps others from the same manufacturer) which does not work with OZW currently.

Investigation by the manufacturer and various customers resulted in the conclusion that HeatIt implemented the setpoint command in such a way that it requires 2 byte setpoint values, as that is the field size advertised in the capability report (for both min and max temp they use 2 bytes in that report). They claim this is how they have had it certified for Z-wave compatibility and thus changing this is not possible without losing certification. At the same time, all the sold units so far and those in stores already are using firmware with this limitation. Also see #2435 for more information and links to other sources on this topic.

So to lower the threshold and prevent users from having to do firmware updates (which in some cases seems to require manufacturer specific programming cables), I patched OZW instead.

There is now a new compat flag called "EnforceMinSizePrecision" (bool) which enables caching the minimum byte size and minimum precision (as that was also indicated in the failure analysis report from HeatIt as attached to #2435) as received during decoding of the capability report. If these values are present when calling SetPoint, they will be applied to enforce the value has at least that many bytes and the desired precision.

For all thermostats which do not have this, the default is to use the minimum number of bytes and minimum required precision, as was before.

On my search for information while initially troubleshooting I think I also found other thermostats which might have the same issue but I can not find it in my history so these can receive the compat flag later in their XML.

How to apply for existing users: refresh the node so the XML is reloaded, then exclude each Z-TRM3 and include it again. This is mandatory as the limits are only sent to OZW when including the node, so existing nodes need to be re-added. (Unless someone knows of another trick of getting the setpoint capability report after refreshing the XML).

@Cyberwizzard
Copy link
Author

@Fishwaldo anything I can do to help in the inclusion of this pull request?

@Cyberwizzard
Copy link
Author

@nechry anything I can do to help in the inclusion of this pull request?

@pavel-z1
Copy link

I need this fix too. Can someone approve this PR?

@Hatzl
Copy link
Contributor

Hatzl commented Nov 28, 2020

I‘m also interested. What‘s missing for this PR?

@DoleoR
Copy link

DoleoR commented Dec 6, 2020

I'm also very interested.

However, i also have an addidtional question.

How can I download the comitted changes to my openhabian installation? Do I have to modify the files, or can I "download" them somehow?

@Cyberwizzard
Copy link
Author

Cyberwizzard commented Dec 6, 2020 via email

@kpine
Copy link
Contributor

kpine commented Dec 7, 2020

@DoleoR

How can I download the comitted changes to my openhabian installation?

If you are using OpenHAB as your automation software, you will need to seek support from that project. OpenHAB does not use OpenZWave.

@QuadDepo
Copy link

QuadDepo commented Dec 8, 2020

Also hoping this will be merged soon 👍

@hagen-p
Copy link

hagen-p commented Dec 12, 2020

+1

@GeitjeG
Copy link

GeitjeG commented Dec 16, 2020

+1, right now I cannot set the thermostat from Domoticz...

@Fishwaldo Fishwaldo self-assigned this Dec 17, 2020
@gruifin
Copy link

gruifin commented Dec 23, 2020

+1

@pavel-z1
Copy link

Hi @Fishwaldo
Can you help please with review of this PR?

@LarsBK
Copy link

LarsBK commented Jan 6, 2021

Hi!
I have 3 Z-TRM3 thermostats running fw 4.0. I experience bug #2435 when running OpenZwave:master. Cyberwizzard:master resolves the issue and I can control my thermostats from homeassistant :)

@larstobi
Copy link
Contributor

larstobi commented Jan 7, 2021

Hi! I upgraded the firmware on mine to the version that fixes this issue. I used OTA with zwavejs2mqtt to upgrade.

@Cyberwizzard
Copy link
Author

@nechry any reason this pull request is being ignored?

@GeitjeG
Copy link

GeitjeG commented Jan 21, 2021

I'm also wondering. Hope this can be merged, so I can use my device. I myself have not the knowledge to resolve the conflict or build/compile it....

@nechry
Copy link
Member

nechry commented Jan 21, 2021

@nechry any reason this pull request is being ignored?

yes, @Fishwaldo initially started reviewing this code and he will finish.

@simeneide
Copy link

Is there an eta on this? Would really appreciate this fix, but may go with the "experimental update" if it drags on :)

@larstobi
Copy link
Contributor

Just for reference zwave-js/node-zwave-js#1443

@pavel-z1
Copy link

Hi @nechry @Fishwaldo , a lot of people wait for this fix.
This PR is ignored or under review?

Please provide any information about status please.
I am waiting too for this fix.

@GeitjeG
Copy link

GeitjeG commented Mar 13, 2021

New bump. Hope someone can find time to merge this!
It has been merged in other branches if I'm right...

@mveenman
Copy link

mveenman commented Apr 8, 2021

Waiting for this as well. Multiple Z-TRM3 thermostats waiting to be controlled from HA.

@Hatzl
Copy link
Contributor

Hatzl commented Apr 9, 2021

Waiting for this as well. Multiple Z-TRM3 thermostats waiting to be controlled from HA.

switch over to zwave_js in home-assistant. It's working fine with the Z-TRM3.
Maybe this is useful for migration: https://community.home-assistant.io/t/switching-from-openzwave-beta-to-zwave-js/276723

@stevengroot82
Copy link

Dear all,

After reading the whole thread at the Norwegian forum, I tried to go with the OTA firmware upgrade. And luckily this worked!
https://www.hjemmeautomasjon.no/forums/topic/6330-z-trm3-target-temperature-f%C3%A5r-ikke-satt/?do=findComment&comment=90958

I performed the firmware upgrade with the setpoint_workaround.zip file provided in that forum-thread.
I didn't even have to exclude and include the thermostat in the network.

My system: Domoticz 2021.1 with OpenZwave 1.6 and a Aeon Z-Wave USB stick.

Regards,
Steven

@paalkr
Copy link
Contributor

paalkr commented Aug 27, 2021

Any particular reason why this PR isn't reviewed and merged?

@gskjold
Copy link
Contributor

gskjold commented Oct 14, 2021

@nechry any reason this pull request is being ignored?

yes, @Fishwaldo initially started reviewing this code and he will finish.

Seeing that @Fishwaldo has not contributed to this project since dec 2020, maybe someone else should take over the review? Kind of frustrating that tons of PRs that was created after this one have already been merged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.