Since there is no way to order your devices on the smart things app, how do you guys organize things? Do you have naming conventions on your devices like ‘Motion - Front Door’ or ‘Light - Family Room’? I have 30 or so devices now and it is getting difficult in the app at this point. Hopefully they add some features that allow it to be organized but until then…How do you organize/group all your devices?
Typically room and then device. So, “Living Room Lamp 1” or “Bedroom1 Ceiling Fan Light”
Once your device count grows even larger, you may opt to use the Rooms tab more than the Things tab. I tend to avoid the Things tab as it takes so long to load (for me).
I typically name things “Room Device” and sometimes an extra description in between. So something like “Kitchen Light” and “Kitchen Table Light”.
I think about how I would naturally say it with voice commands.
Now since I have it integrated into Siri and Alexa it imports the names and I don’t have to change anything in either of those systems. I manage the naming all in smartthings.
Bedroom1, Bedroom2, etc. has proven to be a little troublesome for me when it comes to voice commands…
However, “Room” “Device” works great.
Master Bedroom, Guest Bedroom, Boys Room, etc.
Fan, Light, Table Lamp, Can Lights, Heater, etc…
If there are two of the same type of device in 1 room such as “Door” or “Light,” I deploy the “by what-where” in between method…
Kitchen Island Light
Kitchen Sink Light
Kitchen Can Lights
Kitchen Cabinet Lights
Kitchen Closet Light
Kitchen Table Light
It’s also a little unnatural to say, “Alexa, turn off Bedoom1 Light”
I rather refer to who’s Room…
“Alexa, turn off the Boys Room Light”
I organise mine a little differently in ST and use ‘groups’ for Alexa
I group mine by device then location
MS1 - Hall = Motion sensor in the hall
MS2 - Lounge = motion sensor in lounge
HW1 - Hall = Hue White bulb in the Hall
HC1 - Lounge = Hue Colour bulb in the lounge
I also have a label machine which marks each device e.g. MS1, MS2, MS3 etc…
In SmartThings this groups the devices all together in type then numerical order
When using Alexa I create a group (which includes the amazon device which I have in just about every room)
So an alexa group Called ‘Lounge’ might have an echo, MS1 ,MS2 , HC1, HC2.
This might sound complicated but using groups that contain the Alexa device I walk into the room and say "alexa, turn the lights on"
If I’m not in the room I can still say ‘alexa, turn on the lounge lights’
Works for me
There are some existing threads on this topic already. It’s interesting to see how much the recommendations have changed from, say, 2015 to 2017, because they did change.
As others have noted, it makes a big difference if you intend to use a voice assistant or not, and if you do, which voice assistant.
The echo groups available for the Amazon voice assistant makes it very easy to change names to be whatever you want them to be for voice usage. So you can have two sets of names, one used for voice commands and one used in SmartThings.
Google Home has some second name options, but they don’t work quite as well because it does still pay attention to the other names when it’s searching for which devices to turn on or off.
In HomeKit you can try renaming the devices, but they tend to keep bringing in the old names so it gets complicated.
I don’t know what Bixby does.
If you aren’t going to use a voice assistant, then I agree that including the room name in the device name is probably what most people do.
But if you use Google Home, that can create some issues where google home then turns off more devices than you intended because of the shared part of the name.
So a lot depends on your own specific set up, and in particular whether you are going to use a voice assistant or not.
When I got Alexa, I noticed immediately that there were naming issues.
I quickly made the effort to rename all my devices in SmartThings.
Here’s my operating premise: SmartThings is for automation of connected devices, while Alexa is for extemporaneous Voice control of connected devices.
So in automation, let’s say you have a smart plug. You can call it “Living Room Lamp Plug”.
Or you can call it Fred.
Or you can call it LRZZSP1 (living room zigbee Zwave smart plug one).
I call it something like the last example. You can’t say that to Alexa and have it do anything, but you can certainly craft all your automations using that naming protocol.
Btw, in renaming my devices I found there was no value in assigning them to rooms. I don’t use rooms in my automations at all really. For contact sensor X being opened in room 1 to turn on light L in room 3, does ST have any need to know what rooms those devices are in? Answer is NO.
So all my rooms in SmartThings are gone.
I made rooms in Alexa. Making a Living Room in Alexa became a piece of cake once Living Room was gone, and therefore no longer accidentally discoverable, in SmartThings.
And so when Alexa discovers LRZZSP1, I can assign it to the Living Room in Alexa.
And in Alexa, I can call it “Corner Lamp”.
And I can say to any Echo Dot in the house ”turn off the corner lamp” and it will turn off that lamp.
And then when I tell the EchoDot in the Living Room to “turn off the lights”, it finds that lamp among the others and turns it off.
This reorganization has resulted in near-elimination of Alexa’s “many things share that name. which one did you want?”
Btw, the ‘room’ concept in ST does have some value… but from a different standpoint. For a contact sensor to trigger an event, the rooms of neither are required. Example would be security. I would want ANY window/door sensor to trigger an alarm under certain conditions, for example.
But if I’m walking out the door and my system has an audio report function of open windows/doors, I certainly want to know which room has the open status so I’m not going to every room. For that report, I have created virtual/simulated contact sensors that combine all the sensors in one room into one virtual sensor for that entire room. It’s time consuming to go to every room, but I do not have 20 windows in any room so all I need know is the room in which the open exists.
Note that I can’t use ST’s room assignments to do that report; I had to make those virtual contacts anyway.
What do you do when coding in SmartApps or Webcore? How do you keep it straight mentally while writing them?
My ST naming convention has logic to it. For example, my living room has three windows across the front. Therefore, using direction as a parameter:
WLRE WLRC WLRW
Window - LivingRoom - East, Center, West
I think this is really the most important point. You need to be able to remember what the device name is at some point. But there are different points and people have different ways of remembering.
Types of Memory
When you’re coding is one issue, although some people would say they can just look things up when coding, so that’s reference.
Then there’s recognition, when the names are presented on a dashboard like action tiles or in the mobile app and you need to realize what each icon is.
And finally there’s recall, such as when you are giving a voice command, and you have to know what to say without having any clues.
Different households will rely on these to a different extent, and you can also have two people in one household who remember things in different ways.
As @Glen_King points out, if you have Amazon Alexa, you can have two completely different naming conventions, one for within SmartThings and one for your spoken commands. That will be great for a lot of people. But if you also want to use it with Google home or a dashboard then the names used in SmartThings become more important again for recall and recognition.
I guess I feel that these days because we have so many more choices in UI, we also have a lot more choices in naming conventions because different things are going to work for different households.
At my house
For what it’s worth, at our house, now that it’s 2018, we take a different approach. All of our devices work with both HomeKit and Amazon Alexa. Most of them also work with SmartThings. So because HomeKit is both a dashboard and a voice interface, we start by defining a name in terms of HomeKit and what will make sense on the dashboard.
Then we may add a separate set of names for use with echo. I think I’ve mentioned before that we have a small room in the house that doesn’t get used much. I call it the office, one of my housemates calls it the study, and The other housemate calls it the den. We all know what the other guys mean, but that’s the first thing we say.
So with Alexa, we just set up three groups, one for each of those names, and that way each person uses the one that is the most natural to them. But if they look at the HomeKit dashboard and they see one of the other two names it still makes sense to them, because it works for recognition, The same as it would if one of the humans in the house said that other name.
We also ran into an odd restriction: our smoke alarms have a voice alert which tells everyone what room a fire is occurring in. But you can’t just make up your own room names. You have to select them from a predefined list, I think because they want to make sure it’s clear. This meant we had to use, for example, “office” Instead of “study” because office was the only option that the smoke alarms had.
Because we want to make sure that everyone responds immediately if the smoke alarms do start talking, we wanted our dashboards to match the smoke alarm room names.
Other households might have other system integrations with similar restrictions, such as video doorbell systems or security systems or medical alert systems or even camera systems. Some will allow you to rename rooms in zones, but they may still require that you choose from a predefined list.
So I think at this point home automation device name planning should start by identifying how you are going to use the device name.
do you have a voice assistant, and if so, which one(s)?
Are you going to have a dashboard? Will be you be using the mobile app a lot? If so, you have to take that kind of recognition memory into account.
Are you integrating with other systems that may have restrictions on room or device names?
The answers to these questions will be different for different households, and may significantly change the way in which you choose the names for devices for your own house.
If it were not lame or plagiarism I’d copy and paste @rontalley 's description of how he does it as it matches mine. With somewhere between 150 and 200 device names to remember I cannot, and do not want to, learn custom names for each device in the house. Therefore the vast majority of my devices are called “Room Name Descriptive Device Name”.
Living Room Table Lamp
Kids Bedroom Dehumidifier
Kitchen Sink Light
Master Bedroom Fan
The idea is that it is easy to remember the room names, and it is easy to remember standard descriptive names for devices… table lamp, fan, light, etc
Naming each device with a natural name helps a lot when importing them into other systems such as Alexa. I really do not want to have to rename stuff in Alexa especially with the obnoxious new app (large boxes for each device!!! works for 4 devices, not for a few hundred!).
I do have some devices that do not follow the standard as they are unique… We have a dehumidifier on wheels that I can move where needed so that device is simply called “Dehumidifier” as it doesn’t live in a single specific room.
All of this works great with devices you an control but not so well with devices where you just want the status. For example, I had to name my 8 ecobee sensors as “Room Name ecobee Sensor” as asking “What is the temperature in the Media Room Ecobee Sensor” just doesn’t sound right, or “Set X temperature Downstairs Thermostat”… In both cases the descriptive device names would be better avoided but you can’t just use a room name as it causes conflicts in Alexa.
Other vendors limit the naming to room names from a list (ie NEST Protect) or don’t allow much room for customization (ie Sonos where they default to room name and something like “Living Room Sonos” is too long by 1 character!). It would be nice if all vendors kept in mind that homes will often have multiple systems so names can’t just be a room name.
Within the ST app, I do not use the Things tab as finding a device drives me insane… Takes too long to load and too long to scroll to the device. I use Rooms for existing rooms but I also use them to group devices that have something in common and that do not need to live actual rooms. The main reason is that I don’t want to have to go to multiple rooms to check on door sensors, leak sensors, smoke sensors, etc
In the last screenshot you can see the “rooms” that are actually only meant to group similar devices that don’t need to be in the actual rooms. This declutters the rooms and makes it easier to find the devices I need to control without too much scrolling up and down. The “Settings” room just has virtual switches I use to enable/disable webcore pistons.
My setup is almost identical to @aruffell. Devices named with Room Name - Device name, so they can be controlled via Alexa, and grouped into rooms for easier management in the ST App. I also have artificially named rooms to group things like mobile senors the Fibaro Dimmer 2’s which only exist (behing light switches) to control other Dimmer 2’s via direct association.
The one thing i’ve not quite sure I’ve got right yet is how the above works with the open plan Kitchen, Dining Area, Living Area we have. I’ve ended up with a Living Area room that contains the virtual switch to turn on the lights in the Dining Room and Living Room, with the Dining Room and Living Room containing their individual lights - it seems a bit artificial but does us control the two individual lights or both of them as a group.
I also have one bedroom which has a 3-smart-bulb ceiling light and a single virtual switch to control all 3 bulbs. So the individual bulbs are called Bedroom 3 Light 1, Bedroom 3 Light 2, Bedroom 3 Light 3 and the virtual switch is called Bedroom 3 lights.
I currently have all 4 of those things in the Bedroom 3 Room but that can confuse people so am thinking of moving the 3 individual bulbs to a new artificial room to hide them away somewhat so that only the virtual switch is in the Bedroom 3 room.
Yeah, once you get over a certain number of devices, naming becomes more critical. I agree, I just don’t have the time or patience to be regrouping over 200 devices in the Alexa App.
I actually had to make a Virtual Switch for most of my rooms called “Name of Room” i.e. Study Room
I have Pistons for each that say:
If any of the devices changes
If any of the devices are on
With Name of Room Turn on
Else Turn Off
If Name of Room changes to off
Then with all of the devices turn off
This allows me to quickly monitor if a room is active and to shut everything off in that room quickly. Also makes it easier to automate shutting everything off after a certain time of inactivity.
To take it a step further, each room has a Master Automation Virtual Switch that is the Name of Room Automation. I.e. Study Room Automation
This allows me to quickly bypass the automations in that room as the switch acts as a restriction for each Piston associated with that room.
I also experienced conflicts with my Ecobee sensors and Alexa. I simply gave Ecobee the names of Rooms. i.e. Study
Alexa, what’s the temperature in the Study?
I enabled the Ecobee Alexa Skill and used unconventional naming in the SmartThings App.
At the end of the day, it’s all about what works best for you.
@rontalley - Interesting idea to have a virtual switch telling you if anything is on in the room… To turn everything off in a room or area of the house I simply created a room in Alexa called “Everything in Living Room” and put all the devices I want to turn off (some are meant to stay on) so the command is simply “Alexa! Turn off Everything in Living Room” and it works perfectly but I can’t automate it doing it that way so I may explore your method as well.
@Paralytic - I have a similar case where my Living Room Table Lamp has two LiFX bulbs in it. I want to sync their color and brightness and status at all times. I have a piston that handles the syncing and a virtual device that I called “Living Room Table Lamp”. What I am suggesting is that you call your bedroom light simply “Bedroom Light” without any numbers. You might also want to call the bedrooms with a more descriptive name such as “Master Bedroom Light” rather than “Bedroom 1 Light 3”. This is more “voice control” friendly and sounds way more natural… unless it is a hotel with room numbers As for moving them out of the room so people don’t get confused, another option is simply to put the main devices at the top and the “slaves” at the bottom. I prefer to see the status of my 2 LiFX bulbs in the same spot as the virtual switch as automations sometimes have glitches… but it is pretty obvious what I need to control when the main devices are at the very top.
Note that the Living Room LIFX Bulb 1 & 2 breaks my naming convention as it has 1 and 2 in it but I do NOT expose those to Alexa as I do not want to control them individually. I only expose the virtual one so I can give one command that affects both bulbs.
Type / Location [/ Extra description]
Fireplace / Sunroom
Window / Sunroom / Northeast
Window / Sunroom / East
Decor / Deck
I’ve gone through a number of different naming schemes, but this is my current and longest running one. It keeps things nicely sorted in the
Things view and the IDE. It does make voice control kind of a pain, but others have already made good suggestions for that use case. Also, Google Assistant is pretty good at guessing what I mean when I tell it what to do.
It would be nice if there were some way to create the concept of a room with attributes such as light, fan, temperature, humidity, door contact, window contact, etc. This would enable controlling aspects of the room, or polling a status of the room without knowing or using the device names. For example you might have a “Toilet Leak Sensor” that also provides temperature. If you have a room called “Master Bathroom” with an attribute of temperature where the Toilet leak sensor is selected, then you can ask “What is the temperature in the Master Bathroom” and the assistant will know to read back the value from the Toilet Leak Sensor. At some point I had setup AskAlexa and Echosistant and one or both of them were able to read back values but you had to use the specific device name (at least at the time). Asking "What is the temperature in “Toilet Leak Sensor” just doesn’t work for me…
Amazon’s implementation of room that enables you to turn on a light without saying the full device name is just a very basic version of this. If you put more than one light in that room, it controls all of them the same way which is not what I would want. I wish they would allow to add all the devices in that room and then allow to configure the default device for light, fan, temp, rH%, etc.
I tried it that way at first but it became too hard to drill down on things in that Room in the D vice Page since Alpha-Numeric is on by default.
Does that work in webCoRE expressions? The / probably causes syntax issues?
Apart from hallway and landing, I got lucky with my room names, upstairs all start with ‘B’ (bedroom / bathroom), then external fell into ‘C’ to ‘G’ (courtyard / decking / floodlight / garage) and downstairs ‘K’ to ‘L’ (kitchen / living room)
I then append sensors and things I don’t need to touch much with ‘W’ ‘X’ ‘Y’ ‘Z’ ‘ZZ’ ‘ZZZ’ etc. to force them into an order at the bottom.
And I use images to help find things quickly:
Anyway, home automation is about automation, not remote control… I can stand up and flick a light switch quicker than pulling out my phone, loading ST, scrolling to the device.
With lots of sensors and automation rules, things should happen without you thinking about it, so no need to open the app all the time.
As the old saying goes “your use case is not my case.”
People with significant physical disabilities are early adopters for many home automation systems out of necessity. I can’t stand up, nor can I flick a light switch, Just as one example.
But there are also many able-bodied people who want voice control for convenience, but don’t necessarily want automated scheduling.
For example, we have lights on all four sides of the house. My housemate likes to have the lights come on on two sides at once when he’s going out into the yard with the dog at night. He appreciates being able to give a quick voice command to echo and have that happen.
I try not to make any assumptions about how somebody else is going to use their devices, I just ask them. Different things work for different households.
That’s why I think the first step in choosing a naming convention for a specific account is to start with how you are going to use those names. If it’s all sensor driven, you can just use reference memory and call them anything you want. If you’re going to use a voice assistant a lot, then you want to make that option work easily for everyone in your household. Choice is good.