Zwave_js.set_config_parameter

I am wondering if it is possible to set a parameter Home Assistant doesn’t think exists?

According to the Z-Wave JS Docs my device supports disabling local controls so if I for example I push the physical wall switch it just turns off my lights which are zigbee, instead of cutting power to all the lights.

The Z-wave Docs show the device has parameter 11 which is what I want:

However in HA, when looking at the device z-wave parameters I only show up to 8

When attempting to modify parameter 8 for example in HA, I am able to change the state of it from “previous state (2)” to “Always on (1)” Via the Action by changing it from 11 to 8 and setting the value to 1. If I try to set my Smart Switch Mode however by setting it to 11 I get this error:

I also have messed with, and not had any luck whatsoever with the Action “Z-Wave: Set A Value” Or the “Custom Configuration” Sections.

I was able to get this to work for parameter 8:

action: zwave_js.set_config_parameter
target:
  entity_id: switch.kitchenlights
data:
  parameter: 8
  value: 1

But this fails below with the error in the screenshot above, I’ve also attempted adding in node info, endpoint settings, but I’m really just guessing at this point.

action: zwave_js.set_config_parameter
target:
  entity_id: switch.kitchenlights
data:
  parameter: 11
  value: 0

Any help would be appreciated

Are you sure you have the same device that you linked to? This EVA Logik ZW30 device’s config parameters seem to match your screen shot exactly (Ministon and EVA Logik have the same manufacturer ID, probably same company). The HA Device Configuration page has a link to your device’s DB page, where does it take you, the Ministon MS10ZS or EVA Logik ZW30?

You said “up to 8” parameters, but there’s actually a 9th one in your screenshot. Parameter 9 is “Local control” toggle. Since it’s only binary, presumably it will disable local control but still allow Z-Wave control, but that might still work for your case?

You could try re-interviewing the device to see if the config parameters change, but that won’t help if it’s not the expected device.

The “Custom configuration” section seen in your screen shot is made specifically for the purpose of setting unknown parameters:

What would “not had any luck whatsoever” mean in this case? Did you get an error, or no response? Would need to see driver logs of this to know for certain. I can image the parameter is simply not supported.

For the set_config_parameter action you are required to also set the value_size and value_format fields, which are the equivalent fields seen in the UI.

as far as I can tell, without opening it up, it is a Minoston, that is what I installed and this is what HA shows, + that device page was from the link within HA that you are referencing above.

I misspoke, I was able to successfully change 8 via parameters but yes there is a 9th that shows up. I can change 9 and have enabled/disabled it but its not as it describes and the physical buttons still work. According to the docs 9 is for the scenes which I generally do have enabled and work.

I’ll start by re-interviewing. I have had devices show no parameters or not everything on a bad interview, I’ve had these setup for years but just got some different lights I want powered all the time.

As far as the Custom Config, I have had 0 luck using the “get value” or attempting to set anything there. When I attempt to get, I get the below error and if I attempt to set I get "
zwave_error: Z-Wave error 322 - options is not a ConfigurationCCAPISetOptions (ZW0322) " even its if a parameter I know I can change.

Thanks for the reply, I’ll interview and go from there. I also have other Ministon devices, I have not looked at any other switches though I did look at my dimmer I also have installed and noticed that it has 0 parameters… which would almost indicate a bad interview there.

Definately says it’s a MZ10S. Well, I looked in the history of the device config file. The device config from Oct. 2021 ago matches your screenshot: https://github.com/zwave-js/node-zwave-js/blame/fcef2b877dfef9d36b06ab587a6babd183295172/packages/config/config/devices/0x0312/ms10z.json. So is it possible you included this node before Dec. 2021 and never re-interviewed it? That didn’t seem likely to me, but it’s the most obvious explanation now. A re-interview will certainly update it then.

As far as the Custom Config, I have had 0 luck using the “get value” or attempting to set anything there. When I attempt to get, I get the below error and if I attempt to set I get "
zwave_error: Z-Wave error 322 - options is not a ConfigurationCCAPISetOptions (ZW0322) " even its if a parameter I know I can change.

What version of Z-Wave JS add-on, 0.9.0? Sounds like a bug somewhere. The debug logs I linked to would show the message sent to the zwave-js-server and show if it’s an HA bug or ZJS bug. Haven’t tried it yet myself, might later.

Well dang… I checked my other switch that is the same model… and it looks as it should

Also note that parameter 9 references Scene Control as it should…

I’ll reinterview as I have time and update the post assuming that will fix the issue.

The get/set still didn’t work, but that doesn’t matter as its all right there in the config screen for the other device.

Well, while I now have the options to set the value I need, It still isn’t working.

I’ve tried setting the required values both via the config as well as via the actions (service) which now shows successful when attempting to set parameter 11, though 11 isn’t the only new option I’ve tried changing. I also tried 14 and 15 (LED color and brightness) and neither of those appear to be changing either.

If I go in and change the LED to be on when the light is on, instead of off as soon as I set that I can see the indicator LED on the switch blink a few times, then turn on or off accordingly. When I make the changes to the other parameters, the ones I really care about I don’t get that.

