Alexa vs. Multiple Homes setup

I’ve seen a number of posts trying to accomplish the opposite, but rather than merge multiple locations I am trying to separate them. So, here goes:

As many here, I have helped a family member living in another state to set up their home with ST hub. While they set up their own account, they sent me a user invite and now I have it show up as another location in my own account - which is really handy as I can switch a location and help them out whenever need comes up. However we have separate homes and separate Alexa integrations - but I noticed that on my account, I get both my and their devices listed - which, understandably, can get confusing.

As I see so far, my options are to either turn off “add all devices” and manually add every device I care about to Alexa (which is annoying as I add/remove devices from time to time, and it is guaranteed to be always out of date) or remove myself from their hub - which means I would have to ask them to re-add me every time there is a help request. I was hoping there is a middle ground - for example ability to say “add all devices from Hub(s) X”

Is there such an option - and is there a way to suggest this (seems like a pretty simple thing to implement, given that “add all” is already in place)? Anything else I may be missing here?

Thanks,

-M

1 Like

There are already multiple threads discussing exactly this in the foruns, usually reporting it as a bug, but the short answer is that at the present time you cannot restrict the devices by location.

See the official knowledgebase article:

Can I control multiple SmartThings Locations with Alexa?
.
No, not at this time. But we are working on an update that will allow multiple Amazon Alexa devices on separate Amazon accounts to control separate SmartThings Locations.

It may be that you didn’t understand the problem that people were describing in the previous threads until you tried it for yourself. But the point is that if you have more than one smartthings location on the same SmartThings account, the Devices that Amazon Alexa will present for smartthings control is somewhat unpredictable, but there’s no easy way to use only the devices at smartthings location A with echo device A, and only the devices at smartthings location B with echo device B If it’s the same smartthings account.

The workaround is to use a separate smartthings account (not just location) for each building, but I know that’s not what you wanted to do.

What I saw in my searches was people trying to control multiple locations from same account, which is not what I wanted at all(but something I am accomplishing anyway) - but it is probably failure to properly search on my part - sorry.

The ST accounts were set up independent of each other, however sending a user invite from one account to a user that is in my other account, seemed to automatically merged them and my user now sees the other account as a location on my account. However, the accounts are not fully merged as their users only see their location… writing this makes we wonder if the solution IS that simple. I wonder if I can create a dummy user for Alexa and only invite it to one location and then add that user to Alexa instead of my full user… going to try that…

Thanks,

1 Like

Let us know how it goes, but as I understand it, at present the integration is set up so that the authorization to echo is at the top account level. The integration doesn’t distinguish between secondary users and primary users. Or between one location and another.

It’s not simple to fix because the problem has existed for two years at this point and they keep saying they would like to change it, and they have made some minor changes, but the integration still does not separate locations so that they can be managed separately.

The usual “bug” that people have reported In the forum thread is that they have echo set up, it’s working just fine, they set up a new location such as a vacation home or a relative’s home, and suddenly It becomes unpredictable as to which devices will be controlled by which echo.

What they want to do after that, that is what outcome they would like to see, does vary from person to person, but the essential problem is the same. Once you authorize echo to access any part of your account, you can restrict individual devices, but you can’t restrict by Location.

But they do keep making changes to this, so give it a try and let us know what happens. :sunglasses:

Good news is that in my case I believe I accomplished what I needed to - i.e. separate Alexa for separate locations. Bad news is that I hit several nasty Alexa issues, but none that could not be solved.

Based on my experience just now, I suspect your assertion that the account linkage is not at user account level is not correct (perhaps things have changed) - and it does appear that the user account used for integration matters (which makes sense, as otherwise it would allow access to devices the user’s credentials would not have access to, which seems like a major security hole.)

So, this is what I did:

Where I started:

  • My main USER account was linked to both locations by virtual of invitation from secondary ST location.
  • My Alexa was linked to ST via my main user
  • My Alexa account saw devices from both locations

