Fibaro Roller Shutter 3 (FGR-223) - cannot get it to work properly

Finally I won’t test any alternative ZWave integration. I’ve decided to buy a second-hand Fibaro HC Lite for 100€.
I’ve bought it to be able to update my fibaro modules firmware, and I will also use it as my ZWave gateway using Fibaro HC integration in HA. I’ve never been fully satisfied with OpenZwave, let’s see if Fibaro ZWave integration is better ! :slight_smile:

Hey @Shaad - really looking forward to hear how this working with the Fibaro HC Lite config. I’m quite unhappy with z-wave integration in HA. I did not test the openzwave so far as it was already quite a hassle to the my current shutters working as they should. And Openzwave being currently beta I’m currently a bit afraid to move right now.

Do you need an constant internet connection for the Fibaro HC Lite?
How is the integration working between Fibaro HC and HA? Is this stable so far?

You are actually using OpenZwave you know ! :slight_smile: Home Assistant core ZWave integration relies on OpenZwave 1.4.

I should receive my HC Lite in a few days. You don’t need any internet connection to use the HC Lite with HA. Fibaro as a pulic API, so all exchanges between HCL and HA are on the local network, no cloud.

I haven’t found much information about Fibaro HA inregration on this forum. A few posts that say it does work OK except for one or 2 specific points, but not many discussions really, which I find surprisin !. So I will test by myself… :slight_smile:

Ok now I’m totally confused :smiley:

This means the out of the box z-wave integration in HA relies on OpenZWave 1.4
And the add-in openZwave (beta) in the add-in store (Current version: 0.7.1) is the one with 1.6?
Or am I missing something?

I read this article: https://diymediahome.org/getting-openzwave-working-with-home-assistant/
And thought the one in HA is a different Z-Wave basis. Thanks for the clarification.
And let me know how this works with Fibaro HC Lite - if that works good (also with automations and sensor feedbac)I will implement it similar.

anyone testet it with the new “Z-Wave JS” for home assistant (which will replace openzwave)?

it looks very promising.

I’m waiting a few weeks for it to be more mature, but I will use it in the end for sure. Looks very promising and a lot of work has been made recently and is still on-going :slight_smile:

Still using my Fibaro HC Lite as a ZWave gateway for my 17 FGR-223 for the moment. Working fine.

I just pair my Roller shutter 3 with the zwave JS. I can not get the awning to work.

It says the node is alive and well. but when I press in or out button nothing happens.

Im a newbie on HA so I dont really know if there is something else i must do to get it working.

Make sure you’re on 2021.2.2 or higher. There was a bug with Z-Wave JS covers before that.

I am running the latest firmware. I will try to re-pair it. maybe something went wrong when I paired it the first time.

Switch to the zwave-js integration today.
Had no problems getting may zwave devices to work.

And the Roller Shutter 3 also seams to work correctly now. I’m not using the force refresh automations anymore.

I will try tonight also. :slight_smile:

Anyone here got the slat tilt position of Venetian blinds working with the Roller Shutter 3? I had hoped that with Z-Wave JS it would be possible, but the HA service is being ignored - if I run it to set a slat position the controller does nothing. I am using ZWaveJS2MQTT but NOT over MQTT, just with web services and the Z Wave JS HA integration.

So I switched to Zwave-JS without an issue for the roller shutter. Position looks also correct (slider). One quick question - is there a way to report position as a numeric value? I can only see them as status open from the attributes (as they are never fully shut in my home). I would like to check the position of multiple Shutters on an overview pane.

There is a nice roller shutter lovelace card which displays the position as a percentage.

Hey thanks a lot!

Also, you should have the position as a numeric value in the state attributes.

eg:

ahhhh rught! Thanks - did not see it!

Hi all,

I started having issues with the FGR223 not updating the position in lovelace. I’m not sure when this started, but it’s consistently not updating any of the blinds.
When operating the shutters via the lovelace buttons, or even via the hardware switches (s1/s2) connected to the FGR223, I can see the update coming in the aeontec zwave controller and into zwavejs (diver version 8.0.6, zwave 0.1.34, latest). However the entity representing the current position in homeassistant is not updated.
I have some logs here:

