Control your Haiku SenseME devices with MQTT.

npm install haiku2mqtt@1.1.0



A bridge between Haiku smart fans and MQTT.

NPM Version GitHub license

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.

Getting Started

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

Topics and Payloads

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

Release History

  • 1.1.0

    • Small bugfix for error handling
    • Update haiku-senseme
    • Switch to yalm for logging
  • 1.0.0

    • The first release.


Zach Bean – zb@forty2.com

Distributed under the MIT license. See LICENSE for more detail.