MQTT mixes entities from several devices into one

Hi all,
I’m using MQTT discovery to add sensor data to HA. I just added a new device and it somehow got “merged” with one of the previous devices. The device is called " Temperature sensor Floorheat", and I’ve pasted the MQTT debug info for two of the entities below. The first, “bedroom temperature”, previously was in a device called “Air quality sensor Bedroom”, like its discovery payload says it should be, but now it’s in this new device. Can someone explain why this is happening and how to fix it?

Air quality sensor Bedroom Temperature (sensor.air_quality_sensor_bedroom_temperature)
MQTT discovery data:
Topic: homeassistant/sensor/Bedroom/ROOMTEMP/config
Payload
unit_of_measurement: °C
state_class: measurement
expire_after: 95
device:
  suggested_area: Bedroom
  model: XBee air quality sensor
  identifiers:
    - Air quality sensor Bedroom
    - 0x13a20040939ce7L
  manufacturer: Patrik
  name: Air quality sensor Bedroom
device_class: TEMPERATURE
state_topic: homeassistant/sensor/Bedroom/state
value_template: '{{ value_json.ROOMTEMP }}'
unique_id: Bedroom_ROOMTEMP
name: Temperature
platform: mqtt
Subscribed topics:
homeassistant/sensor/Bedroom/state
10 most recently received message(s)
Transmitted messages:
Temperature sensor Floorheat 28AAFF014C1401C8 (sensor.temperature_sensor_floorheat_temperature_10)
MQTT discovery data:
Topic: homeassistant/sensor/Floorheat/onewire_28AAFF014C1401C8/config
Payload
unit_of_measurement: °C
state_class: measurement
expire_after: 95
device:
  model: DS18B20
  identifiers:
    - Floorheat
    - 0x13a200423b842bL
  manufacturer: Dallas
  name: Temperature sensor Floorheat
device_class: TEMPERATURE
state_topic: homeassistant/sensor/Floorheat/state
value_template: '{{ value_json.onewire_28AAFF014C1401C8 }}'
unique_id: Floorheat_onewire_28AAFF014C1401C8
name: 28AAFF014C1401C8
platform: mqtt