Custom capabilities disappeared from the view

Hi @alissa.dornbos

I was updating with the CLI the presentation of a custom capability id: legendabsolute60149.circadian and the driver that used it just when the update of the hub firmware bete 49.8 occurred.

After restarting the hub with the new version 49.8 some custom capabilities, with display type switch have disappeared from the details view of all devices where they were used.
In android app 1.8.05.24

From the view of automations, conditions and actions have disappeared in some devices and not in others.

even more rare, on a phone that is still with the version of the Android app app 1.8.01.22 all the capabilities are presents and work

I turned off the hub to see if it would recover and everything is still the same

These are the capabilities that have disappeared:

  • id: legendabsolute60149.randomOnOff1
    Version 1
  • id: legendabsolute60149.progressiveOn1
    Version 1
  • id: legendabsolute60149.progressiveOff1
    Version 1
  • id: legendabsolute60149.circadian
    Version 1
  • id: legendabsolute60149.colorChanging

Hi, @Mariano_Colmenarejo
Issues about the user interface of the app are not related to Hub firmware updates, this time both updates happened in similar timeframes so, it can be confusing.

However, the Hub firmware update doesn’t affect the view in any way and Alissa is not part of the team that can review this kind of issue.

It is strange that the capability disappeared entirely from the UI for some devices, have you cleared the app’s cache?

@nayelyz

I cleared the cache several times.

Disappears all the custom capabilities that use the “switch” type display in the details view. See screenshot

automations conditions and actions view displays fine
See screenshot

It happened right after the hub was rebooted with the new firmware 49.8

it is true that in another mobile with the previous version app everything continues to work
See screenshot

Can you share the VID in use by the device, please?

Profiles do not use custom VIDs.

This is a presentation of the capability, the others are identical, but for the values and attributes of each capability

{
    "dashboard": {
        "states": [
            {
                "label": "{{circadian.value}}" 
            }
        ],
        "actions": []
    },
    "detailView": [
        {
            "label": "Circadian Lighting",     
            "displayType": "switch",
            "switch": {
                "command": {
                    "name": "setCircadian",    
                    "on": "Active",
                    "off": "Inactive",
                    "argumentType": "string"   
                },
                "state": {
                    "value": "circadian.value",
                    "valueType": "string",     
                    "on": "Active",
                    "off": "Inactive",
                    "label":"{{circadian.value}}",
                    "alternatives": [
                        {
                            "key": "Active",
                            "value": "Active",
                            "type": "active"
                        },
                        {
                            "key": "Inactive",
                            "value": "Inactive",
                            "type": "inactive"
                        }
                    ]
                }
            },
            "state": null
        }
    ],
    "automation": {
        "conditions": [
            {
                "label": "Circadian Lighting",
                "displayType": "list",
                "list": {
                    "alternatives": [
                        {
                            "key": "Active",
                            "value": "Active",
                            "type": "active"
                        },
                        {
                            "key": "Inactive",
                            "value": "Inactive",
                            "type": "inactive"
                        }
                    ],
                    "value": "circadian.value",
                    "valueType": "string"
                }
            }
        ],
        "actions": [
            {
                "label": "Circadian Lighting",
                "displayType": "list",
                "list": {
                    "alternatives": [
                        {
                            "key": "Active",
                            "value": "Active",
                            "type": "active"
                        },
                        {
                            "key": "Inactive",
                            "value": "Inactive",
                            "type": "inactive"
                        }
                    ],
                    "command": "setCircadian",
                    "argumentType": "string"
                }
            }
        ]
    },
    "id": "legendabsolute60149.circadian",
    "version": 1
}

I wanted to get the complete configuration to replicate the case as similarly as possible.
I just updated the app and I had an old device with the capability legendabsolute60149.randomOnOff1 and was showing correctly.

So, it made me think it could be due to the complete configuration as is (it has happened to me before that the issue just gets replicated with the exact same configuration) that’s why I asked, with only the VID I can get all the capabilities to add them to my profile but I’ll see if I can do it differently.

1 Like

Thanks @nayelyz, I’ll see it tomorrow, I’m going to sleep

Have a nice day

@Mariano_Colmenarejo, following up on this, I haven’t been able to replicate the issue using your capabilities which means the capabilities themselves are not the problem.

We would need to investigate your specific case, first trying to replicate it as similar as possible, if that doesn’t help, we’ll need the following:

  1. Access to your account
  2. Name of the devices
  3. Android app logs

Hi @nayelyz

There are users who no longer see the capabilities in the details view in drivers that I have not touched

The difference I see between your test capabilities and mine is that the values are “On” and should be “Active” or “Inactive”.

Perhaps it no longer admits that value in the Key “Active” or “Inactive” of the presentation and now I need have to put “on” and “off” for example. ??

The only custom capability with this display type “switch” that still works is “legendabsolute60149.motionSensorEnable”, which uses the values and key “Enabled” and “Disabled”

I will do some test with this

I changed the values to “Active”/“Inactive” and they’re still there, it perhaps only affects devices that existed prior to the update somehow.
The old device I had using your capability is type DTH so, I cannot test it anymore.

It would be useful to know your results and if the issue persists, we will need the extra info I mentioned.

Hi @nayelyz

After several hours wasted doing tests it seems that it is a problem with the display type “switch” in the details view with some complement of the new version of Android App 1.8.05.24 since it was working fine the first days of the update of the app to that version.

  • I have created another new capability “legendabsolute60149.circadian2” from scratch and everything remains the same, it is not shown in the details view of the new version (pixel 7a). In the old version App 1.8.01.22 on two different phones (Samsung A12 and pixel 2XL) it works fine

App 1.8.05.24

App 1.8.01.22

  • With this capability I have updated its presentation with the “list” display type in the details view and everything works correctly in the 2 versions of the App

App 1.8.05.24

  • I have updated the presentation of the capability with the display type “toggleSwitch” in the details view and everything works correctly in the 2 versions of the App

App 1.8.05.24

App 1.8.01.22

  • I have updated the presentation of the capability again with the display type “switch” in the details view and the new app the capability disappears. In the previous version it still works fine.

I remember that in another update of the app… a year ago??? I had to change all these capabilities from type “toggleSwitch”, as they were originally created, because they stopped working and I had to redo them all to use them with the display type “switch”

I give up!! I’ll wait for it to fix itself or break a little more, I’m tired of rowing against the current

Thank you, Nayely

1 Like

When you made these tests, did you only replace the capability’s ID in the same device profile? I still cannot replicate the issue and I tried on two different Android devices and with other capabilities of mine with the “switch” display and Active/Inactive values.

I understand your frustration, it would be super useful for me to get the config of your profile so I can continue testing and report it to the team (you can do it over DM), otherwise, this can be overlooked since it doesn’t happen for every case and I don’t want to leave it as it is right now.

1 Like

Hi, @Mariano_Colmenarejo
Following up, after using your configuration, I started seeing the error.
The curious thing is that it happens when we add the “Switch” capability to the profile. If we remove it, everything goes back to normal.

I already created the report for the engineering team, once I have more info, I’ll let you know.

2 Likes

Thanks @nayelyz

That is why in the thermostat profile it continues to work, it does not have a capability switch. It also seemed strange to me that it continued to work well here

1 Like

Hi, @Mariano_Colmenarejo
I noticed that in the latest version of the app, the capabilities don’t disappear when using Switch anymore, if you still have devices installed that had the issue, please let us know if it’s solved for them.