As a mother tongue PHP software developper, I wanted to write my own domotik soft.
I searched for a long time to find a way to interact with a Zwave network.
Finally the best approach that I found is to write a REST API based on node JS. The purpose of this project is to give a friendly way for third party applications to interact with a zwave network
This project provides a Docker container with Node-openzwave installation
- git clone
- cd domotik-node/docker
- docker-compose up -d
browse http://host-ip:8081/api
Development mode
docker-compose run node-server npm run watch:dev
All the configuration is stored in app/server/config
- zwaveConfig.js
driverPath => The path of the zwave adapter. Default id /dev/ttyACM0
- apiConfig.js
port => The port to access the API. default is 8081
GET /api
Get version
GET /api/device/list
Get all ready devices in the network
GET /device/get-node-values/user/:nodeId
Get node user values
GET /device/get-node-values/config/:nodeId
Get node config values
GET /api/device/:nodeId/:valueId/set-value/:value
Set value for nodeId and valueId
GET /api/driver/home-id
Get your network home ID
GET /api/driver/start-inclusion
Start the Inclusion Process to add a Node to the Network.
GET /api/driver/start-exclusion
Start the Exclusion Process to add a Node to the Network.