Getting an odd message in the logs "Platform mqtt does not generate unique IDs." - where to solve that?

I see this in my log, and I wonder where it’s coming from:

Logger: homeassistant.components.sensor
Source: helpers/entity_platform.py:488
Integration: Sensor ([documentation](https://www.home-assistant.io/integrations/sensor), [issues](https://github.com/home-assistant/home-assistant/issues?q=is%3Aissue+is%3Aopen+label%3A%22integration%3A+sensor%22))
First occurred: 09.50.39 (1 occurrences)
Last logged: 09.50.39

Platform mqtt does not generate unique IDs. ID ESPsensortext already exists - ignoring sensor.text

You have two esphome mqtt text sensors with this id. You need to change one of them.

1 Like

Ahh, ok, gotcha, probably the matrix led esphome thing that I’m trying to get to work.
Thankyou!

And there it was :slight_smile:

1 Like

What about if we want to have some high availability configuration.
I have similar problem, but haven’t found a way to achieve the following.

I would like to have 2xesp32 listening to bluetooth devices sending the same MQTT topic.
The goal is to have some failover capability, if one of the bluetooth sniffer is dead, everything will continue to work. I understant that I will have 2 identical topics fropm the same device, but I do not really care.

Can we achieve this

I just switched a bunch of my sensors from code I wrote a couple of years ago to ESP Home and I’m getting these errors from temperature and motion sensors.

I pretty much used the example ESPHome code. I don’t see anything about IDs anywhere. What exactly do I need to change?

Thanks,
-Mike

You need to make sure your sensor names are unique across all of your devices. If you’ve used the same code on multiple devices, your names will be the same. So where you have something like:

sensor:
  - platform: dallas
    name: "Temperature"

…that name must be unique, so perhaps “Orangery temperature” for one device, “Ballroom temperature” for another.

Why are you using MQTT with ESPHome rather than the API?

I take that back partially…
I have a couple of Sonoff’s running ESPHome, and the example had:

switch:
-platform: gpio
pin: GPIO12
id: relay

I guess I need a unique name there?

In the docs I see:

Example configuration entry

sensor:
-platform: homeassistant
name: “Temperature Sensor From Home Assistant”
entity_id: sensor.temperature_sensor

So should it be

id:

or

entity_id:

How are they different?

And since the docs also says of the “This entity does not have a unique ID?” error

Typically, you’ll see this when you create entities manually using YAML

Maybe I’ll just try some things…
Thanks,
-Mike

The platform: homeassistant entry is reading data from HA, and is not your problem.

It is the name or id of each ESPHome sensor or switch that must be unique. Note that the “This entity does not have a unique ID” is not the same error as the subject of this thread. What is the exact error you’re seeing?

Please see rule 11 when posting code.

I’m using MQTT because all of my automatons are in Node-Red and were written for my sensor code which used MQTT for everything.

-Mike

OK, I was (and still am) confused about entities. Virtually all of mine have the “does not have a unique ID” and can’t be edited or used for anything. Different IDs.

Calling the ‘id’ ‘name’ in the yaml was my confusion.

I didn’t know about the ‘…’ for quoting text instead of the blockquote.

Thanks again,
-Mike

Did you find solution for this? I would also like to have multiple esp32 to monitor all my bluetooth sensors.