Deleting one entity from esphome device when esphome no longer provides it

This is an ongoing problem and I may be just missing the right sequence of steps.

Say I have a button provided by an esphome device.

I edit the code for the device to remove that button, and upload to the device. The button goes unavailable but cannot be deleted.

Based on other postings I have tried:

  • disabling the entity (that’s already unavailable) first – no delete button

  • disabling the device, deleting it (it allows delete), but upon enabling device the entity comes back.

  • setting the button to internal=true as opposed to removing it - no change, still unavailable and cannot delete.

The only way I’ve found to delete it is to remove the device from the esphome integration completely, and add it back - which loses any entity customizations, name changes, etc.

This just plain seems broken?

Or am I missing the right sequence of steps?

Linwood

Yes it does but apparently that is how it is supposed to work. If you want to delete an entity from a previous config you have to delete and re-add the device from the Home Assistant integration.

Interestingly this was a deliberate change. It didn’t always used to be this way.

I suspect it must have been done to prevent some sort of issue with the device registry.

There are a lot of places where home assistant makes it too darn hard to delete an entity. There must be a better way.

What makes this really annoying is the strong move away from allowing yaml customizations, requiring it be done in the GUI. This means when you do delete and re-add devices you have to redo all that because it’s not in text.

Sigh… thanks for the confirmation it wasn’t my oversight.

Maybe someone, somewhere is listening to the frustration this creates.

1 Like