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

Reading all this , and having fibaro 5.0 shutter 3. I’m guessing i’m sending them back to amazon. are the qubino’s working good out of the box?

The Qubinos have their own share of problems - they’re extremely unreliable (had 4 out of 6 die on me), and if you use them in venetian blinds mode, they don’t send reports in most cases.

Ah, ok, i’ll just do the polling fix and hope for a more gracious bugfix in the future.

Anyone any idea how to do the firmware upgrade via openzwave?

Thanks for the reply!

It is not possible via openzwave. You need a Fibaro Home Center.

Hello,
Now, somebody recently bought fibaro roller shutter 3 and succeeded to use it out of the box ? Or must we buy roller shutter 2 ?

I got a solution to update the cover position in realtime until the final position is reached when using set_cover_position in home assistant. I’m using Fibaro Roller Shutter 3 with Firmware 5.0.

The automation listens for a set_cover_positon service call from anywhere in home assistant:

  • sunset automation
  • button automation
  • script via ui button
  • specific position via ui control bar

Because the roller shutter position is only updated when the command is send (moving covers started), I repeat the command every second until the final position is reached.

- alias: Roller Shutter Status Update
  id: "68a5d03014cc"
  trigger:
    - platform: event
      event_type: call_service
      event_data:
        domain: cover
        service: set_cover_position
  condition:
    - condition: template
      value_template: "{{ state_attr(trigger.event.data.service_data.entity_id, 'current_position') | int != trigger.event.data.service_data.position | int }}"
  action:
    - delay: "00:00:01"
    - service: cover.set_cover_position
      data_template:
        entity_id: "{{ trigger.event.data.service_data.entity_id }}"
        position: "{{ trigger.event.data.service_data.position }}"

2 Likes

This worarround looks vert smart and amazing @naofireblade
Im a bit newbie so sorry to ask something so trivial. Can I use the code as it is or should I change for example “entity_id” by xxxx? Where xxx I don’t know what could be.
Thank you.

You can use the code exactly like it is. It‘s independent from entity names.
Maybe experiment with delay a bit. Depending on the distance of your devices you might set this to a few seconds more.

I got to this post through the search function as I have a similar issue with the roller shutter 223 that I recently bought.

The HA UI does not update when pressing a button (up or down) and the full movement completed. Also I had to reverse the movement settings in the firmware through parameter 20. I have to randomly press the position slider to be able to fully close the shutter.

My roller shutter 222 does not have the same issues.

I will try the workaround scripts posted above.

I added the following automation, but it seems not to work correctly:

- id: "Refresh 223 Status"
  alias: Refresh 223 Status
  trigger:
    - platform: numeric_state
      entity_id: sensor.fibaro_system_fgrm223_roller_shutter_controller_3_power
      below: 2
  action:
    - delay: "00:00:14"
    - service: zwave.refresh_entity
      data:
        entity_id: cover.fibaro_system_fgrm223_roller_shutter_controller_3_level

Anyone any ideas? If I do the command via the ZWAVE Lovelace UI, it seems to work, but the automation only refreshes other values, not the level one.

Side note: the 14" delay is because I know the cover needs 13.5 seconds for a full open or close movement (from the calibration paramter)

@naofireblade - I’m in the same boat as the others here. My Fibaro 3 is not behaving. I want to use your code, but I’m not clear on what the “id” key is. Can you explain what role it plays, and what the value represents?

The cool thing is, u just need to copy my automation. It is generic vor all roller shutters. You don’t need to specify a specific entity_id.

The automation listens vor any service call “set_cover_position” and checks if the cover entity in the call has reached the final position yet or not. As long as the final position is not reached, the “set_cover_position” command will be repeated every seconds.

See my explanation above. Just copy my automation. You can leave the delay at 1 or 2 seconds, it will be repeated until the final position is reached. You will even see the cover control moving in 1 second steps.

I try your automation but for me nothing work.

I just copy past your code in automation yaml it’s correct ?

Ok I find a solution

zwave.refresh_node automation after any action with this device.

It’s the same for my FGT Fibaro now have a big problem with all device :frowning:

Hi,
I happen to have the same problem with my new FGR-223.

