Easiest Way to "Hack" Amazon Dash Button

project_remotes

#1

So I just figured out the very easiest way to “hack” the Amazon Dash Button if you want to use for SmartThings or other useful things.

What you’ll need:

  • Android Device not being used by you. Just laying around somewhere (or buy a new one)
  • Dash Button (Not setup with ordering. If it’s setup with ordering, follow the steps from “Dash Button (Old Device)”)
  • Apps: Amazon Shopping, Tasker, SharpTools, and AutoNotification

:warning: Prime Surprise Dash Buttons will not work with this setup as it is only a surprise button and is automatically set to order one item. You don’t get choices like the other brand name items which have more than one type of product available. So if you were to exit out of the setup process after having connect to wi-fi and registering Prime Surpise dash button, it’ll still order something. We don’t want any dash buttons to order anything as we just want to set it up for home automation (or something else). Pretty much all other Dash buttons should be good to go. This Dash button was just one of the rare cases where ordering (which we don’t want) still goes through even though you exit out.

Example Uses:

  • Push Dash Button and it turns on lights. (Bedroom lights, living room lights, all lights or whatever)
  • Push Dash Button and it turns on TV, changes to a TV input and opens up Netflix.
  • Push Dash Button and it opens up gate/garage door.
  • Push Dash Button and it opens up a camera app on phone and maybe even turns on TV and casts camera to TV.
  • Push Dash Button and it opens up an app and does some action.
    Unlimited Possibilties

How it Works: (These aren’t steps to follow. Just letting people know the process. Skip this if you don’t care about the process and scroll down to where there is a long bold text that starts with “While this post is pretty long…” if you just want to set this baby up.)

  1. Amazon Shopping App sends a notification for the Dash Button pressed. Let’s say it’s a Tide Dash Button, once pressed it’ll say something like “Your Tide Dash Button is almost ready for use. Finish the setup process to use your Dash Button” It’ll keep saying that every time the dash button is pressed. Each dash button will have their own name in the notification. For example; if it’s Pringles it’ll say something like “Your Pringle Dash Button is almost ready…” If it’s Bounty it’ll say something like “Your Bounty Dash Button is almost ready…” etc. So the only thing that will change from the notification is the name of the Dash Button that was pressed.
  2. Using the notification you get from the above, AutoNotification looks at the message and basically says to Tasker “Look this exact Notification popped up, Tasker you must do this action.”
  3. Tasker responds and does whatever action AutoNotification was assigned to. For example; I had one of my dash buttons setup with my bedroom lights (Tasker>Tasks>+>Task Edit>+>Plugin>SharpTools>A Thing>Edit Configuration>Select device type>Select device you would like to control>select command (Best to leave it as toggle if you want something to turn on when off and off when on.)) When pressing that dash button, my bedroom lights would either turn on or off (depending if it was on or off).
  • You can enable and disable Amazon Shopping Notification for each device you want it enabled or disabled in case you get annoyed. This can be done by opening the Amazon Shopping App on each individual device and disabling or enabling “Alexa Shopping & Dash Updates.” Enable on the device you plan to do this setup guide. Disable on all devices you don’t plan to use this setup on. Orange = Enabled.

Delay Time: 4-5 seconds. (Pretty much same delay time as Python and Node according to a couple YouTube videos I watched of dash button being pressed and an action happening.)

While this post is pretty long, this is by far one of the very easiest ways (I can think of/know of) for anyone to “hack” the Amazon Dash Button. If you follow these steps, you should be good to go. Once you figure out how this works, you can easily set the next dash buttons you have.

Follow only one of the dash button steps. If you haven’t setup a Dash Button yet, follow “Dash Button (New Dash Button)” steps. If you have registered a Dash Button with ordering something, follow the steps from "Dash Button (Old Device) to deregister and reregister Dash Button.
Dash Button Steps (New Dash Button):

  1. Open Amazon Shopping app and go to Your Account.
  2. Go to Set up a new Dash Button and click on Agree & Get Started to get started.
  3. Press and hold the Dash Button for 6 seconds until the light flashes blue and click Connect. (Make sure bluetooth is enabled)
  4. Click on the Wi-Fi Network you want to connect the Dash Button and click Continue.
  5. Dash Button is now registered. Don’t do anything yet.
  6. Where it says Choose a Product just exit out (we don’t want to order anything) by clicking the X on the top right.
  7. We’re done with setting up dash button.

