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

Fibaro Roller Shutter 3 (FGR223) Tilt Entity #64538

Closed
spn91 opened this issue Jan 20, 2022 · 19 comments · Fixed by #96283
Closed

Fibaro Roller Shutter 3 (FGR223) Tilt Entity #64538

spn91 opened this issue Jan 20, 2022 · 19 comments · Fixed by #96283

Comments

@spn91
Copy link

spn91 commented Jan 20, 2022

The problem

Hi,
I am using this device to control my venetian blinds. I am able to control up/down and tilt out of the box, but the tilt is listed as separate entity. Shouldn’t this be in the same entity?
Searching for issues and PRs I just can find the FGR222. For this device a fix was released to control the tilt via SERVICE COVER.SET_COVER_TILT_POSITION.

I think this is also the problem why I have two separate devices in HomeKit. Reading the code of the homekit integration it should be supported that tilt and up/down are in the same object.

I have attached an output of one of my fibaro nodes and a screenshot of the device in home assistant

node_7.json.txt
32674EEC-1ED3-4EC9-A118-EF7281D3CFBE

What version of Home Assistant Core has the issue?

core-2021.12.10

What was the last working version of Home Assistant Core?

No response

What type of installation are you running?

Home Assistant OS

Integration causing the issue

zwave_js

Link to integration documentation on our website

https://www.home-assistant.io/integrations/zwave_js/

Example YAML snippet

No response

Anything in the logs that might be useful for us?

No response

Additional information

No response

@probot-home-assistant
Copy link

Hey there @home-assistant/z-wave, mind taking a look at this issue as it has been labeled with an integration (zwave_js) you are listed as a code owner for? Thanks!
(message by CodeOwnersMention)


zwave_js documentation
zwave_js source
(message by IssueLinks)

@MartinHjelmare
Copy link
Member

Please create a dump of your Z-Wave network and upload the dump as a text file here.

The dump tool is available in the configuration panel of the Z-Wave JS integration, reached from the integrations page in the Home Assistant GUI.

The network dump will help us troubleshoot your device.

Thanks!

@spn91
Copy link
Author

spn91 commented Jan 20, 2022

zwave_js_dump.txt

@spn91
Copy link
Author

spn91 commented Jan 31, 2022

@MartinHjelmare could you already find out something?

@MartinHjelmare
Copy link
Member

We have support for Fibaro FGR222 in our discovery matching, but that device has the following Command Class data that we match on:

{
  "endpoint": 0,
  "commandClass": 145,
  "commandClassName": "Manufacturer Proprietary",
  "property": "fibaro",
  "propertyKey": "venetianBlindsTilt",
  "propertyName": "fibaro",
  "propertyKeyName": "venetianBlindsTilt",
  "ccVersion": 0,
  "metadata": {
    "type": "number",
    "readable": true,
    "writeable": true,
    "label": "Venetian blinds tilt",
    "min": 0,
    "max": 99
  },
  "value": 0
}

I don't see that Command Class data in your network dump on the Fibaro FGR223 device.

@kpine do you have further insight?

@kpine
Copy link
Contributor

kpine commented Feb 1, 2022

It sounds like this device has different behavior than the 222. From what I'm reading, the blind up/down position is controlled by endpoint 1, and the slat position is controlled by endpoint 2, which matches OP's description "I am able to control up/down and tilt out of the box, but the tilt is listed as separate entity.", since we create a separate entity for each endpoint. If that's the case, to properly support this device the integration would need to manage these two endpoints in a single entity.

It's almost, but not quite, as simple as swapping out the manufacturer proprietary value in the discovery, and replacing it with the endpoint 2 multilevel target value. First, it would need to be confirmed whether tilt levels 0-99 are valid, as that is assumed. Second, unlike the manufacturer proprietary value, the multilevel switch has a targetValue for "set", and a currentValue for "get". The mfg one is a single value for both set and get. The current CoverTiltDataTemplate class doesn't support that distinction. Third, entity discovery for endpoint 2 multilevel switch would need to be blocked (I can't remember if that's handled already by way of handling it as a dependent value) to avoid creating the second cover entity.

@kpine
Copy link
Contributor

kpine commented Feb 1, 2022

On the other hand, both Z-Wave JS and OZW have overrides to force discovery of the Manufacturer Proprietary CC, and that's picked up in the dump:

              "proprietary": {
                "fibaroCCs": [
                  38
                ]
              }

So it's odd that the value is not appearing. Perhaps try a re-interview with debug logs enabled and post the results here.

@spn91
Copy link
Author

spn91 commented Feb 2, 2022

