Missing unique ID

Hi everbody,

first of all - great project and great community, thanks for all that.
I am experiencing problems with my recently started homeassistant installation, I am new to homeassistant (switching from pimatic with all my devices) and am trying to configure my first instance.

I am using

  • Phoscon deCONZ (installed via “integrations”)
  • mysensors (installed via configuration.yaml)
  • rflink (installed via configuration.yaml)
  • maxcube (installed via configuration.yaml)

actually all four integrations work as expected, all my devices were discovered automatically and I can control them. Great!

The problem i am experiencing starts when trying to customize my overview page. All devices have “strange” names like “unitec_c186_02” or names extracted from deCONZ, mySensor nodes and the maxcube, which I would like to change into the actual name the device is for (e.g. Light Livingroom). The only devices (entities) I can rename are the ones from deCONZ. All other entities show up with the note “This entity does not have a unique id, settings therefore cannot be changed from UI” (roughly translated).

I read a lot about it and found out, I can’t set the unique id myself, which is a pity. Now is there any possibility to use “nice names” for my automatically detected entities (which obviously do not show up in configuration.yaml or anywhere else where I could change the name). My preferred solution would be to rename them in the UI as I can do with the deCONZ entities. If I have to change the integration of mysensors, maxcube and rflink then will do so. I already tried to add a “unique_id” for discovered rflink devices when presenting them onto the event bus, but I wouldnt get it to work.

Can anybody advise please or point me into the right direction?

Thank you very much
hofaa

The integration has to support unique_id - you can’t do anything if it doesn’t.

Many manually (YAML) configured integrations support giving them a name. Check the documentation to see. A quick glance at the docs for rflink and mysensors suggests both of those do.

You can play with the friendly_name attribute.
You can configure it in several ways:

  • via customize UI:
    http://ha_ip:8123/config/customize
  • via customize file:
  customize:! include customize.yaml

For my rflink switches :

  - platform: rflink
    device_defaults:
      fire_event: true
      signal_repetitions: 2
    devices:
      eurodomest_227e06_06: 
        name: deurbel
      ev1527_0089e9_06:
        name: garagedeur
      ev1527_0d0886_08:
        name: fire_alarm
      ev1527_095e46_08:
        name: rfikeaswitch1
      ev1527_095e46_04 :
        name: rfikeaswitch2
      ev1527_095e46_02:
        name: rfikeaswitch3
      ev1527_095e46_01:
        name: rfikeaswitch4
      newkaku_03a0b810_1:
        name: flamingo1
      newkaku_02aba400_2:
        name: switchkamerschuindak
      tristate_85562a_1:
        name: impulsb
      tristate_8554aa_1:
        name: impulsa
      ev1527_0ff398_08:
        name: switchlichteetkamer
      selectplus_00633b_02:
        name: selectplus  
      newkaku_03a0b800_2:
        name: bovenTV
      newkaku_03a0b800_3:
        name: bovenProximus
      newkaku_03a0b800_4:
        name: bovenVentilator
      newkaku_03a0b800_5 :
        name: bovenrflink

Hi Tinkerer,

thank you very much, I understand the integration has to support it, and I also tried to change the python implementation of rflink to provide a unique id, which has to be pretty simple in my opinion, since it only fires an event on the home assistant event bus. So the new entity is actually added by homeassistant itself, it just “forgets” to give it a unique id. Adding unique_id or anything to the event did unfortunatelly not solve this. I couldnt find any documentation for “how does a unique id have to be implemented into events on the event bus”.

@Tinkerer and francisp: I see rflink supports names, but not if the entities are discovered automatically (unless i add them by hand into my configuration after discovering them). But maxcube doesn’t support names or at least it’s documented how the syntax would look like.

@javicalle: Thank you that helps to customize my names so far and I will have a closer look at that now. It’s a pity that the straightforward way of clicking onto an entity and changing the name does not work that way. I wish there was a way to contribute to amend the implementations to support unique ids.

Thank you all!
hofaa

I made an attempt to add the unique_id attribute to the RFLink devices, but after a while I made a real trying to rebase my branch and finally I close the PR.

Thank you very much for pointing that out, i’ll look into that