I also have an old FGR-222 and changing the position was ok via Hassio.
When I installed my FGR-223 on another blind, the position is indeed not updated correctly when I change it via Hassio.

Here is how I set it right:
First I move the cursor to the position I want. Then the roller goes to the right position and when it is physically stopped, I just press the “Stop” button between the two arrows. After a few seconds, the position is set correctly.

So the thing is, when the roller reaches the desired position, just press the “Stop” button.

Hope this helps

1 Like

Didn’t work well for me, because Fibaro somehow queued the set_position requests and ended in looping from closed to opened states.

But I’ve found the solution for getting the update after action over HA is done if you stuck at firmware v5.0:

  • first, collect an value_id of your cover entity, i.e. by using the following automation (you need to fire the position change once and check system logs for value_id)
- id: '68a5d03014cc'
  alias: Roller Shutter ValueID Tester
  trigger:
  - platform: event
    event_type: call_service
    event_data:
      domain: cover
      service: set_cover_position
  action:
  - service: system_log.write
    data_template:
      message: '"node_id: {{ state_attr(trigger.event.data.service_data.entity_id,
        ''node_id'') }}" "value_id: {{ state_attr(trigger.event.data.service_data.entity_id,
        ''value_id'') }}"'
  • second add the status update automation for each device with the value_id from step 1
- id: '1583872422398'
  alias: Bedroom Curtains Status Update
  trigger:
  - entity_id:<YOUR_ROLLER_SHUTTER_SENSOR_SYSTEM_ENTITY> i.e sensor.bedroom_curtains_system
    platform: state
  condition:
  - condition: template
    value_template: '{{ is_state_attr(trigger.entity_id, ''power_consumption'', 0)}}'
  action:
  - data_template:
      node_id: '{{ state_attr(trigger.entity_id, ''node_id'') | int }}'
      value_id: '<YOUR_VALUE_ID>'
    service: zwave.refresh_node_value

With the steps above you should see the correct status after the curtains changes its own position (with delay of 1-2 seconds).

EDIT:
I’ve updated the controllers to v5.1 and changed the script to the following:

- id: '4873203472347998423'
  alias: Update Roller Shutter Status
  trigger:
  - platform: state
    entity_id:
    - cover.kitchen_curtains_level
    - cover.bedroom_curtains_level
    - cover.living_room_curtains_level
  condition:
      condition: template
      value_template: >
        {{ trigger.from_state and
           trigger.to_state.attributes.power_consumption !=
           trigger.from_state.attributes.power_consumption and trigger.to_state.attributes.power_consumption == 0.0 }}
  action:
  - service: cover.stop_cover
    data_template:
      entity_id: '{{ trigger.entity_id }}'

This solution allows to avoid refresh_node call, but to makie it work you need to play around with 2 node’s parameters: (155) Motor operation detection and (61) Power reports - on change, so the fibaro properly reports power consumption. The only flaw is that the power report has a significant delay (around 10s), but I am fine with that.

1 Like

hello, I don’t understand why the FGR-223 is still a problem on hassio, can we do something to fix it definitively ?

on my side, I have 5 FGR-223, the slider doesn’t work like many others, but when I try open/close button, it doesn’t work everytime, sometimes, it takes 1 minute to send the command, and it crashes the zwave server… My FGR-222 works perfectly :frowning:

update: I have upgraded the firmware and the control is now ok, still delay sometimes to send command. The level problem is still here by the way

We should setup a petiton on change.org to ask Fibaro to make firmware available outside their HC. It really doesn’t make sense and I don’t think it is a good strategy from a business point of view: I read tens and tens of posts with people returning Fibaro devices because they could not update the firmware and fix problems, and once you return the item you can buy something else.

Hello everyone,
I’ve read a lot most of thread on this forum on how to get this module work correctly. I’ve 5 of them and I’m a newbie in zwave network.

Everyone told me that Fibaro hardware is reliable, but after reading it seems that is not the case (for Home Assistant in fact).

So the question for the dev and zwave guru : does it have any chance to work correctly one day without Fibaro intervention ? Does we know where the problem come from ? I’ve read in the HA blog there will be some change in how HA handle Zwave (in beta for now). Does it change anything for our problem.

Thank all for your time, work, and sharing with the community.