Skip to content

HA Entity ID Derived from "Friendly Name" #340

@this-user

Description

@this-user

Describe the bug

When adding a new HA entity of any kind, there are options to assign a name, server, device, and type in the upper half of the menu. In the lower half, a "Friendly name", icon, entity picture, category, and device class can be set.

The assumption would be that "Friendly name" is what is being displayed as the entity name to the user when looking up the entity in HA, and that the "Name" will be used as part of the actual entity ID.

However, while the "Friendly name" does show up as the displayed name, the first "Name" setting is apparently ignored, and the entity ID is instead derived from the "Friendly name". E.g. if the name for a switch entity is set to "Manufacturer Device Type 101 Switch 3 and friendly name is set to "AV Receiver Mute", then the device ID will be "switch.av_receiver_mute" instead of "switch.manufacturer_device_type_101_switch_3" as intended.

The result of this is, when you are setting up a lot of entities in Node-RED while trying to name them systematically, that you have to use overly long and complex friendly names as the other setting is simply being ignored.

To Reproduce

  1. Open Node-RED GUI in HA
  2. Create a new flow
  3. Add any kind of entity
  4. Configure the entity with different name and friendly name
  5. Save the entity
  6. Deploy the flow
  7. Look up the newly created entity in HA

Expected behavior

Friendly name would be the displayed name while "name" would be used as the internal name from which the entity ID is derived.

Screenshots

No response

Example Flow

[
    {
        "id": "6f8e893b1dde133d",
        "type": "tab",
        "label": "Flow 1",
        "disabled": false,
        "info": "",
        "env": []
    },
    {
        "id": "70cbbb1654bd79f9",
        "type": "ha-switch",
        "z": "6f8e893b1dde133d",
        "name": "My Test Switch",
        "version": 0,
        "debugenabled": false,
        "inputs": 1,
        "outputs": 2,
        "entityConfig": "ae0f5547a498cbe0",
        "enableInput": true,
        "outputOnStateChange": false,
        "outputProperties": [
            {
                "property": "outputType",
                "propertyType": "msg",
                "value": "state change",
                "valueType": "str"
            },
            {
                "property": "payload",
                "propertyType": "msg",
                "value": "",
                "valueType": "entityState"
            }
        ],
        "x": 520,
        "y": 320,
        "wires": [
            [],
            []
        ]
    },
    {
        "id": "ae0f5547a498cbe0",
        "type": "ha-entity-config",
        "server": "527e0002.9e78",
        "deviceConfig": "d2e0a04f4e8aa77a",
        "name": "Node-RED Test Device 101",
        "version": 6,
        "entityType": "switch",
        "haConfig": [
            {
                "property": "name",
                "value": "Node-RED Test Device 11011"
            },
            {
                "property": "icon",
                "value": ""
            },
            {
                "property": "entity_picture",
                "value": ""
            },
            {
                "property": "entity_category",
                "value": ""
            },
            {
                "property": "device_class",
                "value": ""
            }
        ],
        "resend": false,
        "debugEnabled": false
    },
    {
        "id": "527e0002.9e78",
        "type": "server",
        "name": "Home Assistant",
        "addon": true,
        "rejectUnauthorizedCerts": true,
        "ha_boolean": "",
        "connectionDelay": false,
        "cacheJson": false,
        "heartbeat": false,
        "heartbeatInterval": "",
        "statusSeparator": "",
        "enableGlobalContextStore": false
    },
    {
        "id": "d2e0a04f4e8aa77a",
        "type": "ha-device-config",
        "name": "Node Rest Test Device",
        "hwVersion": "",
        "manufacturer": "Node-RED",
        "model": "",
        "swVersion": ""
    }
]

Environment Information

Home Assistant OS: 15.2
Home Assistant Core 2025.6.x (happens with all of them)
Supervisor: 2025.06.2
Node-RED Addon: 19.0.2
Node-RED Companion: 4.1.2 (installed with HACS)

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions