Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/hardillb/physical-web-lightswitch

A Eddystone/Physical Web wrapper for Belkin Bulbs
https://github.com/hardillb/physical-web-lightswitch

Last synced: about 2 months ago
JSON representation

A Eddystone/Physical Web wrapper for Belkin Bulbs

Awesome Lists containing this project

README

        

# Physical Web Light Switch

This is a relativly simple wrapper round some of the work I've done to interact with Belkin WeMo lightbulbs

The creates a Eddystone beacon that broadcasts a URL for a web interface to switch a bulb on/off and set
the brightness.

## Config

Config data goes in config.js. You can set the following:

- The port the web server listens on
- The short URL to broadcast
- The device id of the bulb/group to control
- The beacon name

The divice id is the id of the bridge + '-' + id of the bulb/group. This isn't the most userfriendly at the
moment but it works.

```
module.exports = {
deviceID: '231442B01005F2-94103EA2B27803ED',
port: 3000,
shortURL: 'https://s.loc/l'.
name: 'Lights'
};
```

The deviceID is the serial number of the WeMo Bridge and the light/group id concatenated with a '-'.

To run as a user other than root on Linux you will need to grant the NodeJS executable the right priveledges,
this can be done with this command:

```sudo setcap cap_net_raw+eip $(eval readlink -f `which node`)```

## TODO

- Add Utility to print out device names and device id's to make creating the config file easier
- Add current state to the web interface
- Create basic Android App