2021-08-07T10:08:24.664Z CNTRLR   [Node 009] [~] [Multilevel Switch] targetValue: 59 => 55          [Endpoint 0]
2021-08-07T10:08:24.667Z CNTRLR   [Node 009] [~] [Multilevel Switch] duration: "unknown" => "unknow [Endpoint 0]
                                  n"
2021-08-07T10:08:24.671Z CNTRLR   [Node 009] [~] [Multilevel Switch] currentValue: 59 => 55         [Endpoint 0]
2021-08-07T10:08:24.674Z DRIVER « [Node 009] [REQ] [ApplicationCommand]
                                  └─[SecurityCCCommandEncapsulation]
                                    │ sequenced: false
                                    └─[MultilevelSwitchCCReport]
                                        current value: 55
                                        target value:  55
                                        duration:      unknown
2021-08-07T10:08:25.129Z SERIAL « 0x0108000400040298402d                                              (10 bytes)
2021-08-07T10:08:25.133Z SERIAL » [ACK]                                                                   (0x06)

The Entity yaml looks like this:

current_position: 53
friendly_name: Roller Shutter 9
supported_features: 15
device_class: window

Now, if I set the position via the position slider (in lovelace), the shutter will move to the correct position (the shutters are calibrated). The entity will update to the correct position too. But as soon as I use any button, the blind will move and zwave will receive the new position but the entity will keep the old one.

their lifeline for group 0, 1 and 2 are set to the Aeontec node ID (1) and the messages come in as shown above.

This seems like an issue in HA. On the same Zwave network I have a qubino smart meter. It’s values are correctly updated in HA. It’s only the damn fibaros that don’t work.

any ideas?

PS> I’ve been using the FGR223 for two years now. After buying a fibaro home center just to be able update their firmware to 5.1, I’ve been mostly out of luck. Using openzwave2mqtt directly, then forking my own version to be able to patch the issues in the beginning. Zwave-js has fixed most of the problems but the FGR223 keeps figthing back. Shall I just throw them in the bin and get some zigbee controller instead?

Help needed here :slight_smile:

Look at the network dump. There will be a value for Multilevel Switch CC named currentValue. Is the value for endpoint 0 or endpoint 1?

What happens if you refresh the entity manually? Does that fix the entity state? Does the report come from endpoint 0 or 1?

@freshcoast thanks for looking into this.
Checking the network dump, the currentValue for MultilevelSwitch is on endpoint 1 and 2. However, the updates from button operation come from endpoint 0. Calling the update service will update the value of the currentValue and it will be correctly reflected in the entity and thus in lovelace.
Here’s a log from the service update:

Log Level changed to: Verbose
2021-08-07T18:21:17.081Z DRIVER » [Node 009] [REQ] [SendData]
                                  │ transmit options: 0x25
                                  │ callback id:      31
                                  └─[SecurityCCNonceGet]
2021-08-07T18:21:17.098Z DRIVER « [RES] [SendData]
                                    was sent: true
2021-08-07T18:21:17.114Z DRIVER « [REQ] [SendData]
                                    callback id:     31
                                    transmit status: OK
2021-08-07T18:21:17.134Z DRIVER « [Node 009] [REQ] [ApplicationCommand]
                                  └─[SecurityCCNonceReport]
                                      nonce: 0xebb819a2c91a0652
2021-08-07T18:21:17.150Z DRIVER » [Node 009] [REQ] [SendData]
                                  │ transmit options: 0x25
                                  │ callback id:      32
                                  └─[SecurityCCCommandEncapsulation]
                                    │ nonce id: 235
                                    └─[MultiChannelCCCommandEncapsulation]
                                      │ source:      0
                                      │ destination: 1
                                      └─[MultilevelSwitchCCGet]
2021-08-07T18:21:17.167Z DRIVER « [RES] [SendData]
                                    was sent: true
2021-08-07T18:21:17.185Z DRIVER « [REQ] [SendData]
                                    callback id:     32
                                    transmit status: OK
