Why was a new naming scheme forced on the user and how to reverse it?

That’s because they were already registered to the system via discovery and you overwrote the names manually. Auto generated names only affect entities where you didn’t adjust the names manually. Delete the devices and re-add them and you’ll see the REAL auto-generated names.

Yes, only MQTT was forced down this path because it was the only integration not doing this method. All the rest follow this method and it works fine.

Because you renamed it. The default naming method does not put the entity in the middle like that. I know because I use Xiaomi myself. Here’s an example of one I added last week:

All auto-generated.

2 Likes

And if I wanted to rename that device, I could name it to XYZ. A pop up would appear “Do you want to change your entities”, if you click yes, your entity_id’s and entity_names would update. If you click no, they will remain the same.

1 Like

I did not rename. But maybe the old name was not replaced.

Tasmota (which uses rhe MQTT payloads) also had to be changed to support this new nomenclature.

But again, the problem is that the content of the payloads now is no longer clear.
You will have 10 devices just sending their entity names as “Temperature”. So any other system that is not part of the HA world is screwed.
And for no real reason :frowning:

Whole point of setting this at source, i.e. the MQTT payload is so that all recipients will receive the same names without the user needing to adjust per target.

No no no no no. They will be device_entity. They will be 100% unique.

1 Like

No, tasmota will send them as seprate information. HA joins them.

If e.g. OpenHAB or someone else receives that tasmota payload, the will only receive “Temperature” because this arbitrary fusion of device and entity is a HA thing.

Dude, that’s the discovery topic, not the state topic. Discovery is literally only for home assistant.

1 Like

They are taken from device name, friendly name 1 and friendly name 2. Initially intended for HA integration, yes. But also used as identifier for any other use case.
So yes, one could say that only HA counts and so every user should rename every device and entities.

But why? Why create this kind of hassle? Why could the user not decide? Why change it?

Please take the time to learn the basics on MQTT discovery. At this point, everything you’ve been irate about is a false understanding of the system, and you keep moving the bar so that you can continue to be outraged.

Please, integrate a new device, you’ll see the auto-generated names are exactly as I described.

Whatever you’ve done to your own entity naming has messed your system up enough that it’s not working the way you want and its furthering your frustrations.

1 Like

It used to work as I wanted and then these changes messed it all up.

But thank you for your explanations and time and patience to respond.

I still disagree with this forced change but I will take the time to change all my devices so it fits with the new scheme and then delete all device from HA.
They should then be readded correctly.

I just hope that all the data will not be lost since the entity_ids will all change afterwards. So hopefully the unique id will be retained.

If you don’t want to lose history, then you should just rename your entities to match:

name: <Device> <Entity>
and
entity_id: <domain>.<device>_<entity>

All the renaming functionality will work again after doing that.

This is quite a (needless) breaking change because all scripts, automations etc. need to be changed and all old data is lost (unless manually renamed).

And it seems that tasmota power sockets (e.g. Shelly 2.5 PM) will not be named properly because only the switch receives the friendly name but all the sensors are unnamed. Need to figure that out first.

Had you left your naming convention alone throughout this breaking change, nothing would have broken. It literally only affects auto-generated names going forward. Already registered entity_id’s would have not changed.

1 Like

That is too short sighted, @petro :wink:

I want my system setup in a way that I can wipe it and set it back up in less than 30 mins. Plus, I am creating my own MQTT discovery topics for some of my devices, so when I change my code I sometimes have to delete the devices to ensure everything is updated.

That is why all config for all entities should be done at source, i.e. with the discovery payloads.
And that is why I really dislike needless changes to the payload handling as they were introduced here.

Everything fine until next time I have to set up my system from scratch and then it will all come crashing down :wink:

If I remember correctly, there is one table in the SQL database where the entity_ids are associated to a unique id or something. So hopefully I can change it there to the new names and it will keep all my data.