Dasshio - Amazon Dash Buttons Hass.io add-on

Here I want to introduce Dasshio, a simple and easy way to use Amazon Dash Buttons with Home Assistant and Hass.io.

It was first introduced in this topic Capture Amazon Dash button press and used by few users since then.

You can find all the information and setup instructions in its repository:

It does not use Dasher. It is just a python script with all de add-on config, but it integrates well with Hass.io making its use very straightforward.

Here you can see a video with the initial tests:

As some people reported good feedback, I wanted to share it with all the community. I hope other people find it useful too!
This is my first add-on, so any contribution or help would be highly apreciated :slight_smile:

10 Likes

Still working great for me thanks :+1:

Response is virtually instant though I use reserved IPs which I gather helps all the dash button sensing solutions.

1 Like

Tried this add-on my hass.io test setup today and can confirm this works perfect! Easy to install and configure.
It sure helps when you already have the MAC addresses available from another setup. Saves some steps of course.
:wink:

Thanks for this add-on, @danimtb !

1 Like

I am getting the following error when trying to install this addon through Hassio (rpi3). It seems to happen with other 3rd party addons that I try to install; does anyone know what is going on and what I am doing wrong?

17-10-02 15:10:31 INFO (SyncWorker_10) [hassio.dock.addon] Start build 03d23610/armhf-addon-dasshio:0.0.8
17-10-02 15:10:32 ERROR (MainThread) [aiohttp.server] Error handling request
Traceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/aiohttp/web_protocol.py", line 422, in start
    resp = yield from self._request_handler(request)
  File "/usr/lib/python3.6/site-packages/aiohttp/web.py", line 306, in _handle
    resp = yield from handler(request)
  File "/usr/lib/python3.6/site-packages/hassio/api/util.py", line 31, in wrap_api
    answer = await method(api, *args, **kwargs)
  File "/usr/lib/python3.6/site-packages/hassio/api/addons.py", line 171, in install
    addon.install(version=version), loop=self.loop)
  File "/usr/lib/python3.6/site-packages/hassio/addons/addon.py", line 443, in install
    if not await self.docker.install(version):
  File "/usr/lib/python3.6/site-packages/hassio/dock/util.py", line 18, in wrap_api
    return await method(api, *args, **kwargs)
  File "/usr/lib/python3.6/concurrent/futures/thread.py", line 55, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/lib/python3.6/site-packages/hassio/dock/addon.py", line 196, in _install
    return self._build(tag)
  File "/usr/lib/python3.6/site-packages/hassio/dock/addon.py", line 209, in _build
    image = self.docker.images.build(**build_env.get_docker_args(tag))
  File "/usr/lib/python3.6/site-packages/docker/models/images.py", line 175, in build
    raise BuildError(chunk['error'])
docker.errors.BuildError: Please provide a source image with `from` prior to commit

Hi @Geoff_Brown

Dasshio was recently updated to support Hass.io 0.64 and Host OS 1.1 so there should be some problems if your hassio system is not updated.

Could you check your Hass.io and Host OS version?

I saw that I have a HOST OS update to 1.1, doing it now. Hassio is at 0.54

edit: that was the problem, installed fine now. Cheers!

1 Like

Thank you for using Dasshio and reporting back! :smiley:

After Amazon’s crazy three weeks of a free button every day I’ve got another 21 to find uses for now!

1 Like

This is a message to notify all Dasshio users that there is new version available that fixes multiple api call with singles press issue.

This has been possible thanks to the contributors! Great work guys :smiley:

Please update!

2 Likes

Trying to update Dasshio, but I get a ‘red’ button (not updating or installing) and this error in my Hassio supervisor-log:
17-11-10 15:47:54 INFO (SyncWorker_15) [hassio.dock.addon] Start build 03d23610/armhf-addon-dasshio:0.0.9
17-11-10 15:47:54 ERROR (MainThread) [aiohttp.server] Error handling request
Traceback (most recent call last):
File “/usr/lib/python3.6/site-packages/aiohttp/web_protocol.py”, line 416, in start
resp = yield from self._request_handler(request)
File “/usr/lib/python3.6/site-packages/aiohttp/web.py”, line 323, in _handle
resp = yield from handler(request)
File “/usr/lib/python3.6/site-packages/hassio/api/util.py”, line 31, in wrap_api
answer = await method(api, *args, **kwargs)
File “/usr/lib/python3.6/site-packages/hassio/addons/addon.py”, line 474, in install
if not await self.docker.install(self.last_version):
File “/usr/lib/python3.6/site-packages/hassio/dock/util.py”, line 18, in wrap_api
return await method(api, *args, **kwargs)
File “/usr/lib/python3.6/concurrent/futures/thread.py”, line 55, in run
result = self.fn(*self.args, **self.kwargs)
File “/usr/lib/python3.6/site-packages/hassio/dock/addon.py”, line 219, in _install
return self._build(tag)
File “/usr/lib/python3.6/site-packages/hassio/dock/addon.py”, line 232, in _build
image = self.docker.images.build(**build_env.get_docker_args(tag))
File “/usr/lib/python3.6/site-packages/docker/models/images.py”, line 175, in build
raise BuildError(chunk[‘error’])
docker.errors.BuildError: Please provide a source image with from prior to commit

Is this a add-on error or my Hassio Docker-setup?

Hmm…not being offered it?

@danimtb - Great add-on. I noticed that with dasshio installed my snapshots went from <1MB to over 65MB. Is this expected?

1 Like

Hi @kap!

I have no idea. My guess is that, as Dasshio is built in the hassio machine everytime it is installed, the snapshot may take the built docker image instead of the config settings only.

I will investigate it. Thank you for reporting!

So I have Dasshio working in my Hassio HA server. Works well, but as soon as I enable my ssl config with letsencrypt, it stops.

I would expect this… on my internal network I connect to https://192.168.1.x:8123 and accept the cert error since the cert is really for my duckdns site name. This works fine for a browser, but not so well for Dasshio since it can’t accept an invalid cert and directing it to my external redirection name does not seem to work. I have tried using https://(external FQDN), https://(local ip and port) and various other incantations. I also tried https://homeassistant:8123 and http://homeassistant:8123.

How the heck do I get around this with ssl in place?

1 Like

@danimtb Also getting this error when trying to install… any ideas? I’m running the most up to date version of Hass.io

Might be related to the change in the Hassio buildsystem. Check this: Dasshio - Amazon Dash Buttons Hass.io add-on

Please make sure your Hass.io instance is updated (Both Hassio -Supervisor- and Host OS).

New version 0.1.0 of Dasshio is out!

Now Dasshio can use the internal hassio communication, so it is strongly recommended that you use http://hassio/homeassistant/api in your configs.

@mattlward this version might solve your issue if you use the internal communication url! Just check it and let me know.

In case there are any questions, bugs or feature requests please consider opening an issue here: https://github.com/danimtb/dasshio/issues

Thanks! :slight_smile:

1 Like

Nicely done, thanks for continuing with this.

1 Like

I must be really dense… I am running the pantomax addon for dasshio and would like to switch to testing yours. I do not see the repo link to add to hassio addons. This may well be the fix I am looking for that would allow me to go back to using https. I should now be able to point other things at the internal address as well and they should work properly.

Large grey box in the first post :slight_smile:

1 Like