Python bindngs for the Xiaomi Mi Home zigbee hub and associated devices
Switch branches/tags
Nothing to show
Clone or download
Latest commit c036953 Nov 30, 2016
Permalink
Failed to load latest commit information.
mihome preparing release... Nov 30, 2016
MANIFEST.in preparing release... Nov 30, 2016
README.md preparing release... Nov 30, 2016
setup.cfg releasing Nov 30, 2016
setup.py woops, readme.md not readme.rst Nov 30, 2016

README.md

Library to use the Xiaomi Mi Home zigbee hub (receive paquets, events for now).

Example of usage as a simple mqtt relay:

import paho.mqtt.client as mqtt

MQTT_SERVER = "192.168.0.149"
MQTT_PORT = 1883

PATH_FMT = "xiaomi/{model}/{sid}/{prop}" # short_id or sid ?

def prepare_mqtt():
  client = mqtt.Client()
  client.connect(MQTT_SERVER, MQTT_PORT, 60)

  return client

def push_data(client, model, sid, cmd, data):
  for key, value in data.items():
      path = PATH_FMT.format(model=model,
                             sid=sid,
                             cmd=cmd,
                             prop=key)
      client.publish(path, payload=value, qos=0)

client = prepare_mqtt()
cb = lambda m, s, c, d: push_data(client, m, s, c, d)
connector = XiaomiConnector(data_callback=cb)

while True:
    connector.check_incoming()

For more information on the protocol and devices, see my notes: https://notes.jmsinfor.com/blog/post/admin/Xiaomi-Hub