How to exclude entities from Home Assistant now that hidden has been deprecated?

Hi folks,

I updated to 0.112.2 from 0.111.3 and like many folks who previously had “hidden” attributes set in customize.yaml, am looking for an alternative.

Specifically,

  • I have a bunch of scenes and switches automatically generated by the Lutron plugin that I don’t want showing.
  • I would also like to hide the Zone 2 and Zone 3 media player controls automatically generated by my AVR as I don’t use those.

Previously, I set “hidden” to true in customize.yaml for each of these. What’s the best way now to hide these from HA?

Thanks!

Take control of your UI and edit it to suit yourself

2 Likes

Is there no way to globally exclude entities? That’s unfortunate. At least I can still exclude them from HomeKit…

I’m a bit lost.
Tinkerer has advised you to take control of your ui.
This allows you to create different tabs (views) for your grouping of functionalities, media, lighting, heating etc.
Within that you set up cards to group sub entities together for ease of access so a card for your bedside lamp, manual, wake up time, brightness level etc.

Anything I don’t want shown is just not listed

If you aren’t taking control of your ui, it must look like a dogs breakfast

1 Like

Actually, while it was nice of you to presume about the dog’s breakfast, not taking control of my UI has been great since Day 1 of using Home Assistant with lovelace. It’s done a great job automatically sorting it the way we need it. Just these breaking changes in the last few months that’s slowly made that impossible to remain usable.

Things we previously marked “hidden” and now I want to exclude from HA, we have no intention of using anywhere within HA. For instance, Zone 2 and Zone 3 of our AVR. It’s not connected and it won’t ever be connected.

So now, the official solution for something that my Lutron hub forcibly exposes as entities, I have to a) use a custom lovelace UI to prevent it from showing and b) mark them as ‘excluded’ to Homekit so it doesn’t show there. Where else?

Oh, and if I take control, and some weeks later I add new switches on my Lutron system, I have to remember to add them to the UI…

1 Like

You can disable Entities under Configuration > Entities. Click the checkboxes next to the ones you don’t want and then press the “Disable Selected” button at the top of the table. Off the top of my head, I’m not 100% sure whether that removes them from the auto-generated Lovelace or if those entities still show up in a disabled state, but it might be worth a try.

By the way, when you take control, it uses your current auto-generated UI as the base - you’re not starting from scratch (unless you choose to). You do have to add things yourself going forward which requires manual labor. But it sounds like you were already doing a bunch of manual management anyway by hiding all this stuff.

I asked about this in the release thread. This is the response I got:

1 Like

I just tried it and can confirm that the disabled entity is removed from the auto-generated UI.

Now, how do you re-enable it? I disabled an input_number entity and now all traces of it are gone from the Entities page. There’s no menu option in the Entities page to display Disabled entities.

Will this require a trip to the .storage folder to perform some JSON surgery on the entity registry?

Thanks SeanM!

I just tried this again, and I can’t check those entities. On the far right they’re marked as “read only” for some reason…

There’s a filter icon inside of the search bar (far right), it’s kind of easy to miss. Once clicked there’s an option to “Show disabled entities,” then you can search for the input_number and re-enable it.

Unfortunately you cannot disable those entities then, since they’re read-only ones without a unique ID.

1 Like

Thank you and, yes, I did miss it. Whereas three-dots represent an overflow menu, I mistook that symbol to represent sorting and so didn’t even bother to inspect it for other options. Now I know it’s not for sorting but for filtering! :man_facepalming:

I’ve encountered what may be a bug.

I re-enabled the disabled input_number.test but its name is now listed as Unavailable despite the fact it has a friendly_name called Test. In addition, it fails to re-appear in the automatically-generated UI (even after executing Reload Input Numbers).

That’s not the behavior I would expect from a re-enabled entity, especially from one created via Configuration > Helpers.

What fixed it was restarting Home Assistant.

You probably could have reloaded core so it reads the customization again as well?

Just tried it again and … no joy.

In 0.112 there’s no Reload Core so I assume the new name is now Reload Location and Customizations. Neither that or Reload Input Numbers puts the re-enabled input_number entity back into the States view or the auto-configured UI. It only appears in the Entities view (with a name of Unavailable). Restarting Home Assistant, once again, was the only thing that truly restored the input_number’s full functionality.


EDIT
It’s not a exactly bug because a full restart fully restores the re-enabled entity. However, the complexity of re-enabling stands in stark contrast to the ease of disabling.

the service name is still homeassistant.reload_core_config though

Yeah, I would agree with that. I think most users would expect it to be usable immediately after re-enabling it, certainly after a reload. If there’s a technical reason that it requires a restart it should at least be communicated to the user in some way (maybe a message on the more info dialog). Not sure whether that’s considered a bug or not, but the UX for that could definitely be improved.

One cool tip I forgot to mention - if you have the checkboxes in those filter options enabled, you can simply type in the word “disabled” or “restored” directly into the search bar. That will filter the list to only the entities you’ve disabled or only the ones that are currently unavailable. Saves a whole bunch of scrolling, sorting, and searching. (This functionality will be better surfaced in the UI eventually).

1 Like

Just for fun, I tried running that service and got the same result: the re-enabled entity is not fully restored; only a full restart does the trick.

Ditto.

Disabling the entity was immediately effective but after re-enabling it the entity is non-functional (not listed in States and not visible in the auto-generated UI). That leaves one with the impression that re-enabling failed to work correctly.

So would you consider this to be an issue for the Core repo (re-enabled entity is non-functional until a restart)? Or a feature request in the frontend repo to add a note about having to restart after re-enabling an entity?

Personally, I would prefer to see the entity fully re-enabled without requiring a restart, especially in the case of entities that are dynamically created by their integrations. After all, I created this input_number using the UI and didn’t have to restart in order for Home Assistant to be able to use it.

What about reloading only Input Numbers?

opq,
The deprecation of groups and the hiding of entities has been noted many times in the forum over the last 6 months or so (@123 probably has an exact date to hand (you must tell me how you do that, or do you make up an version number and trust to our apathy and lack of grey cells ?)) and in the release notes and a couple of warning following start up (I think, not 100% sure on that last)
Why have you left this till it has become a major issue for you ?
Admittedly, not everyone reads the notes every time but you must have seen something ?

Edit: not saying the two above were simultaneous, but they were concurrent and caused a lot of chatter.

I reported the result of trying that in one of my posts (spoiler alert: it didn’t work).