What I did:

  • I created a new ST user dedicated to my Alexa account
    • Useful tip - if you have Gmail hosted email, you can create new account without creating new email account by using the “+” character - so if you email is username@gmail.com - you can use "username+st-alexa@gmail.com" and it will arrive in same email box
  • Invite said new user to my location I want Alexa to see.
    • You can then confirm that this user can only see that one location by logging into the Graph API UI.
  • I then removed the ST Alexa integration skill from Alexa.
    • This is where Alexa threw me a curve, as it is supposed to delete the devices in the account, but it did not. I had to manually delete them one at a time.
      • Hint, this is REALLY hard to do one device at a time in the Alexa app, but much easier with Alexa Web App at https://alexa.amazon.com
  • Once all the ST devices are deleted, re-run discovery to make sure they are really gone.
    • Second curve was that somehow it can see my WeMo devices even though I do not have a WeMo skill, which duplicates the devices as I have same devices in ST hub, but that is all on Alexa and not relevant here
  • Then add SmartThinks skill again using the SmartThings Account dedicated to Alexa that I created in the beginning and re-run the discovery. Now, only the devices for this location are found and added to the Alexa

Hope this helps people.

-M

4 Likes

awesome write-up.

2 Likes

A bit confused. I really want to get this to work as I have two hubs in two locations both linked to my one Smarthings account. Only one location has Alexa enabled currently. I want to do this so I can have Alexa in the second home. Can you clarify to which accounts you are adding to what or are you creating totally new accounts? Sorry, this is just a bit unclear to me. Alexa accounts? Smartthings accounts. Simly inviting a different email to the smartthing location?

When I create an invitation to a second email address from the smartthings app for the location without Alexa enabled I get directed to loging the Smartthings web page and I get a 500 error? Am I even doing things in the right place. Sorry for being stupid…

1 Like

Not stupid, I can see how this can be confusing if you do not know what all the pieces are in this mess.

Quick breakdown - in SmartThings world there are users and locations(hubs). When you get your first hub, you create one of each - your “user” account (username/password - lets call this U) and a location (hub, lets call this H1). So far so good and relatively simple.

Then you get a second hub for another location - you just add it to your user account U as location 2 (lets call it H2) - Now U sees all the devices in both H and H2. Still pretty simple.

But say the at the location H1 you have your spouse, who you want to be able to use the app to control devices. SmartThings thought this through, since you are never supposed to share accounts, they allow your spouse to create their own account (lets call it S) and let you “invite” your spouse to control H1. Interesting bit here is that since you only invited S to control H1, they do not see any devices in H2.

In effect what we have here is what is referred to as a “many to many” relationship between users and locations - i.e. each user can have access to many locations, and each location can have multiple users controlling it. We will exploit this in a second for our needs.

Then you add an Alexa setup, and all hell breaks loose. Alexa, by its nature is really meant to be only in one location. But when you connect SmartThings to Alexa, you connect the Alexa service to a user, not to location - so if you add Alexa SmartThings Skill and configure it using account U - it will see all the devices user U sees - which means all the devices in H1 AND all the devices in H2. This is likely not what you want, as when you are at H1 and say something like “All lights on” - you do not want all lights in H2 to go on. Furthermore, H1 and H2 may both have similar device names (say “Living Room Lights”) - which will get extra confusing for Alexa.

But the solution to this is in the SmartThings ability to have multiple accounts. So, you create a new user account we will call A1, similar to your S account, and then invite it/link it to location H1 and then configure Alexa Skill in H1 to use that account. A1 only sees devices in H1 - so when you ask Alexa to turn on all the lights, only lights in H1 turn on and when you ask it to turn on “Living Room Light” - it will not try to turn on living room light in H2 as it has no ability to do so. If you want H2 to have its own Alexa setup, then all you have to do is create account “A2” and invite it only to H2

Does this make sense?

There is one important catch here - there is an implicit assumption that the two location’s Alexa setups are not using the same Amazon account. As far as I know, a single amazon account can only handle one location and once skill configuration, so you cannot have different skills on different Alexa devices linked to the same account.

HTH

P.S. I edited the original instructions to be a little bit more clear - hopefully that will help too

1 Like