.76.1: z-wave node rename is gone, is there functionality to replace it?

There used to be a button in the z-wave control panel to rename the raw zwave device. This would help differentiate between multiple z-wave devices with the same name (door_sensor1, door_sensor2, etc, you could rename to “front door”, “garage door”, etc). It’s now gone. Is this functionality removed? I’m not adding any z-wave devices at the moment, but if they all start getting entered like this in the future, that’s…kind of annoying.

Note that the entity registry will fix the HA-facing stuff; you can rename the zwave entity to anything. But since that doesn’t affect doing lower level z-wave network manipulation (show nodes, heal nodes, test node, etc), this seems to be a bad thing, especially when you have a large number of z-wave devices that are the same. Or did the node rename functionality go somewhere else?

Some of the comments on the release notes mention this directly (see here comments from user mnl​1121 and finity here: https://www.home-assistant.io/blog/2018/08/17/release-76/) allude to the issue.

Addendum: this thread (What is the preferred way to rename z-wave entities?) seems to discuss it, but it’s not clear how you can name a z-wave node to something specific (like “zwave.front_door” and have all its sub-enties show up as “sensor.front_door_access_control” and “sensor.front_door_alarm_level”) without renaming them all manually. In that thread, TaperCrimp explains a very common method of how z-wave nodes were renamed to have all their sub-entities named accurately but that functionality has disappeared or moved.

It seems like you might be able to do this by renaming the z-wave device node and deleting all the sub-entities, so it re-populates based on the renamed node. Has anyone tried this?

I understand the need to push all entity editing into one place, but sometimes I feel like the developers aren’t on the same page as the people actually using this stuff.

So I did some tests for people stumbling upon this going forward:

  • Renaming the “name” field of a z-wave.(entity) device in the GUI will properly update what it looks like in the z-wave control panel. So that’s one giant step in the right direction and replaces the functionality of the “rename node” command that was removed.

  • Under the hood you can do the same thing: stop home-assistant, rename the device’s “name” key in .storage/core.entity_registry, and that will also rename the device in the z-wave control panel once you restart.

  • Renaming the device’s “name” key does not change any of the subsequent sub-entities. You’re going to have rename those all one by one. Annoying, but you had to do that any way in the previous release with the way the entity registry worked.

  • Renaming the device’s “entity_id” key also has no effect on sub-entities.

I’ll probably go and edit the https://www.home-assistant.io/docs/z-wave/entities in the near future with details from the first bullet point so this is less confusing for pretty much anyone working with z-wave nodes.

For the last three bullet points, none of the keys are documented in end-user docs and I doubt the developers want this in the end-user docs wiki (I’d drop it in otherwise) as the core.entity_registry file is something we’re not supposed to edit, but I’m guessing anyone who likes to actually organize their z-wave network / devices properly will need this info to get it in order.

1 Like

Yes, I think you saw in other threads how happy I am with this (imho, stupid) functionality change. :roll_eyes:

I’m actually looking at running another OZWCP in a docker container to try to manipulate my z wave stuff from there. I’ve been busy and haven’t had a chance to get it set up and running yet. Hopefully, I don’t break my HA in the process.

I really don’t see why this had to go this way. It makes no sense to me whatsoever.

@lidocaineus @finity my work around was to use the “zwave.rename_node” dev service it requires an additional reboot to update entity registry and sub entities of a node but works for me.

2 Likes

Oh, so the rename_node service still exists but they took the functionality away from the z wave control panel? That makes even less sense now.

Maybe they missed that part. that likely won’t last now that you’ve mentioned it. :wink:

Holy crap, you’re right, it’s still in there. Good on you dude for finding that.

These changes wouldn’t make me so grumpy if they actually documented the changes as to more than a single line in a release note.

The docs often lag behind changes because the developer doesn’t know every page that references the functionality. It just means that we (the community) get to do cleanup :wink:

The customizing docs now explain how to change entity IDs for all supported entities.

I’d expect that eventually the rename node service will go away, probably around when the new device model is introduced. As I’ve mentioned in a few threads here and on Discord, currently Z-Wave doesn’t fit the way the rest of Home Assistant does things, and the developers are trying to make it more seamless. That will mean a few changes like this along the way, where the functionality moves in line with everything else.

But unfortunately (as I’ve mentioned in a few threads here too :wink:) ) it doesn’t ACTUALLY make it more seamless. I will grant that it makes it more consistent but that shouldn’t be the only goal. Ease of use and functionality should be the obvious ultimate goal.

Z wave also doesn’t follow the NORMAL device integration, either. Not when it adds many entities per device (as we’ve seen elsewhere up to 13 or more per device) so forcing us to have to rename 13 (or more…) entities manually instead of just one device is a BIG step away from ease of use JUST for the sake of consistency.

