/DashScanner

Detect and pass on ARP packets received from an Amazon Dash

Primary LanguagePythonMIT LicenseMIT

DashScanner

The DashScanner service monitors the network for ARP discovery packets from the Amazon Dash and passes the source MAC on to a webservice. In conjunction with Node-Red, it makes it easy to trigger complex actions.

To set up the service:

  1. Edit DashScanner
  • Set DIR to the checkout directory.
  1. Edit dash_scanner.py
  • Set DASH_URL to the webservice waiting for MAC posts.
  1. Set DashScanner and dash_scanner.py to executable.
  2. Copy the DashScanner file to /etc/init.d/DashScanner
  3. Depending on your distro, you may have to run the following commands to register the new service:
sudo update-rc.d DashScanner defaults
sudo update-rc.d DashScanner enable

Now, start the process with:

sudo service DashScanner start

For the webservice side, set up Node-Red with an "HTTP In" node with Method:POST and URL:/dash. You can then use this node to trigger a wide variety of different functionality and services.

Originally, I wrote a Node-Red node to handle the ARP capture directly. I didn't like runnin my entire Node-Red service as root, though, so I moved the functionality to it's own service.

This project is inspired heavily by Ted Benson's excellent post on triggering on Dash ARP packets.