What is the preferred way to rename z-wave entities?

It’s Ok if you just want to rename one entity of a device but seeing as above they sometimes create 13 entities per device it quickly becomes an exercise in tedium to sit and rename 250 entities when you could have the same end result in just 20 entries in the z wave control panel.

I hope the devs see these complaints and take them into consideration.

4 Likes

I’ve tried to stop HA, edited manually the zwcfg xml file (changed the name="" on the first line of each node), restarted HA and… it worked!
I don’t know if this will have side effects, but everything seems to be working for now.

1 Like

There’s another problematic scenario - sometimes those devices create new entities after a while (depending on configuration parameters, for example, but I’ve also seen this happen spontaneously). Without rename node, I’m assuming the newly created entities are going to have a generic name and will be hard to match to a specific node.

I’ve got the same problem with the 0.77 release. The only “consistent” way I’ve found to have entities automagically created with the correct name is to rename it in the XML. I used to rename it in the Z-Wave control panel, delete the registry entries, and restart HA. It doesn’t look like the latter is possible after the update.

1 Like

Thanks for the info.

It’s a more inconvenient than doing it the old way but at least it’s an option.

Yup, as of 0.77 the only officially supported way to change any entity’s ID is through the UI. This is because the old entity_registry.yaml file is gone, and replaced by the new storage module.

That said, the storage module uses JSON formatted files in .storage/. You can still manipulate this file with Home Assistant shut down - but as with anything else, if you introduce errors you’ll potentially break HA. I’d highly advise using sites like JSON lint or tools like jq to validate any changes before you try starting HA.

This approach of course isn’t supported :wink:

On the plus side JSON is easier to modify than yaml :stuck_out_tongue:

That’s debatable! Depends on what you’re used to.

not having to worry about spaces is a plus :stuck_out_tongue:

So there’s no way to do it without the UI?

I’ve recently started using HA, and set up all of my automation/configs in a git repo using Ansible to deploy them to my rp3. It’s nice, because I don’t need to depend on backups of the HA instance - if something goes wrong, just rebuild it. Something broke? Check the git logs, all the changes are recorded. Fix it and redeploy.

1 Like

As I said:

1 Like

Whewre do you see this diaolog

Select the image symbol next to the entity in the <> menu, under Developer Tools.

This feels very broken - just tried adding a new smart switch - 1st one post the changes…

  1. Node as added was: Aeotec ZW075 Smart Switch Gen5 as zwave.aeotec_ZW075_Smart_Switch or some such in registry
  2. For all my previous nodes (pre changes) I would then go into Zwave config and issue a rename for the node to something like: “Kitchen Smart Switch”
  3. I would then shutdown HA - remove registry.yaml and restart
  4. Zwave would initialise and registry.yaml would rebuild itself and discover the new devices with the correct (base) name “Kitchen Smart Switch”
  5. Just tried this the new way - opened the above dialog for the new name and overtyped the entity id with: zwave.study_smart_switch - I got some error message (didnt capture it)
  6. I now have a node called “zwave.study_smart_switch” in HA with status UNKNOWN
  7. In zwave panel Its still called Aeotec ZW075 Smart Switch Gen5 (Node 23)"
  8. All its sensors etc are still called: switch.aeotec_zw075_smart_switch_gen5_switch, sensor.aeotec_zw075_smart_switch_gen5_power
  9. I can see this getting very ugly very quickly with suffixes being added as a I add each new switch

What should be happpening here IMHO - If I rename the entity id of a zwave node then the zwave rename function should be being used to rename the base node. Then HA should drive a rediscovery from ZWave to pick up the new names for all the child entities. Pretty much what I used to do manually.

2 Likes

I can confirm that I am NOT also posting as @cannfoddr! :wink:

But I couldn’t have said it better myself! :smile:

1 Like

For now might it be better to delete the new node just added and clean up the mess…

The just like the good old days…head over to OZWCP - do the node add secure and the rename…then bring the config files back to HA and do a restart with the new OZW config?

1 Like

I’ve decided to install a standalone version of OZWCP and try my hand at manipulating the devices with that but I haven’t had any time to play with it or had the need to add any zwave devices yet.

If I get a chance to do anything with it I’ll post my results. Hopefully I don’t brick my zwave network! But I’ve got backups of everything if things do go south.

Docker is the way to go for these type of things. I run HA in a docker with all the config files mounted from my NAS. When I switch to OZWCP i just flip the docker images and point to the same config.

agreed.

I already have OZWCP installed in a docker container but just haven’t had time to use it yet.

I am quite new to home assistant, but do I understand this correctly:
All configuration is done through files except the naming of z-wave entities which has to be done through the ui?
Also this has to be done for all Z-Wave entities and then for the corresponding sensor entities, too.