Newbie button question - Button invoke an Alexa announcement

I purchased an Aeotec smart button thinking it’d be easy to just add a routine where our dogs press the button and Alexa announces that the dogs need to go outside. Unfortunately, it’s not that easy.

SmartThings doesn’t allow me to invoke an announcement on Alexa. And Alexa doesn’t allow me to create a routine using the button.

Any help for this? I’ve looked throughout the forum and haven’t come across anything yet.

Thank you, in advance, for your help.

1 Like

Sure, as you’ve noted, most buttons cannot be used as the trigger in an Alexa routine. (the exception is the Flic button.)

However, you can trigger an Alexa routine with a sensor. And then in smartthings, you can create a virtual device using an which is both a switch and a sensor. When you turn the switch on, the sensor opens. When you turn the switch off, the sensor closes.

So here’s the high level description of how the workaround process will happen in everyday use:

  1. You press your button.
  2. That triggers a SmartThings routine that turns on the switch portion of your virtual device.
  3. When the switch portion of your virtual device turns on, the sensor portion of that same virtual device looks like it opens.
  4. when the virtual sensor opens, that triggers an Alexa routine (not a SmartThings routine) that makes the announcement.

Somewhere in there you have to have the virtual switch turn itself off again so that it is ready for the next announcement.

Here’s the community FAQ on creating what you will need for this process including a link for the edge Driver you will need to create the virtual device. :sunglasses:

FAQ: Can I trigger an Echo Action without Speaking to It?

Note: after the discussion in this thread plus a review by a friend, this initial post has now been edited and both of the FAQs linked to from this thread have also been edited, hopefully to make it less confusing for a post groovy world. My thanks to @thegrillsargent for patience during this confusing time of transition. It’s been hard on us all! :face_with_head_bandage:


Thanks for the detailed reply JDRoberts. Looking through this and diving into many of the links, it’s still not immediately clear on how to implement this.

It’s exactly as I described in my previous post. Which step do you need more details on?

Also, did you read the FAQ I linked to?

Oh, and before I forget, do you have a SmartThings/Aeotec hub? I assume you do, since you have the Aeotec button, but I just want to be sure

The post was informative, but I’ve only noticed it indicating that it CAN happen, but no specific steps in there on how. I’ve followed the “thingsthataresmart” link and gone through the post a couple times. Perhaps I’m overlooking a link as I haven’t seen anything that refers to steps. Just description on code for virtual switches, but no info on where that will even reside.

I do have an Aeotec hub installed and the button added to it.

So it sounds to me, but correct me if I’m wrong, that you don’t know how to create the virtual device. :thinking:

You’ll need to do that with an edge Driver since the old method is being discontinued by smartthings in the next few months.

It would probably be a good idea for you to read about what edge is, as well as the steps for adding an edge driver to your hub

FAQ: I have no idea what Edge is. Is that a new developer tool? (2022)

once you understand how to add an edge driver to your hub, you just need to find the right edge Driver to add so you can create the right kind of virtual device

The wiki article included the following section

Code for a Virtual Device which will Show Up as Both a Contact Sensor and a Switch
The following post includes the code for a virtual contact sensor which is also a switch, so you can use that one. forum post including the code for a virtual sensor/switch
If you have never used custom groovy code before, see the article on how to install custom groovy code to your account.
‘’2022 Update’’
Since SmartThings’ support of Groovy code will be going away soon, if you are interested in trying the Beta Edge Driver as your virtual device (Edge Drivers replace groovy DTHs in the new architecture), see the following thread:
VEdge Creator

Just ignore all the stuff before the “2022 update“ header. That’s going to be out of date within a few weeks.

When you are ready to create the virtual device, you should follow the link to the Vedge creator.

You will then use that to create the virtual device. If you have read the edge FAQ I just gave you the link to and you still have questions about how to create the virtual device, ask in the Vedge Creator thread and someone there will help you.

Once you have created the virtual device which is both a switch and a sensor, you will be able to use the process I gave you in my first post.

Hopefully that helps. :sunglasses:

If I’m wrong, and you already created your virtual device, but you still don’t know how to use it, please specify which of the four steps in my original post you were confused about.

No, you’re absolutely right, I have no idea how to create a virtual device. So I’ll obviously need to look into that more. Seems like this is geared more towards someone who knows code though, which is not encouraging. :pensive:
I am extremely appreciative of your detailed responses though. I hope I can manage through this and get this to work. Thank you!

1 Like

You don’t need to know code for the new architecture method, the edge drivers, which is the good news. You are just going to follow a link that the code author gives you, subscribe to that channel, select the edge driver you want to have downloaded to your own hub, and then wait. It usually shows up pretty fast, but it can take as much as 12 hours.

Then follow the instructions in the author’s thread for using the SmartThings app to configure a virtual device the way you want it. but honest, it’s not like doing code, it’s just picking options. :sunglasses:

The intention is to make selecting an edge Driver feel similar to downloading an app from the App Store and then using it on your phone. Except there’s no “store” where you can find edge drivers: you just have to find them in the community and then follow the link the author gives you.

I just finished updating the wiki article to take out all of the old stuff so it should be less confusing. Thanks for bringing that up.

Looks like this just isn’t going to happen for me. Went through all of the drivers and there doesn’t seem to be a driver for the Aeotec button.

I do appreciate your attempts to help.

You’re not looking for a driver for the Aeotec button. I mean, you will need one eventually, but that’s an entirely separate question. That’s step one in the process in my first post.

You were supposed to be looking for a driver for a virtual device, which I already gave you the link to. The VEdge creator. you need the virtual device for steps 2, 3 and four in the process in my first post.

If your aeotec button shows up in your smartthings app now, don’t worry about it. It will probably be automatically converted to a stock edge driver when the time comes.