Dash Button Steps (Old Device):

  1. Open Amazon Shopping app and go to Your Account.
  2. Go to the Dash Button you have ordering setup with and click on Deactivate this Dash Button. A popup will appear asking you if you are sure. Say Yes.
  3. Now go to Set up a new Dash Button and click on Agree & Get Started to get started.
  4. Press and hold the Dash Button for 6 seconds until the light flashes blue and click Connect. (Make sure bluetooth is enabled)
  5. Click on the Wi-Fi Network you want to connect the Dash Button and click Continue.
  6. Dash Button is now registered. Don’t do anything yet.
  7. Where it says Choose a Product just exit out (we don’t want to order anything) by clicking the X on the top right.
  8. We’re done with setting up dash button.

Basic Steps (Setting Up Notification settings through Amazon Shopping App and enabling accessibility for apps):

  1. Go to the Amazon Shopping app and go to Your Account.
  2. From your account page go to the section Dash Buttons & Devices and click on where it says Manage Devices.
  3. Go to Notification Settings.
  4. From the Notifcation Settings, go to where it says Alexa Shopping & Dash Updates and enable Alexa Shopping & Dash Button Updates. Orange = Enabled (Just letting you know that you can disable the notifications for other devices and just enable it for the specific device you plan to mess the dash button with. You just have to go to the Notification settings for the device you don’t want notification and disable Alexa Shopping & Dash Updates. Again only keep it enabled for the device you plan to mess with.)
  5. Now let’s go to the the Google Play store and download the apps mentioned: Tasker, SharpTools, and AutoNotification.
  6. Now let’s go to android device’s Settings page.
  7. Go to Settings>Accessibility and enable AutoNotification Toast Intercept and Tasker
  8. Now these basic steps are done and we’ll move on to the advanced steps.

Advanced Steps (Setting Up SharpTools, Tasker, and AutoNotification):

  1. Open SharpTools and go to Widgets so it enables Tasker Plugins automatically (should take a second or so). Once it does, it should say “Owned” next to it.
  2. Go to Settings (SharpTools not Android’s settings) and go to where it says Authorize Things.
  3. A SmartThings login page will appear with a drop menu Select one…. Select the location your SmartThings things are located.
  4. A list of devices should appear. Select whatever device you plan to mess with and click Authorize.
  5. Now we’re done with SharpTools and we’ll move on with Tasker.
  6. Open Tasker and go to Tasks which is the top second tab (from the Tasker tabs).
  7. Click the + symbol on the bottom right and give the task whatever name you want.
  8. Now you are in the Action section. You’ll see a + symbol again. Click the + symbol and go to Plugins>SharpTools. A popup will appear. Select A Thing. Where it says Configuration click on the pencil icon on the very right side.
  9. Select the device type your favorite device is in. Select the device you would like to control. Select the command to send. Leave it as Toggle as that’ll make the most Dash Button more useful.
  10. Go back until your in the main Tasker section.
  11. Now go to the Profiles tab which is the top left tab.
  12. Click on the + symbol and go to where it says Event from the popup.
  13. From the Event popup go to Plugins>AutoNotification>Intercept.
  14. You should see Configuration. Click the pencil icon next to it.
  15. Once that opens up, go to and click on Notification Text (not title).
  16. Enter the notification text (exactly as it is with same capitilization, periods etc) you get when you press the Amazon Dash Button and click ok. For example; If you have a Pringles dash button you’ll likely get a notification like"Your Pringles Dash Button is almost ready for use. Finish the setup process to use your Dash Button" (Mine was without a period at the end. So check to see if your device has a period at the end as every detail is important.) Enter all that into the notification text.
  17. Below Notification Text, you’ll see Exact. Place a check mark.
  18. On the top right there is a check mark. Click the check mark to save your AutoNotification event.
  19. Go back and you should get a popup of Tasks actions. Click the Tasks actions where you setup SharpTools.
  20. On the top right of Tasker you’ll see a check mark. Click it to save your changes (or hit the 3 dots on the top right and you’ll get a Confirm exit. Click on “save first”)
  21. That’s all. Once you click the Dash Button the action will take place.

