README
What is this repository for?
Running Tessel2 + relay module as a KNX actuator.
- Exposes a simple REST api (via restify) that you can use to configure group addresses
- Persists configuration to /app/storage so that you don't need to reconfigure after say a power outage.
How do I get set up?
- Summary of set up
$ t2 root
$ t2 push index.js
REST assured: configuring your KNX actuator doesn't require ETS anymore :)
JUC: Just Use Curl to configure the actuator
# get current configuration $ curl -s http://TesselKNX.local:8080/relays{"1":{"state":false,"groupAddrs":{"control":[],"status":[]}},"2":{"state":false,"groupAddrs":{"control":[],"status":[]}}} # bind control group address 5/0/8 to relay 1 $ curl -s -X PUT http://TesselKNX.local:8080/relay/1/control/5/0/8{"result":"OK","relays":{"1":{"state":false,"groupAddrs":{"control":["5/0/8"],"status":[]}},"2":{"state":false,"groupAddrs":{"control":[],"status":[]}}}} # bind a 2nd control group address to relay 1 $ curl -s -X PUT http://TesselKNX.local:8080/relay/1/control/5/0/80{"result":"OK","relays":{"1":{"state":false,"groupAddrs":{"control":["5/0/8","5/0/80"],"status":[]}},"2":{"state":false,"groupAddrs":{"control":[],"status":[]}}}} # bind status group address 2/3/4 to relay 1 $ curl -s -X PUT http://TesselKNX.local:8080/relay/1/status/2/3/4{"result":"OK","relays":{"1":{"state":false,"groupAddrs":{"control":["5/0/8","5/0/80"],"status":["2/3/4"]}},"2":{"state":false,"groupAddrs":{"control":[],"status":[]}}}} # delete all control group addresses for relay 1 $ curl -s -X DELETE http://TesselKNX.local:8080/relay/1/control{"result":"OK","relays":{"1":{"state":false,"groupAddrs":{"control":[],"status":["2/3/4"]}},"2":{"state":false,"groupAddrs":{"control":[],"status":[]}}}}
That's all there is to it !
DISCLAIMER: This is an experimental open-source project. As such, do not, repeat do not use it for real-world scenarios, including, but not limited to controlling real loads. You really don't want to fry your equipment or set your flat on fire. You can't say I didn't warn you!