Lightweight IoT Gateway that can run in a Makerspace. It has been tested on Linux and OS X.
It communicates mostly via XMPP so it is secured through TLS. Configuration happens through conf/gateway.conf. Alternatively on OpenWRT UCI parameters are accepted as well.
-
Install Go. You can download binaries from the Go Download Page. For OS X you can get the .pkg file. On Ubuntu you can just enter
sudo apt-get install golang-go
. -
Set Go environment variables:
export GOROOT=/usr/local/go
andexport GOPATH=$HOME/go
(you may needmkdir $HOME/go
beforehands)Most users add both lines to their
$HOME/.bash_profile
file. -
Download Gateway and run it
go get gopkg.in/gcfg.v1
go get github.com/mattn/go-xmpp
go get github.com/FabLabBerlin/easylab-lib
go get github.com/FabLabBerlin/easylab-gw
cd $GOPATH/src/github.com/FabLabBerlin/easylab-gw
go build .
./easylab-gw
After setting up a smart plug, login as ubnt / ubnt through SSH and change the password using passwd
.
Credit goes to Datanoise for concept of OpenWRT integration and using XMPP which allows for lightweight TLS usage.