2021-08-07T18:21:17.233Z DRIVER « [Node 009] [REQ] [ApplicationCommand]
                                  └─[SecurityCCNonceGet]
2021-08-07T18:21:17.251Z DRIVER » [Node 009] [REQ] [SendData]
                                  │ transmit options: 0x05
                                  │ callback id:      33
                                  └─[SecurityCCNonceReport]
                                      nonce: 0x046c184dc835a004
2021-08-07T18:21:17.266Z DRIVER « [RES] [SendData]
                                    was sent: true
2021-08-07T18:21:17.283Z DRIVER « [REQ] [SendData]
                                    callback id:     33
                                    transmit status: OK
2021-08-07T18:21:17.315Z DRIVER « [Node 009] [REQ] [ApplicationCommand]
                                  └─[SecurityCCCommandEncapsulation]
                                    │ sequenced: false
                                    └─[MultiChannelCCCommandEncapsulation]
                                      │ source:      1
                                      │ destination: 0
                                      └─[MultilevelSwitchCCReport]
                                          current value: 79
                                          target value:  79
                                          duration:      unknown
Log Level changed to: Info

And here’s the network dump from one FGR223

          {
            "nodeId": 9,
            "index": 0,
            "installerIcon": 6400,
            "userIcon": 6400,
            "status": 4,
            "ready": true,
            "isListening": true,
            "isRouting": true,
            "isSecure": true,
            "manufacturerId": 271,
            "productId": 4096,
            "productType": 771,
            "firmwareVersion": "5.1",
            "zwavePlusVersion": 1,
            "deviceConfig": {
              "filename": "/data/db/devices/0x010f/fgr223.json",
              "isEmbedded": true,
              "manufacturer": "Fibargroup",
              "manufacturerId": 271,
              "label": "FGR223",
              "description": "Roller Shutter 3",
              "devices": [
                {
                  "productType": 771,
                  "productId": 4096
                },
                {
                  "productType": 771,
                  "productId": 12288
                }
              ],
              "firmwareVersion": {
                "min": "0.0",
                "max": "255.255"
              },
              "paramInformation": {
                "_map": {}
              },
              "proprietary": {
                "fibaroCCs": [
                  38
                ]
              }
            },
            "label": "FGR223",
            "endpointCountIsDynamic": false,
            "endpointsHaveIdenticalCapabilities": false,
            "individualEndpointCount": 2,
            "aggregatedEndpointCount": 0,
            "interviewAttempts": 0,
            "endpoints": [
              {
                "nodeId": 9,
                "index": 0,
                "installerIcon": 6400,
                "userIcon": 6400,
                "deviceClass": {
                  "basic": {
                    "key": 4,
                    "label": "Routing Slave"
                  },
                  "generic": {
                    "key": 17,
                    "label": "Multilevel Switch"
                  },
                  "specific": {
                    "key": 6,
                    "label": "Motor Control Class B"
                  },
                  "mandatorySupportedCCs": [
                    32,
                    38,
                    37,
                    114,
                    134
                  ],
                  "mandatoryControlledCCs": []
                }
              },
              {
                "nodeId": 9,
                "index": 1,
                "installerIcon": 6400,
                "userIcon": 6400,
                "deviceClass": {
                  "basic": {
                    "key": 4,
                    "label": "Routing Slave"
                  },
                  "generic": {
                    "key": 17,
                    "label": "Multilevel Switch"
                  },
                  "specific": {
                    "key": 6,
                    "label": "Motor Control Class B"
                  },
                  "mandatorySupportedCCs": [
                    32,
                    38,
                    37,
                    114,
                    134
                  ],
....
              {
                "endpoint": 1,
                "commandClass": 38,
                "commandClassName": "Multilevel Switch",
                "property": "currentValue",
                "propertyName": "currentValue",
                "ccVersion": 4,
                "metadata": {
                  "type": "number",
                  "readable": true,
                  "writeable": false,
                  "label": "Current value",
                  "min": 0,
                  "max": 99
                },
                "value": 52
              },