Summary of Amazon Dash Button for Arduino!
Summary: This project uses the AmazonDRS library to enable WiFi101-equipped Arduinos to act like an open-source Dash Button, initiating Amazon purchases via the Dash Replenishment API. It targets makers who prefer Arduino-level development and I/O access instead of proprietary AWS IoT Button or hardware-hacking Dash Button approaches.
Parts used in the Amazon Dash Button for Arduino:
- WiFi101 enabled Arduino (e.g., Arduino with WiFi101 shield or board)
- Pushbutton
- AmazonDRS library (software component)
- Power source for the Arduino (battery or USB)
- Wiring/connectors
- Optional enclosure or mounting hardware
A project using the AmazonDRS library for WiFi101 connected Arduinos. Just like the AWS IoT button, but completely open source!
Things used in this project
Story
TL;DR; Buy some stuff on Amazon by clicking a pushbutton connected to your WiFi101 enabled Arduino. It’s like a Dash button, but cooler!
Motivation
Back in the Spring of 2015 Amazon released the Dash Button to help facilitate frictionless product purchases with just the click of a button! For example this dash button ensures my pups insatiable appetite for Greenies dog treats is always well served and my pantry never runs low! You register the button to your amazon account and when you’re about to run out you press the button, a couple days later voilá treats at your doorstep! Cool.
Then for the developer community Amazon released the AWS IoT button!
It’s possibilities are endless! Amazon describes the AWS IoT Button as…
“…a programmable button based on the Amazon Dash Button hardware. This simple Wi-Fi device is easy to configure and designed for developers to get started with AWS IoT, AWS Lambda, Amazon DynamoDB, Amazon SNS, and many other Amazon Web Services without writing device-specific code.”
This is great if you’re a web savvy developer comfortable with AWS or are looking to learn more about the IoT services Amazon is now supporting. Unfortunately this boxes out us hardware hackers! Where’s my I/O? What if mildly “device-specific code” is sort of your thing? Sure you could hack open a Dash Button and dive headfirst into some “bare metal” dash embedded dev like the talented folks at Adafruit have documented for you. But if you’re still building your chops on Arduino and aren’t quite ready to dive into hardware abstraction layers and shift registers you’re still out of luck. Until now!
Amazon has released the Dash Replenishment API for device manufacturers and developers!
The good news… now we can create hardware devices that can initiate frictionless purchases all on their own! This means our coffee makers can purchase filters for us before we run out, or our laundry machines can order detergent based off of usage statistics. It’s now up to us to build these creative frictionless purchasing devices.
Read more: Amazon Dash Button for Arduino!
- What does this project do?
It lets WiFi101 enabled Arduinos act like a Dash Button to buy items on Amazon using the Dash Replenishment API via the AmazonDRS library. - What hardware is required?
A WiFi101 enabled Arduino, a pushbutton, power source, wiring, and optional enclosure. - Which software library is used?
The AmazonDRS library is used to interact with the Dash Replenishment API. - How is this different from the AWS IoT Button?
It is open source and Arduino-focused, giving hardware I/O access and allowing device-specific code rather than relying on AWS IoT Button firmware. - Can this run on a standard Arduino?
It requires a WiFi101 enabled Arduino or an Arduino with a WiFi101 shield, not a standard non-WiFi Arduino. - What is the motivation for this project?
To enable makers who prefer Arduino-level hardware access to create frictionless purchasing devices without hacking Dash Button hardware or relying solely on AWS IoT Button. - What kinds of devices could be built with this?
Devices that order consumables automatically, such as coffee filter dispensers or detergent-ordering laundry machines.