Let me see if I can put this a different way. :thinking: Here’s what you need to do.

(Please refer to these step letters if you have any questions in future posts, it really helps me, because I am quadriparetic and depend on a voice reader and if you don’t give a step number/letter I have to go back and listen to the whole thread all over again to figure out what we’re talking about. Which is a lot of work and I’m already tired.)

A. Make sure you can see the Aeotec button listed under your devices in the smartthings app. If it’s not there yet, add it.

If you don’t know how to add it to SmartThings, say so, and someone will help you.

B. Use the V edge creator to create a virtual device which is both a sensor and a switch. if you have any questions about this, ask in the author’s thread. The end result will be that you will be able to see your new virtual device in your devices list in the smartthings app. For the purpose of this post, I’m going to call it Fred. Create a switch which turns itself off again after a minute or so. Ask in the author thread if you don’t understand how to do that.

Here’s the link. (Anything in blue text in my posts is a link.)

[ST Edge] vEdge Creator: a virtual device generator for end users

C. Use the SmartThings app to Create a smartthings routine so that when you push the Aeotec button, you turn on the switch part of Fred. I’m just going to call that “Fred switch“ for now.

If you don’t know how to create a smartthings routine, say so, and someone will help you.

D. Create an Alexa routine (not a smartthings routine) using the Alexa app so that if the sensor part of Fred (which I’m going to call “Fred sensor“) is open, you get your announcement.

That should do it. :sunglasses:

1 Like

JD, maybe that’s where the confusion is. You are referring to steps you indicated in your first post, but I’m not seeing any. I see you indicated the following steps:
1. You press your button.
2. That triggers a SmartThings routine that turns on the switch portion of your virtual device.
3. When the switch portion of your virtual device turns on, the sensor portion of that same virtual device looks like it opens.
4. when the virtual sensor opens, that triggers an Alexa routine (not a SmartThings routine) that makes the announcement.

But not how to actually execute those. When looking at the link you provided in the first post, it again has a bunch of relevant information, but I’m not finding anything that says how to actually do this. Forgive the ignorance if that information is in there, I’m just not seeing it.

I also wanted to say…

One of my professors used to say “The hardest thing to remember is what you didn’t used to know.”

I feel like I’m giving you driving directions to the movie theater and you’re standing in the parking lot trying to figure out how to unlock the rental car. :thinking:

That’s fine, it happens, but first we have to figure out just where you’re stuck so we know what information you need to move forward.

So read the ABC steps I wrote in post 10 and see if that gets us any closer. :sunglasses:

(I had a friend look over this thread to see where I was going wrong, and per his suggestion I have gone ahead and updated the community FAQ to remove references to anything from the old groovy platform. Hopefully that will also make things a little clearer.)

Let’s see if I can help with this.

For this example, you’ll need the vEdge Virtual driver mentioned above.

I find that creating a virtual motion sensor works great for these routines, as the Alexa routines do see it, and it acts as a switch.


In my case I’m using a Third Reality Smart Button, but the same idea will apply to your Aeotec button.

Create a routine in SmartThings that simply turns on the virtual motion sensor when you (or the dogs) press the button.
In this example I turn the motion sensor off after 1 minute.

In the Alexa app, create a routine that detects when the virtual motion sensor detects motion (i.e. the button has been pressed).


You don’t need to be condescending. Your comment “anything in blue text in my posts is a link” is extremely condescending and degrading.

I’m just looking for help and when you reference “step by step” guides and those step by steps don’t exist, only descriptions and link upon link, that’s not helpful - hence my questions to your references of the step by steps. I appreciate the attempts to help, but belittling people because they don’t have the level of knowledge you do isn’t necessary.

Sorry, that was absolutely not my intention!

We have had multiple people in the past who didn’t know that those blue lines were links: they thought they were headers for the next section.

So I was just trying to go through and clarify anything that might have been confusing. It was not in anyway intended as a comment on you: as I said, I know I’ve been going wrong in this thread, I’ve just been trying to figure out where. And I have asked other people to look at it and help me with that.

So again, my profound apologies if you felt disparaged, I really did not mean that.

Hopefully the screenshots that @BlackRose67 gave you will help. I think it’s best if I just leave this topic for now. Good luck! What you want to do can definitely be done. So that’s the good news.

1 Like

Thank you for the clarification and apology JD.

After going through your steps (A, B, C, & D) I was easily able to get this all to work. THANK YOU!

If I might help a bit, the first few sets of information you sent was very much overwhelming to try and consume the amount of information and parse out what was useful/needed to complete the task I needed.

I appreciate your patience and willingness to work through this with me. Clearly, I’m new to SmartThings and will be tapping into it more as I’ve quickly hit the limit of what Amazon will allow me to do.

Thanks again!


No problem—I’m so glad you got it to work! :tada:

I think in the past this question has more often been asked by someone who is pretty familiar with smartthings and they thought they should be able to use an echo device in a smartthings routine like some other device. So all they really needed was to understand the overall process and get pointed at Alexa routines.

You were just ahead of the game in asking for what is a pretty advanced function when you are still just getting started with smartthings. So that was my fault in not realizing it. And I appreciate the push because it did cause me to go through and update two or three things which I think were confusing because they mixed together the old architecture and the new architecture. So that should help a lot of people in the future.

It has been often said in this forum of smartthings that it is very powerful, but not very discoverable. Meaning there’s probably a way to do almost anything you want to do, but there just isn’t very much documentation or help in the app for how to actually do it.

Fortunately, this community is usually super creative and very helpful, so do feel free to ask if you ever get stuck again. And definitely feel free to let us know if the answer you get isn’t helpful to you!

Welcome again! :sunglasses: