A bug with zwave-dual-switch

I have a zave dual switch and I have installed the Edge driver on it.

Except for one bug, all others have achieved the expected results.

When I switch the status of the two switches of the device on the device list interface of the ST APP, the physical device can switch the switch status according to the expected effect. But on the list, if you switch the second switch, the state of the first switch will also change synchronously.

What we expect is that the switch status of the list interface will only be consistent with the corresponding physical switch.

Hi, @chenjun

I’d like to ask you some questions to understand the issue better, please:

  1. Do you mean this is happening for one of your certified devices? If so, which fingerprint does it belong to?
  2. This driver creates a child device, so, we’re talking of two different device instances but 1 physical device, correct?
  3. You mentioned that only one physical device had the effect of turning the main switch on/off according to what the switch 2 (child device) is receiving, correct?
  4. When you turn on/off the switch 2 (child device) and also turns the main switch on/off, does it also affect the physical device or it’s only changing the status in the ST platform?

We need your help to collect the following information:

  1. Driver logs of you replicating the issue of sending a command to the second switch (child device) to see what is causing the event for the main device
  2. After this, submit the hub logs to have the extra information:
    1. In the [Advanced Users app]( SmartThings. Add a little smartness to your things. ), enter the “Hubs” section
    2. Enter the corresponding Hub and click on “Dump Hub logs”
    3. Confirm the process by clicking on “Dump Hub logs” again in the pop-up.
    4. You’ll get a green box at the top confirming the Hub logs were requested.
  3. Open support access to the account where they’re installed
    1. Confirm the email account registered in the forum is the same one you use for SmartThings. If not, please share it with me over DM

    2. Enable support access to your account:

      1. Go to the SmartThings Web (my.smartthings.com)

      2. Log in to your Samsung Account

      3. Select Menu (⋮) and choose Settings

      4. Toggle on Account Data Access

      5. Select the time period and confirm - In this step, please select “Until turned off”, once the team finishes, we’ll let you know so you can disable it again.

      See more information about this access here: https://support.smartthings.com/hc/en-us/articles/36170233944852-Enabling-Account-Data-Access-for-Support

Thanks!
Over all, when I click the on/off buttons of the two sub devices on the list in ST APP, both physical sub devices can operate normally.
But when I click on/off button of the first sub device on the list in ST APP, the status of the second sub device on the list in ST APP is changed at the same time(This is not what we expected).
When I click on/off button of the second sub device on the list in ST APP, the status of the first sub device on the list in ST APP is not changed(This is correct).
I have added a lot of logs in the driver to try to track where the problem occurred–Unfortunately, not a single log has been printed, indicating that the updates to the list interface in ST APP are not in the device driver.
You can test it on the device with the fingerprint “mfr = 0x0312, prod = 0xFF00, model = 0xFF05”.

  

Hi, @chenjun

Sorry but we don’t have this device, if you’re referring to the one you sent to the Lab Test, there’s no way for us to get it or tell them to test the driver for this issue.

So, we need your help to collect the information I mentioned above to analyze the issue and see why this is happening, based on your description, I don’t know which one is the first and second sub device, I don’t know what’s causing the others to receive an unexpected command.

So, please, replicate the issue as follows and send the logs requested above (driver and hub logs):

  1. As I understand, you have two sub-devices, which means there is a third device, which is the parent/main one, correct?
  2. So, send the command to the child/sub device where the command doesn’t trigger extra events first.
  3. Then, send the command to the device that affects the other ones; this way, I’ll be able to see their information and commands sent, differentiating between both cases.

Do you mean the logs you’re printing or any driver log in general?

If the first, how are you trying to print the logs? I think it wouldn’t be necessary to send extra logs in the driver because the default logging of the incoming and outgoing messages is already printed y them.

If nothing is being printed in the console, you might have selected the wrong driver, you could use the flag –all as follows:

smartthings edge:drivers:logcat –all

Thanks!

I have traced the wrong as your guide:

Here, I add logs in every functions as below:

And here, I add logs in every functions as below:

In order to reduce unwanted logs, I deleted all devices:

Get the SmartThings Hub Local IP Address:

Now I start get the drivers info and publish my driver with logs:

I add my dual switch into the net, and get logs as below(no any other actions):

…How to upload the logs? it seems that txt file is forbidden to upload in the community.

Thanks!

I have resolved the issue that occurred on my device.

I found that “multi-metering-switch” has child switch device profile “switch-binary”.

Then I moved the device’s fingerprint from “zwave-dual-switch” to “multi-metering-switch”. And added the configuration into “metering_switch_configurations“.

Tester found that the issue has been resolved.

Thank you for letting us know, @chenjun.

Don’t hesitate to contact us again if you have other issues.