I started with Z-Wave by buying a RaZberry daughter board for my Raspberry Pi. After testing several management applications, i decided to develop a solution by myself, because i was quite disappointed with the available apps. I want to have a robust and layered software architecture, which works well with my devices. And no all-in-one application, which may work with many devices, but not with mine very well. So i decided to begin with a simple REST server connected to the the Z-Wave controller to offer the OpenZwave API for the web and be consumed by other applications.
For a real-worl example, please check homebridge-zfunk.
- Install OpenZWave, see Installation
- Install zfunk with
npm install zfunk --global
Run the terminal application, e.g.:
zfunk -v -c /dev/ttyUSB20
Usage: zfunk [options] Options: -h, --help output usage information -V, --version output the version number -c, --com-port [port] Set [port] for Z-Wave controller. Defaults to "/dev/ttyUSB0" -d, --db-path [path] Set [path] for DB. Defaults to "~/.zfunk/db.json" -w, --web-port [port] Set [port] for REST/WS service. Defaults to "3000" -s, --secret-or-key [secret] Set [secret] for authenticating web requests. Defaults to "ZFunk" -u, --users [email1,email2,...] Allow [emails...] to access API and print out tokens. -m, --mount-path [path] Set [path] to mount files for an UI -v, --verbose Increase verbosity
MIT © Sebastian Krüger