[shelly] missing channel entity on a Shelly 2.5

Hi folks,

I have 4 Shelly 2.5 deployed as roller shutters (all of them on the latest firmware). Out of the four, one of them doesn’t seem to be properly configured by the core Shelly integration: the binary sensor corresponding to one of the two momentary switches is not created. I have already tried to reconfigure the device and I even updated from 2021.9.4 to 2021.9.8. Whatever I do, that entity doesn’t show up. Any ideas what else I could do?

Thanks!

Welcome to HA Community.

Have you gone into the device through the integration to see if there are any hidden or disabled entities? I suspect yes but have to ask.

Have you tried removing and reinstalling the device?

Can you access it through the shelly app and does it work?

Have you gone into the device through the integration to see if there are any hidden or disabled entities? I suspect yes but have to ask.

Yes. For all Shelly devices the only disabled entity is the uptime.

Have you tried removing and reinstalling the device?

Yes. I’ve done that before upgrading to the latest version of HA. I removed the integration, stopped the container (I run HA in Docker), updated the image, re-added the Shelly 2.5. Same result…

Can you access it through the shelly app and does it work?

Yes, but there you don’t see anything about the switches.

Oddly enough when I went to shelly app there was a new firmware available. 20210720-184734/v1.11.0-g6abd92e. Are we on the same firmware?

Both of my 2.5 have 16 entities. Do your other 2.5’s have this number?

Have you removed the device from HA, reset the device to factory setting from the shelly app and re-configuring it, and then added back to HA? If this doesn’t work my conclusion would be the device is bad.

My 2.5 units are running a slightly newer version - 20210909-144331/v1.11.4-DNSfix-ge6b2f6d. However, only one unit (out of 6) is missing the entity for the switch associated with the second channel.

I won’t go through the hoops of resetting the device to factory settings, since this is definitely a software issue in HA’s core Shelly integration. I was running ShellyForHAAS before with the same firmware on the Shelly units and I had no issue with the channels’ inputs. I switched, though, because ShellyForHAAS has a bug when reporting the used energy for Shelly 2.5 and I really wanted to be able to use the Energy Dashboard.

If I compare the output of the /status URL between two Shelly 2.5 units configured as roller shutters I see the same JSON structures for the switches:

    "inputs":[
        {
            "input":0,
            "event":"",
            "event_cnt":0
        },
        {
            "input":1,
            "event":"",
            "event_cnt":0
        }
    ]

Really odd that 5 work and 1 doesn’t. I don’t see how this makes it a software issue. Not saying it isn’t a software issue but the fact that other devices have the entity and one doesn’t makes me skeptical. This is beyond my skills so I hope others on the forum with more knowledge pipe in.

Best Regards

I found the bug! For some reason, although the device is configured as a roller, the core integration checks the relays section for defining the binary sensors for the inputs. If for some reason the inputs defined in the relays are set to toggle rather than momentary, they will define how the binary sensors are defined, although the device’s roller settings define the switches as momentary.

If somebody else has this issue, the solution is to switch the Shelly 2.5 from its own web UI or from the app to relay mode (device type) and configure the switches to momentary, then swap the device type back to roller.

I’ll report this bug so that it gets fixed. https://github.com/home-assistant/core/issues/56531

1 Like