A bridge between Haiku smart fans and MQTT.
haiku2mqtt is a Node.js application that links SenseME-enabled devices by Haiku to an MQTT broker. It is designed to be used to integrate these devices into a home automation system.
haiku2mqtt is distributed through NPM:
npm install -g haiku2mqtt
Running it is likewise easy:
haiku2mqtt # if your MQTT broker is running on the same system
haiku2mqtt -b mqtt://<hostname> # if your broker is running elsewhere
haiku2mqtt --help # to see the full usage documentation
This app is intended to conform to the mqtt-smarthome architecture. The topics used by the app are generally of the form:
Topic Template | Purpose |
---|---|
haiku:<id>/status/path/to/prop |
New values will be published here as the device reports them |
haiku:<id>/set/path/to/prop |
New values published to these topics will be propagated to the device. |
haiku:<id>/get/path/to/prop |
Publishing anything to these topics will request updated values from the device. |
To see a complete list, including sample values, see TOPICS
Contributions are of course always welcome. If you find problems, please report them in the Issue Tracker. If you've made an improvement, open a pull request.
Getting set up for development is very easy:
git clone <your fork>
cd haiku2mqtt
npm install -g babel-cli # if you don't already have it
npm install
And the development workflow is likewise straightforward:
# make a change to the src/ file, then...
npm run build
node dist/index.js
# or if you want to clean up all the leftover build products:
npm run clean
1.1.0
haiku-senseme
yalm
for logging1.0.0
Zach Bean – zb@forty2.com
Distributed under the MIT license. See LICENSE for more detail.