Turned on debug logs and re-interviewed one of my FGR223.
zwavejs_2022-02-02.log

@kpine
Copy link
Contributor

kpine commented Feb 3, 2022

The log doesn't show anything about the Manufacturer Proprietary CC, which is what the 222 uses to control the tilt. I'm thinking that the OZW and Z-Wave JS device files are incorrect. The Fibaro 223 manual does not list Manufacturer Proprietary CC as a supported CC, but it does for the 222. The OpenHAB database says endpoint 1 is for blind control and endpoint 2 is for lamella (tilt) control, with no supports for Mfg Proprietary (compare to the FGRM-222 entry which does support it).

Could you contact Fibaro support and ask them for the technical details about what the correct way to tilt the blinds is to confirm the actual behavior? Can you use Manufacturer Proprietary CC with the 223, or is the right way to use endpoint 2? Did they make changes in the firmware versions? There is a 5.1 version, which you have, and an older 3.3 version.

@TheDK
Copy link

TheDK commented Apr 4, 2022

Just FYI: I asked for the same thing in the upstream project as a feature request:
zwave-js/zwave-js-ui#971

Currently it works as designed:

Oh I completely missed that you have the Roller Shutter 3. We specifically enabled use of the CC in Roller Shutter 2 configurations.
AFAIK Roller Shutter 3 uses Multilevel Switch CC, Endpoint 2 for rotating the blinds. For you these are the values starting with 4-38-2-

So it is correct to use endpoint 2...

@spn91
Copy link
Author

spn91 commented Apr 4, 2022

But why do we have two separate entities for this? Tilting was always possible for me, my problem is, that in homekit one fibaro is listed as two separate blinds. And it seems that HA is capable of listing the tilt slider within the up/down entity.

Btw: got no useful reply from fibaro yet..

@TheDK
Copy link

TheDK commented Apr 4, 2022

Best guess: Just the standard way to show to endpoints as two entities (same as with two relay switches on one node / device). I think either the Z-Wave JS integration would have to treat his specific device differently or it would have to be implemented differently by the upstream project (maybe both?). Don't know if it's worth that?

@github-actions
Copy link

github-actions bot commented Jul 3, 2022

There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates.
Please make sure to update to the latest Home Assistant version and check if that solves the issue. Let us know if that works for you by adding a comment 👍
This issue has now been marked as stale and will be closed if no further activity occurs. Thank you for your contributions.

@github-actions github-actions bot added the stale label Jul 3, 2022
@spn91
Copy link
Author

spn91 commented Jul 11, 2022

@kpine & @MartinHjelmare do you know how we could achieve, that up/down and tilt is shown in one entity?

I have now bought a qubino flush shutter to try it additionally with it, but also with this two entities are created.

@MartinHjelmare
Copy link
Member

Probably add a discovery entry for this device and modify/add a data template for these device kinds. PR is welcome.

It's almost, but not quite, as simple as swapping out the manufacturer proprietary value in the discovery, and replacing it with the endpoint 2 multilevel target value. First, it would need to be confirmed whether tilt levels 0-99 are valid, as that is assumed. Second, unlike the manufacturer proprietary value, the multilevel switch has a targetValue for "set", and a currentValue for "get". The mfg one is a single value for both set and get. The current CoverTiltDataTemplate class doesn't support that distinction. Third, entity discovery for endpoint 2 multilevel switch would need to be blocked (I can't remember if that's handled already by way of handling it as a dependent value) to avoid creating the second cover entity.

@github-actions github-actions bot removed the stale label Jul 14, 2022
@folwarczny
Copy link

Anybody found a good solution to it? Or if that have to be two entities, is it possible to have it “nicely” presented as an UI Items?

@influenist
Copy link

influenist commented Jan 18, 2023

Hi Guys,

I have 8 of these fibaro modules, same issue. Tilt had not been discovered yet shows up as (2). Which is totally not user friendly and fills the full home screen. Any possibility to merge the 2 entities like venetian blinds behaviour with the roller shutter 2?

@TheDK
Copy link

TheDK commented Jan 18, 2023

@issue-triage-workflows
Copy link

There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates.
Please make sure to update to the latest Home Assistant version and check if that solves the issue. Let us know if that works for you by adding a comment 👍
This issue has now been marked as stale and will be closed if no further activity occurs. Thank you for your contributions.

@issue-triage-workflows issue-triage-workflows bot closed this as not planned Won't fix, can't repro, duplicate, stale Apr 25, 2023
@github-actions github-actions bot locked and limited conversation to collaborators May 25, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants