Everyone, there will be MQTT name changes in the next release of the software. There is nothing to worry about, your names are safe. However the change caused addons like Z2M (and other MQTT integrations) to update their discovery information. As it stands, Z2M will not be able to release a version with this fix until September 2023. During that time a warning will be in your logs indicating that there is an issue. You can safely ignore this warning. As of this writing, there may also be an accompanied repair. You can also safely ignore this repair.
Once Z2M updates, the warnings will go away.
Again, during this whole transition period, your names and the default device names should not change. Please keep us informed if they do change.
As for anyone using other MQTT addons/discovery providers, please notify the upstream library about the change. Once that is done, you can safely ignore the repair and warnings until it is fixed in the upstream library.
The change states that MQTT should not provide the device name in the entity names that are attached to the device. So if your upstream MQTT provider is supplying a device name inside the entity name, they should stop providing that information. They should only provide the device name to the device, not the entity.
Here is an example log:
MQTT device name is equal to entity name in your config {'availability': [{'topic': 'zigbee2mqtt/bridge/state', 'payload_available': 'online', 'payload_not_available': 'offline'}], 'brightness': True, 'brightness_scale': 254, 'command_topic': 'zigbee2mqtt/Spots woonkamer/set', 'device': {'identifiers': ['zigbee2mqtt_0x8cf681fffe9d549f'], 'manufacturer': 'EcoDim', 'model': 'Zigbee & Z-wave dimmer (Eco-Dim.07/Eco-Dim.10)', 'name': 'Spots woonkamer', 'sw_version': '1.01', 'connections': []}, 'name': 'Spots woonkamer', 'schema': 'json', 'state_topic': 'zigbee2mqtt/Spots woonkamer', 'unique_id': '0x8cf681fffe9d549f_light_zigbee2mqtt', 'flash_time_long': 10, 'optimistic': False, 'payload_available': 'online', 'enabled_by_default': True, 'flash_time_short': 2, 'qos': 0, 'white_scale': 255, 'encoding': 'utf-8', 'color_temp': False, 'xy': False, 'rgb': False, 'color_mode': False, 'payload_not_available': 'offline', 'hs': False, 'retain': False, 'availability_mode': 'latest', 'effect': False}, this is not expected. Please correct your configuration. The entity name will be set to `null`
If you unsure about the term upstream provider, please take a moment to understand how MQTT works. A separate software will create topics that contain messages on the MQTT Broker (Your MQTT Addon), home assistant will then listen to the messages on those topics and react to changes. You have to identify the software that is creating the messages. This software is not controlled by HA. Once you determine the origin of the messages, open an issue on that softwareâs page explaining this change. Then you can safely ignore the warning and repair until they make changes to their software. There is nothing else you can do unless you are the provider of the messages (a developer, a mqtt yaml guru, or an automation mqtt yaml guru). So, if you donât understand any of this, youâre not the provider of the messages. Meaning you canât fix it, you can only notify people that a fix needs to happen. That fix will be outside HA.
And lastly, this change does not affect the auto generated entity_ids.