Here are the z-wave logs. I am running the most recent version of Z-Wave JS available in HA.

Successful, when I attempt to change parameter 2 which is the change of the LED on/off on power state:

2024-12-10T23:52:25.316Z DRIVER   one or more queues busy
2024-12-10T23:52:25.322Z SERIAL » 0x011c00130d159f0320001fc73536414ef6bdb41479d257e2a649362555dc      (30 bytes)
2024-12-10T23:52:25.324Z DRIVER » [Node 013] [REQ] [SendData]
                                  │ transmit options: 0x25
                                  │ callback id:      85
                                  └─[Security2CCMessageEncapsulation]
                                    │ sequence number: 32
                                    │ security class:  S2_Unauthenticated
                                    └─[SupervisionCCGet]
                                      │ session id:      36
                                      │ request updates: true
                                      └─[ConfigurationCCSet]
                                          parameter #:      2
                                          reset to default: false
                                          value size:       1
                                          value format:     SignedInteger
                                          value:            1
2024-12-10T23:52:25.330Z SERIAL « [ACK]                                                                   (0x06)
2024-12-10T23:52:25.333Z SERIAL « 0x0104011301e8                                                       (6 bytes)
2024-12-10T23:52:25.335Z SERIAL » [ACK]                                                                   (0x06)
2024-12-10T23:52:25.337Z DRIVER « [RES] [SendData]
                                    was sent: true
2024-12-10T23:52:25.414Z SERIAL « 0x010500135500bc                                                     (7 bytes)
2024-12-10T23:52:25.415Z SERIAL » [ACK]                                                                   (0x06)
2024-12-10T23:52:25.417Z DRIVER « [REQ] [SendData]
                                    callback id:     85
                                    transmit status: OK
2024-12-10T23:52:25.508Z SERIAL « 0x01170004000d119f031800ed2ca5751a72f96a0a99eeddc1ff                (25 bytes)
2024-12-10T23:52:25.517Z SERIAL » [ACK]                                                                   (0x06)
2024-12-10T23:52:25.522Z DRIVER « [Node 013] [REQ] [ApplicationCommand]
                                  └─[Security2CCMessageEncapsulation]
                                    │ sequence number: 24
                                    │ security class:  S2_Unauthenticated
                                    └─[SupervisionCCReport]
                                        session id:          36
                                        more updates follow: false
                                        status:              Success
                                        duration:            0s
2024-12-10T23:52:25.528Z DRIVER   all queues idle

And here is the log from when I attempt to set parameter 11 to disable the physical button locally:

2024-12-10T23:54:08.464Z DRIVER   one or more queues busy
2024-12-10T23:54:08.469Z SERIAL » 0x011c00130d159f03220008641382d1a9dabdd0b43c751bc882691c2557cf      (30 bytes)
2024-12-10T23:54:08.471Z DRIVER » [Node 013] [REQ] [SendData]
                                  │ transmit options: 0x25
                                  │ callback id:      87
                                  └─[Security2CCMessageEncapsulation]
                                    │ sequence number: 34
                                    │ security class:  S2_Unauthenticated
                                    └─[SupervisionCCGet]
                                      │ session id:      38
                                      │ request updates: true
                                      └─[ConfigurationCCSet]
                                          parameter #:      11
                                          reset to default: false
                                          value size:       1
                                          value format:     UnsignedInteger
                                          value:            0
2024-12-10T23:54:08.478Z SERIAL « [ACK]                                                                   (0x06)
2024-12-10T23:54:08.481Z SERIAL « 0x0104011301e8                                                       (6 bytes)
2024-12-10T23:54:08.482Z SERIAL » [ACK]                                                                   (0x06)
2024-12-10T23:54:08.484Z DRIVER « [RES] [SendData]
                                    was sent: true
2024-12-10T23:54:08.563Z SERIAL « 0x010500135700be                                                     (7 bytes)
2024-12-10T23:54:08.564Z SERIAL » [ACK]                                                                   (0x06)
2024-12-10T23:54:08.567Z DRIVER « [REQ] [SendData]
                                    callback id:     87
                                    transmit status: OK
2024-12-10T23:54:08.654Z SERIAL « 0x01170004000d119f031a00a891290491ccf012e6d8cd4a8ce8                (25 bytes)
2024-12-10T23:54:08.658Z SERIAL » [ACK]                                                                   (0x06)
2024-12-10T23:54:08.661Z DRIVER « [Node 013] [REQ] [ApplicationCommand]
                                  └─[Security2CCMessageEncapsulation]
                                    │ sequence number: 26
                                    │ security class:  S2_Unauthenticated
                                    └─[SupervisionCCReport]
                                        session id:          38
                                        more updates follow: false
                                        status:              Success
                                        duration:            0s
2024-12-10T23:54:08.666Z DRIVER   all queues idle

It also looks like the value is unsigned, when I try to update parameter 11 but I don’t notice any other differences.

I’ve also included again, tried setting this on the other 3 devices and actually cut power to fully power cycle the switches.

Not sure what other options I have at this point but to admit defeat but I’m going to continue messing with them, if you or anyone have any other ideas please let me know.