Amazon Dash buttons were the ultimate single purpose networked device; it really can’t get much simpler than a push button that sends a single message to a fixed endpoint. It was an experiment in ultimate convenience, an entry point to a connected home, and a target for critics of consumerism excess and technological overkill.
But soon they’ll be little more than a footnote in the history of online shopping, as CNet reports Amazon will take the order system offline at the end of the month. With the loss of their original intended usage, there’s nothing to stop us from hacking any Dash buttons we can get our hands on.
Of course, this decision should come as little surprise. Amazon’s in-home retail point of sale has graduated from these very limited $5 buttons to Alexa-powered voice controlled devices. Many people also carry a cell phone at all times capable of submitting Amazon orders. While there are many good reasons to be skeptical of internet connected appliances, they’re undeniably finding a niche in the market and some have integrated their own version of a Dash button to re-order household supplies.
But are hackers still interested in hacking Dash buttons? Over the lifespan of Amazon Dash buttons, our project landscape has shifted as well. We’re certainly still interested in the guts an Echo Dot. But if we wanted to build a simple networked button, we can use devices like an ESP8266 which are almost as cheap and far easier to use. Using something intended for integration means we don’t have headaches like determining which generation hardware we have.
Despite those barriers, we’ve had many Dash button hacks on these pages. A to-do list updater was the most recent and we doubt it will be the last, especially as Amazon’s deactivation should mean a whole new flood of these buttons will become available for hacking.
[via Ars Technica]
Amazon’s Dash Buttons are useful little devices, that let you automatically order a wide variety of common household goods at the press of a button. They’re cheap and wireless and readily available, and that makes them ripe for hacking. In just this vein, [Inbar] and [Ezra] found a way to make the Dash buttons update their to-do list.
[Inbar] uses Any.do to manage his to-do list. There’s no public API, but the service can be configured to respond to Alexa commands. Naturally, this meant that if a Dash Button could be configured to trigger a voice command, Alexa would then make the necessary additions to the list.
This was achieved with lashings of Python, a Raspberry Pi, and Apple’s text-to-speech engine. The Raspberry Pi is set up as a wireless hotspot, to which the Dash Buttons are connected. When the button is pressed, a DHCP request goes out as the button tries to phone home. By scraping the MAC address from this request, the Raspberry Pi can identify which button has been pressed, and then plays a recorded voice sample of Apple’s Samantha voice. This voice was specifically chosen to be the one most reliably understood by Alexa, which is responsible for parsing the voice command and updating the list on Any.do.
It’s a cheeky hack that doesn’t bother itself with the nitty-gritty of interfacing with various services and tools. Instead, it laces up a bunch of easy-to-use software and hardware, and gets the job done just as well.
As we’ve seen, Amazon’s Dash Button has been thoroughly pwned. Video after the break. Continue reading “Making A Dash Button Update Your To-do List”
This scene replays quite often in our house: my wife has misplaced her cell phone so she asks me to call her. But where did I leave my cell phone? And the race is on! Who will find their phone first to call the other?
[Zapta] solves this problem with his Phone Finder. The system comes in two parts: a base station with WiFi that’s also connected to the house’s phone line, and an arbitrary number of Amazon Dash buttons that trigger dialing commands.
[Zapta] presses a Dash button, which connects over WiFi to the base station. The base station recognizes the MAC address of the button, looks up and dials the corresponding missing cell phone. This solves the need-a-phone-to-find-a-phone problem very neatly, and since Dash buttons are dirt cheap they can be scattered liberally around the house. They’re clearly marked “his” and “hers” suggesting a similar domestic dynamic.
If we were implementing the base station from scratch, we’d probably try to figure out how a single ESP8266 could do all of the heavy lifting, but browsing through [Zapta]’s GitHub and the included circuit diagram (PDF) demystifies the phone-line interface.
In the early days of cordless phones, we used to joke that a solution to losing them would be to attach a string and tie them to the wall. (Luddites!) We’re glad to see [Zapta] take this project in the opposite direction — using technological overkill to solve the unintended problems that arise from technological progress.
Most Hackaday readers are familiar with the Amazon Dash button even if it has not yet made an appearance in their country or region. A WiFi enabled button emblazoned with a product logo, that triggers an Amazon order for that product when you press it. Stick it on your washing machine, press the button when you run out of laundry soap, and as if by magic some laundry soap appears. You still have to get out of your armchair to collect the soap from the delivery guy, but maybe they’re working on that problem too.
Of course the embedded computer concealed within the Dash button has been the subject of much interest within our community, and quite a few creative uses have been made of repurposed and reverse engineered examples.
Earlier this year a new Dash button model appeared. Largely similar on the outside, but sporting a comprehensive hardware update internally. Gone is the STM32 processor to be replaced by an Atmel part, and unfortunately since they also made changes to its communication protocol, gone also are most of the hacks for the device.
[Evan Allen] writes to us with his work on bending the new Dash button to his will. He goes into detail on the subject of retrieving their MAC addresses, and modifications to existing hacks to allow the buttons to be intercepted/redirected to trigger his MQTT server. It’s not by any means the end of the story and we’re sure we’ll see more accomplished uses of the new Dash button in due course, but it’s a start.
If the new button’s hardware interests you then [Matthew Petroff]’s teardown is definitely worth a look. As well as the Atmel chips — discovered to be a ATSAMG55J19A-MU with an ATWINC1500B wireless chip — the buttons now support power from a AA cell, and boast a significantly reduced power consumption. We really, really, need to pwn this tasty new hardware!
We’ve covered quite a few Dash button hacks before, from simply capturing button presses to cracking it wide open and running your own code. Let’s hope this new version will prove to be as versatile.
If you haven’t heard about the Amazon dash button yet we’re glad you quit watching cat videos and have joined us. Just to get you up to speed: the Amazon dash button is a small wireless device that lets your lazy ass order more laundry soap by pushing the “dash button” which should be affixed to something near your washing machine. The pushing of the button will set in motion the gut wrenching process that we used to know as “buying things we ran out of” but thanks to Amazon we can now just cover our entire lives with an assortment of buttons that take zero credentials to physically push. We can’t see that being a problem whatsoever.
Needless to say we as a community set out to find an actual use for these fantastic little devices. [maximus64] has done quite a nice job at enabling this hardware in a most usable way. Most of the hacks we have seen for the dash button remove the physical push button and add a sensor of some kind. Replacing the button with a sensor still uses the WiFi connection to send data from the button to the cloud. Instead of the button ordering more <<product>> from Amazon, a sensor might trigger the dash to increment a counter on your website letting you know that your dog went through the doggy door +1 more times.
[maximus64] has the dash button working in the reverse manner by porting the Broadcom IoT WICED SDK to the button. He is using the dash button as a receiver and when [maximus64] sends the “all good” signal from his laptop to the dash button his garage door opens which you can see in the video after the break. We find this extremely more useful than the dash button’s original intended use. [maximus64] has instructions in the readme.md file of the github repo so that you too can hack your dash button in this way.
Continue reading “Amazon Dash Button Pwn3d”
How often have you ever wanted a pizza but reaaaaaaally didn’t want to get off the couch to go order, or god forbid, actually go to a pizzeria to pick one up? Well [Brody Berson] has the solution for you! He re-purposed an Amazon Dash button to order himself Domino’s Pizza with the press of a button.
He was originally inspired by our recent post about hacking the Amazon Dash button to do whatever you want — and whatever he wanted was a pizza button. He admits he was inspired by the bachelor years gone by where this would have been really, really handy — apparently he even ordered McDonalds through Postmates once!
It’s pretty simple too — all he needed to do was a bit of coding. Someone had already made a specific Domino’s Pizza API, and thanks to the interest in the Dash button, he was able to find everything he needed to mash together a one-push-button-pizza-delivery-device. Continue reading “The Pizza Button”
The Amazon Dash is a $5 push-to-buy-cat-litter button which has excellent potential for repurposing, but you need to know what is going on inside first. [Tony Dicola] has the details in this excellent bare metal guide to the Dash. In this, he covers how to get inside the Dash and reprogram it to do something more interesting than buying cat litter.
He first cracks the device open, connecting a programmer, then building a toolchain to compile programs to run on. This isn’t for the faint-hearted because you are programming directly for a device that wasn’t really built for it, but [Tony] has posted examples and there are few tools to hold your hand on the way. There is a safety net, [Tony] provided details on how to reset the Amazon Dash Button if you manage to brick it.
We have seen some interesting hacks that repurpose the Dash to capture your child’s bowel movements by intercepting the device connecting to WiFi, but this guide takes it a step further. It allows you to run your own code, which turns this into a really low-cost and well-engineered all-in-one WiFi device. The missing piece is proof-of-concept code to run the WiFi module inside. If you’re working on that we’d love to hear about it!
Continue reading “Amazon Dash: Hack It To Run Your Own Code”