Amazon Dash Button wall mount (and summary of what to do)
(Joshua Lyon (SharpTools.io Dashboard)) #2

Reading through the article, I pictured myself pressing the Amazon Pringles button and SmartThings triggering a set of pneumatic tubes sending a can of Pringles to me while I sit on the couch. :stuck_out_tongue:

Edit: here’s a visual for you


Was the article copy-pasted multiple times? After reading through the first main block, it seemed like the main steps were repeated multiple times.


#3

I only copied and pasted the Dash Button setup process. One of them is when you are barely setting up a Dash Button and the other is Deactivating a dash button that has linked to ordering something (after that step is steps copied and pasted from setting up a new dash button.)

Also, I just came up with this solution and made the guide on my own. I was practically giving up on setting up Python and Node. So this is for those who like me couldn’t get Dash Button setup through node or python. (I only tried Node and Python like the past two weeks just for Dash Button hack.)


(Joshua Lyon (SharpTools.io Dashboard)) #4

Apologies if my message came across the wrong way. As the developer of SharpTools, this looks like a really innovative way to use Dash buttons and it wasn’t my intention to discredit the content in any way - if anything, I think it’s awesome!

All I was trying to say is that the content is duplicated and triplicated within the post making it long and really hard to follow. Again, I think the idea behind the post is super awesome, so I’m just trying to provide some feedback on how you could clean up the duplicate content and make it easier for people to follow.


#6

So much cleaner and much much shorter now. I was like “My post looks way too long.” But I didn’t bother re-looking at entire post. I don’t know how that happened. Anyways, thanks!

I tried to baby step this guide as much as I could. Because skipping a step even a simple basic one leads to confusion and too many "How tos???"I’ll probably provide a step by step picture guide so it makes it look much easier to follow than text.

Btw, I tested to see how long the delay time is with this setup vs Python and Node (through YouTube videos as I couldn’t setup Dash Button with Python nor Node.) It’s basically the same. 4-5 seconds for it to respond with an action.

SharpTools rocks!


(Joshua Lyon (SharpTools.io Dashboard)) #7

The updates look good. Glad you are enjoying SharpTools!


(ppp) #8

Works perfect! Great post! Thankyou!


(George) #9

Hummm…

I seem to be having trouble and have a few questions. How do you get the exact verbiage for the notification? When i push the button I can only see half of the notification on the phone. The order gets placed and I have to cancel it, I feel like I missed something here.

I did not complete the setup for the DASh button.


(George) #10

Im feeling pretty confident something change in the app. When you click the X on the top right when at the registering screen, it still registers the device


#11

First question: Basically, open the notification panel and where it shows the notification for the dash button you just use two fingers (one finger in each end a little before ) and move fingers outward to expand. Basically like pinch with two fingers and zoom out or w/e.

