[HOW TO] Best practice in "Device Naming"?

I’ve come to the point where I have a lot of devices. It irritates me how inconsequently I’ve been when naming my devices.
image

It got me thinking: Is there a best practice on how to name your devices? I can see that there are many aspects that would influence your naming convention, but what would be a great standard to start out with?

This could influence your device naming:
The type of device: temperature sensor, rain sensor, smart plug, button, …
The zone it’s in: Livingroom, kitchen, bath, garage, …
What it’s controlling: Smart plugs controlling lights, ovens, motion sensors controlling lights, fans, …
The function/events it’s part of: Coming home, going to bed, going to work, …
There might be others I don’t think of.

When asking an AI for best practice, it came up with this to consider:
Keep it Simple: Avoid complex or “cute” names. The simpler the name, the less likely it is that your digital assistant will have trouble recognizing it.
Make it Meaningful: The best names are intuitive and easy to remember. They should give a clear idea of the device’s purpose.
Ensure Uniqueness: Each device must have a unique name. This helps avoid confusion, especially when using voice commands.
Use Location or Purpose for Groups: Name groups after the room in which they’re located or their purpose. For example, all devices in the living room could be grouped under “Living Room”.
Consider the Control Method: If you’re using voice control, two or three syllable names often work best. (is this correct/relevant in all languages?)

10 examples given:
Kitchen Light: A light located in the kitchen.
Living Room TV: A TV located in the living room.
Front Door Sensor: A sensor located at the front door.
Bedroom Plug: A smart plug located in the bedroom.
Bathroom Speaker: A smart speaker located in the bathroom.
Garage Door Opener: A smart device that opens the garage door.
Hallway Motion Sensor: A motion sensor located in the hallway.
Backyard Camera: A security camera located in the backyard.
Dining Room Thermostat: A thermostat located in the dining room.
Office Button: A smart button located in the office.
These names are simple, meaningful, unique, and easy to remember. They also give a clear idea of the device’s location and purpose. Remember, the most important thing is that the names work for you and make your smart home easier to manage.

Have to admit I was expecting a more complex outcome, but this far it looks like best practice device naming convention is:
{zone/location} {device type/virtual device type} like “Office Button”.

Would like to hear your thoughts on this?

1 Like

Great write-up, @mrPilloft!

The only thing where I divert from your approach: I do not add “Light” for lights.

Example: In the kitchen, there are three bulbs. It saves a lot of space keeping that term out, and since lights are almost the only thing to trigger via voice (Alexa etc.), it’s fine.

Cooker Hood – Left Light
Cooker Hood – Right Light
Kitchen Roof Light

Turns to:

Cooker Hood Left
Cooker Hood Right
Kitchen Roof

In the living room, this is even more important with 7 bulbs, 4 of them being in lamp.

1 Like

No, I fully understand this, and was where I found myself many times: the sense of stating the obvious and redundancy. No-one will police this so it’s fully up to each and everyone of us how to name devices, but it makes sense to have a grasp on best practice and then tune it to your liking. I’m gonna try to be a “purist” for once :- ) (sticking to the best practice).

1 Like

I was thinking why is there a need to put the zone name in the device name (initially seemed silly to me, since that’s what the zone is for). However I think you have to put the zone name in, if not then, for example, when searching for a device you just get a load to devices returned with the exact same name. Wish there was a way that Homey always showed the zone in those instances.

Well, there are parts where the zone is shown as well,
But it’s a bit annoying this is not implemented in general.

This shows the zone:

.

But this doesn’t:

1 Like