New zwave bulk set partial config parameters not reliably bulk setting parameters

I’ve been reading through the release notes from the beta firmware and have been trying this service each update since it was initially released with core-2021.4.0b0. I’m currently running core-2021.4.0b4.

As I understand it, I believe I wrote this correctly for use with my Inovelli LZW31-SN switch to configure a Yellow Chase automation max brightness for 10 seconds. However, using node red results in an API error MOST of the time (It’s worked a couple times randomly, but most of the time it errors), and trying to configure it under development tools > services results in nothing, no error and no automated LED notification. Can anyone review what I have to ensure I’ve configured it correctly?

development tools > services:

service: zwave_js.bulk_set_partial_config_parameters
target:
  entity_id: light.under_deck_light_level
data:
  parameter: 16
  value:
    - 0xff: 42
    - 0xff00: 10
    - 0xff0000: 10
    - 0x7f000000: 2

Node Red within service call node:

{
    "entity_id": "light.under_deck_light_level",
    "parameter": 16,
    "value": {
        "0xff": 42,
        "0xff00": 10,
        "0xff0000": 10,
        "0x7f000000": 2
    }
}

Also the error in node red is as follows:

Call-service API error.  Error Message: 'NoneType' object cannot be interpreted as an integer

I pulled the bitmask values from the database here: https://devices.zwave-js.io/?jumpTo=0x031e:0x0001:0x0001:0.0#

As far as I know, this should be correct, but it rarely works. In fact, it didn’t work at all period until core-2021.4.0b4 when it worked maybe three times before failing every time thereafter. I know it’s beta so this feature might not work 100% of the time just yet. I would just love to rule out if I’m doing something wrong is all. Thanks in advance!

2 Likes

There was a bug in the library regarding bulk set, it’s been fixed and should be in the next beta if there is one. It’s in the dev branch and works properly, also note you don’t have to utilize the bitmasks anymore and can just send the whole big int value in one shot.

1 Like

Awesome thanks for confirming! I’ll standby and wait for the next release before playing with this some more then.

You can test it out in the dev container right now. It works very well in my few tests I ran.

Is it possible to “bulk read” the current state of one of these parameters? If so, can anyone point me in the direction as to how to do so.

FWIW… use case, I have a LED on a switch that seems to be on sometimes when it shouldn’t be. Want to have a quick way to turn it of IF it is already on when it shouldn’t be.

Look at this topic:

Thanks! I’ll check it out!