Second question: That’s exactly what we want. You need to register the Dash Button. What we don’t want is assigning the dash button to order something. So instead of assigning something, you simply exit out but Dash Button is still registered. What happens next is when you press the dash button, you’ll get a notification saying “Your (insert dash button name) is almost ready for use…blah blah blah.” (Basically its telling you you have registered the device and haven’t assigned what to order and well we don’t want to order anything so you just ask AutoNotification to read off exact notification you get from each dash button and assign each notification to a specific task/action) You copy the full and exact notifcation to AutoNotification via Tasker Profiles (where it says "“Notification Text” (not title or anything else)) and check mark “Exact Words.” If you don’t check mark exact words, the system will just read off any word from the text (so if you had multiple dash buttons they all will do the same action if you don’t check mark exact words.)

Downside to my easy hack: With Python/Node it reads info from the specific dash button pressed as each dash button has a unique mac address. With my hack, the only unique thing would be if you had a different brand dash button in which you would get a slightly different notificication (only difference in notification would be the different brand dash button you used example; Pringles, Bounty etc) luckily there are hundrends or thousands of unique dash buttons for the same price of $4.99 with sometimes one or a few specific dash buttons being on sale for $1.99 or w/e. You can also go to Ebay in which you’ll be able to find packs of 20 to 30 unique dash buttons for $20 to $30. I got a pack of 20 for $20.

Some info: Few weeks or so ago Amazon updated the app and added a “.” (Period) at the end of the notification text. There was no period at the end of text when I made this post. So you likely have to put “.” But just check yourself to make sure as every device can be different.

Advice: DO NOT CLEAR NOTIFICATIONS. If you do, it’ll do the action multiple times. So say you assigned a dash button to turn on and turn off lights and you did that 100 times. You would have hundrends of notifications and once you cleared them they would do those actions hundrends of times. And that’d be annoying. If that happens, simple Disable Tasker thru Tasker (by clicking on the three dots going down vertically and hitting Disable Tasker. Just do that and wait like 5 to 10 seconds just in case then enable.)

Have I answered your questions successfully? :slight_smile:


(George) #12

Hey @SmartHomeUser thanks for you reply. Ill answer/comment what you have written-

First question- BINGO - Enough side
Second question- I dont think the app acts the same for registering the dash buttons. Right after it connects to wifi, it shows the address, payment option and the item you want order, already checked off. When you hit the X in the top right, it does say do you want to cancel setup, I say yes, but when I go back into the app, I see the Dash button already registered. So when I click the button, it order “Prime Surprise Sweets” lol


#13

Maybe you accidentally assigned it to order something. If you did, simply deregister and reregister device and don’t assign it to order anything.

But also…You said Prime Surprise Sweets. Are you using the Prime Surprise dash button. I think that may be automatically assigned or something since you wouldn’t likely need to assign it anything as its just a surprise. But idk. Maybe that specific dash button behaves differently?


#14

Let me just be clear. Once you hit the dash hutton, do you see the order placed in your Amazon order history? (Or are you assuming it places order) If not, you did the setup successfully and have nothing to worry about. Just copy the exact (with same lower case/upper case format and specific notification) for each dash button you want to use and have it do an action.

Examples;
“Your Pringles Dash Button…” notification will turn on/off living room lights.

“Your Bounty Dash Button…” notification will turn on/off bedroom lights.

And so on…


(George) #15

oh wait…are there “universal” dash buttons? I thought I could pic anyone and apply this mod.My dash button is for Supreme sweets.


(George) #16

The order DOES get placed. I have to hit cancel.

I think I may have the wrong dash button.


(George) #17

is this the button you guys are using?

https://www.amazon.com/All-New-AWS-IoT-Button-Generation/dp/B01KW6YCIM/ref=lp_10667898011_1_1?s=amazon-devices&ie=UTF8&qid=1510270774&sr=1-1


#18

Most Dash Button let you assign what to order. Prime Surprise sweets might be the only one or one of the very few.

So if you had a Red Bull, Pringles, Bounty etc Dash Buttons where the company sells different flavors/packs/types of products you would have several choices. But since we don’t want to order anything we just exit out of that area. Dash Button will still be registered but won’t order anything and thats all we want because we want to get the specofic notification each dash button gets. (Which will only be slightly different. Each notification will tell you the different brand of dash button you are using and rest of the text will remain the same for all dash buttons.)


#19

No. Thats too expensive of an option.

Just regular Dash Buttons that you use to order common household items/snacks etc.

Like I said Prime Surprise Button might be one of the very few where you don’t get choices. So ends up ordering anyway…Or idk…


(George) #20

Then that’s it! I just happen to order the 1 dash button that doesn’t work lol

At least we know now.

I’ll order up a different one and give it a go

Thanks for the help


#21

I can confirm that the Prime Surpirse Dash button wouldn’t work with this setup. Any other Dash Button will likely work. Prime Surprise Dash Button does not give you a choice of items to order as it is a surprise and doesn’t need choices. So the only Dash Buttons you should get are ones where you know the brand has more than one item.