Perhaps this could be a gentle reminder that as HA grows, docs and/or transparency are really important? It seems like with each release there are a number of posts that follow immediately about something that was buried in the release notes. I know there are links to PRs, but stuff like the pyozw upgrade and its implications were kind of glossed over, and the z-wave interface changes weren’t mentioned at all (or are buried somewhere).

The only reason I figured out most of the stuff was looking at the source and doing a bunch of testing; that’s really hard for anyone who hasn’t followed the code at all, and impossible for a lot of people who are just users. I know HA likes to iterate at a breakneck pace and I’ve accepted that, but… I dunno, there’s a bit of a disconnect between that and users. Maybe time for a “stable” branch? That’s an entirely different discussion though.

1 Like

Can tell me how to change the Z-wave node name in the Z-wave config panel?

I’ve added a new node. It’s added and visible in the controle label dropdown with the name “FIBARO System FGD212 Dimmer 2”.

What I’ve done. I’ve added the entity that switched the light to of my groups and rename the Name and Enity ID’s. As discussed in the podcast. https://hasspodcast.io/ha033/ at 07:40. After this the enity has the right name and can be used in Node-red for example.

The problem is that rename action does not affect the main Z-wave node name. When I open the Z-wave control panel it still displays the old name “FIBARO System FGD212 Dimmer 2”. So as discussed above I hardly rename the entry in core.entity_registry and changed the name of the node and restart HA.

        {
            "config_entry_id": null,
            "device_id": null,
            "entity_id": "zwave.fibaro_dimmer2_hal",
            "name": null,
            "platform": "zwave",
            "unique_id": "node-18"
        },

Sad to say but after restarting the Z-wave config panel still displays the old default name. I’ve also stopped HA, start Domoticz en renames the names etc in the build-in OpenZwave config.

Anyone any suggestions? I’ve 15 more Fibaro dimmers to build-in. So I need to give them a logical name. :slight_smile:

Scroll up, read the rest of this thread which is about that functionality being removed

Instead, read the documentation on how to change the entity ID.

Note that the entity ID and the friendly name aren’t related. You need to change both of those, using the instructions in that link.

And while you’re at it you have to remember to change the friendly name and the entity_id of all the 13 other entities that get created for EVERY ONE of those 15 z wave devices that you still need to install.

By my calculation, if you change them all, that’s 390 entries that you will have to manually type in to properly organize your system. :roll_eyes:

Or in the old system (that worked perfectly well) the number of entries you would have to have changed was 210. That’s almost twice the amount of work just to end up with the same result as before.

I can’t understand why no one that cares can see why this is not good.

3 Likes

Yeah I’ve already read that information above. I can’t find a method to rename the Z-Wave Nodes in the Z-Wave control panel. In the past I did that using the Rename option in the Z-Wave control panel and after that renaming the entities in entities.yaml. That last I can do with the new .storage folder, but there’s no methode to rename that Z-Wave node names in the Z-Wave control panel.

Correct. As I said, that’s what this whole thread is about. Home Assistant had two different UI approaches to changing the entity ID (and display names). Now it has one UI method for consistency - as explained in the documentation.

For anyone looking for a solution to renaming nodes (as many people in this thread have requested), the above advice to use the service zwave.node_rename worked for me.

Here’s a dumbed down explanation for dummies like me who took a while to understand how to use the service.

  1. Under the “services” developer tool, (frontend lefthand menu, 1st icon at the bottom) select the Service

    zwave.rename_node

  2. Under the Service Data, input the following:

    {
    “node_id”: “enter_node_id_here”,
    “name”: “Enter_new_name_here”
    }

Note:

  • The node_id is a numerical digit (visible in the Zwave Configuration in parentheses under “nodes”, and also as an entity id attribute)
  • The new name shouldn’t include the zwave prefix; just enter a new name.

I didn’t have to restart home assistant for the changes to occur - they were immediate.

8 Likes

Does this still work? I’m trying to update some misnamed nodes using a service call, but HA gives me a JSON Invalid message, so I cannot click Call Service. Trying to rename with:

{ “node_id”: "40", "name": "side_door_light" }

check your quote marks. At least the one’s on the node-id are the “fancy” non-text style.

try this instead:

{ "node_id":"40", "name": "side_door_light" }

if you look closely you’ll see the difference.

2 Likes

That did it, thanks!

@tismondo Thanks for this. It saved me a tremendous amount of hassle. I know its a pain to put the effort into documenting after having spent all this time figuring it out in the first place, but your effort has helped me a lot and I’m sure many others.

*Also worth mentioning is that once you have renamed the node, if you stop and restart the z-wave network it will rename all derived entities off the node using the new node name.