We built what we believe should already exist: a magic button that, when pressed, does THE THING. Get one and join the One Button Club!
What it does
The One Button is a battery powered IoT device capable of receiving push notifications and making complex web requests.
Imagine working at your desk, when the pink Lyft button lights up to let you know "it's time to leave for your next calendar event - press me and we'll give you a lyft." No checking a phone or Google Maps, no worrying about logistics, no fuss.
Or, what if there was a button that delivered your favorite meal (or something highly recommended) from across town?
And wouldn't it be great to call everyone in the house to play boardgames or watch a movie, with just one press?
How we built it
The One Button is built from commodity hardware: The housing is from repurposed talking buttons - we ripped the guts out and put in our own Inside, we connect to the button mechanism an ESP8266, which is an inexpensive WiFi-enabled system-on-a-chip. The chip is powered by a few hundred lines of embedded Lua that we wrote over the weekend, and powered by two AAA batteries.
Challenges we ran into
- Hardware is hard. Making a single typo is fixable but means lots of wasted time unscrewing the enclosure, attaching wires, uploading, restarting, and so on.
- Some APIs are not well documented or have mistakes, causing difficult-to-diagnose behavior on our embedded systems.
- The bleeding edge firmware that we use was recently changed to hardcode the output pin when using certain protocols. That was an interesting hour.
- Making authenticated requests with about 25KB of usable ram.
Accomplishments that we're proud of
- Successfully coding HTTP requests one character at a time.
- Getting these things to call Uber or Lyft, or post to Slack, etc, without any external processing (although Expedia will be an exception - their responses don't fit into RAM)
- Especially proud of Abhinav for his hardware hackery
What we learned
We fielded ideas and learned a lot about what kind of use cases are compelling to other people, which we incorporated into our approach.
What's next for One Button Club
We are going to build 1,000 more. We chose this because we've seen interest in the idea before LAUNCH, and will continue to refine our approach and test the market.
We are online!