I've been using a custom Xiaomi Aqara MQTT bridge for a while, but it loads my Raspberry Pi Model B a lot as it was written in Python.
This project includes
This project use Bazel to build, although go build
would probably works fine if you have the dependencies installed.
To build and run:
bazel run :go-aqaramqtt
Bazel will download and install all dependencies, including the Go compiler!
For cross compiling to Raspberry Pi:
bazel build :rpi
The output binary will be in bazel-bin/linux_arm_pure_stripped/rpi
To update dependencies using bazel-gazelle. This should be run when you've created new files or import an external module.
bazel run :gazelle
To add external dependencies:
bazel run :gazelle -- update-repos github.com/example/module
Option | Required | Description |
---|---|---|
--help | Read help | |
--ip | Xiaomi Gateway IP address | |
--sid | Xiaomi Gateway SID | |
--key | Y | Xiaomi Gateway encryption key (Tutorial). Use environment variable AQARA_KEY instead. |
--iface | Y | Network adapter to use for Xiaomi communication (eg. eth0) |
--mqtt-server | Y | Protocol and address of MQTT server (eg. tcp://192.168.1.1:1883. Supported scheme: tcp, ssl, ws) |
--username | MQTT username. Use environment variable MQTT_USERNAME instead. |
|
--password | MQTT password. Use environment variable MQTT_PASSWORD instead. |
|
--prefix | MQTT prefix. Default to "xiaomi" |
Licensed under the MIT license
This project is unmaintained. You may use it, but issues and pull requests might be ignored.