Zigbee2MQTT Groups Giving "rampRateOffToOnRemote" error?

See: Setting the state of groups containing Inovelli Blue switches result in "rampRateOffToOnRemote" error · Issue #18851 · Koenkk/zigbee2mqtt · GitHub

Basically if I have groups containing Inovelli devices it seems like Z2M is trying to call rampRateOffToOnRemote on the group. Which obviously doesn’t have that property. Tried setting them on all members of the group etc. It’s causing the group behavior to be sporadic when turning on (e.g. not all devices turn on). But turning off seems to be fine.

Anyone seen this?

If anyone else is seeing this, can it be tied to a certain release of z2m?

@nathanfiscus I know you aren’t a z2m user, but have helped in the past. Are you familiar with what might be happening here?

According to the git issue, it is happening when this part of the converter is executed when a group is turned on:

 const defaultTransitionTime = await entity.read(
                            'manuSpecificInovelli',
                            ['rampRateOffToOnRemote'],
                        );
                        return {
                            state: {state: 'ON'},
                            readAfterWriteTime: transition.specified ?
                                transition.time * 100 :
                                // @ts-expect-error
                                defaultTransitionTime.rampRateOffToOnRemote * 100,
                        };

I wonder why this would happen when it is the group that is being controlled since the group is not going to be using this value.

Correct. That’s the odd part. It seems like it’s trying to find the ramp rate of the group…

I’m also seeing related issues in the HA log for that same setting like the following:

2023-12-18 11:56:58.871 WARNING (MainThread) [homeassistant.helpers.template] Template variable warning: 'dict object' has no attribute 'rampRateOffToOnRemote' when rendering '{{ value_json.rampRateOffToOnRemote }}'
2023-12-18 11:56:58.994 WARNING (MainThread) [homeassistant.helpers.template] Template variable warning: 'dict object' has no attribute 'rampRateOffToOnRemote' when rendering '{{ value_json.rampRateOffToOnRemote }}'
2023-12-18 11:56:59.002 WARNING (MainThread) [homeassistant.helpers.template] Template variable warning: 'dict object' has no attribute 'rampRateOffToOnRemote' when rendering '{{ value_json.rampRateOffToOnRemote }}'

I finally had to filter them from the log because they repeat many times when anything happens to that group. Something about that setting is being mishandled, but I haven’t been able to figure out what yet.

I believe this change may correct the issue of there is someone that can test it:

Firmware bug: defaultLevelRemote does not work - Switches / General Discussion - Inovelli Community

If the change doesn’t negatively impact other functions I will look into getting it pushed into the z2m source.

I completely missed your message back in Jan, but I just noticed that the entire code block that causes this error was removed last week as part of feat: Expose Breeze Mode to Inovelli VZM35 by nathanfiscus · Pull Request #7115 · Koenkk/zigbee-herdsman-converters · GitHub.

  • Remove condition in on\off converter that isn’t allowing the switch to use the rampRateOffToOnRemote parameter. (This is a reported fix from the Inovelli forums, some more cleanup of the logic here is probably needed.)

I’m grabbing the dev branch now to confirm that the error goes away.

1 Like

Let us know. Thanks for all those that helped on the recent PRs.