danimtb / dasshio

Hass.io add-on to easily use Amazon Dash Buttons with Home Assistant
Apache License 2.0
192 stars 63 forks source link

Prevent New Dash Button from Being Bricked #97

Open mdframe opened 4 years ago

mdframe commented 4 years ago

If you have an existing Amazon Dash button that no longer works it is due to Amazon essentially "bricking" the device. I have not found a way to factory reset or get an existing dash button working again. However, I did figure out how to get a new dash button working. I found a number of sellers on eBay.

First, get the MAC address however do not attach it to your network at this point with the URL SSID hack. Once you get the MAC address go into your network router and create a firewall rule to prevent traffic from the MAC to reach WAN Out. Make sure the firewall rule is active and in place before adding the dash button to your wireless network. I have been successfully using a new button for several days now without issue.

I have been able to find a number of eBay sellers that sell the buttons so it looks like, for now, you can still get the dash buttons.

sidoh commented 4 years ago

I think this only applies to buttons that were already set up at some point. The impression I get from browsing buttons on eBay is that most are from people who bought them only to get the $5 credit, which required that they set them up (amusing sidebar: it's likely possible to get their wifi credentials off of the device).

Dash buttons wipe themselves after the battery gets too low. They use a replaceable AAA battery, but you have to go through the full setup process again after replacing the battery.

If the firmware is old enough, there's a vulnerability in the high-frequency audio setup protocol that allows you to complete the part of the setup process that can't be accomplished through the setup AP. I have a writeup here:

https://blog.christophermullins.com/2019/12/20/rescue-your-amazon-dash-buttons/

(you'll still definitely want to blackhole outbound traffic from them, as you suggest)