miblepy fetches data from various (Xiaomi/Mijia/Mi) Bluetooth LE devices and push it to a MQTT broker in a coordinated, sequential manner.
Project description
miblepy ·
miblepy fetches data from various (Xiaomi/Mijia/Mi) Bluetooth LE devices and push it to a MQTT broker. For every device supported, there are already libraries or anything else to fetch the data from - and they work perfectly. But as they are separated and often run as distinct (cron)jobs, which are not aware of each other, or even as daemons... the fight for the BLE interface starts...
miblepy solves this by acting as a "coordinator" to fetch the data in a controlled, sequential way.
Currently this is a private project tailored to my needs - but open for PRs
Usage
miblepy is available as pip package and Docker image.
Install
via pip
pip install miblepy
manual
-
clone this repo & cd to it
git clone https://github.com/benleb/miblepy.git && cd miblepy
-
install via
-
poetry
poetry install
-
pip
pip install .
-
Configuration
Copy mible.toml
to ~/.mible.toml
and adjust settings to your needs. ~/.mible.toml
is the default location where mible
expects your configuration. You can change this via --config
.
Run
Start a single round of fetching from your configured sensors in ~/.mible.toml
mible fetch
try mible --help
to get more info.
To continously fetch data from your sensors check out the systemd timer and service. You can also use a classic cronjob or even an automation provided by your smart home system (home assistant for example)
Docker
The :latest
tag is built from master, other tags can be found on Docker Hub
Mount your miblepy config to /miblepy/mible.toml
docker run --privileged --volume "mible.toml:/miblepy/mible.toml:ro" benleb/miblepy
Supported devices
- VegTrug / Mi Flora plant sensors (Flower Care)
- (Xiaomi?) Mijia Bluetooth Temperature Humidity sensors with LCD (LYWSD03MMC)
- (Xiaomi?) Mi Body Composition Scale 2 (XMTZC05HM / XMTZC02HM)
Support a new device
- TODO
Check the already available plugins to see some examples.
Thanks to
- @ChristianKuehnel | plantgw miblepy's idea is based on his plantgw project
- @open-homeautomation | miflora Library to interact with FlowerCare/MiFlora devices
- @JsBergbau | MiTemperature2 Library to interact with Mi Bluetooth LCD Thermometers
- @lolouk44 | xiaomi_mi_scale Library to interact with Mi Body Composition Scale 2
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file miblepy-0.4.6.tar.gz
.
File metadata
- Download URL: miblepy-0.4.6.tar.gz
- Upload date:
- Size: 17.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: DepHell/0.8.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6e0f5841cab2338523b0018d1816f1447ee7cbfcfee9f679538e666b2b1e04ec |
|
MD5 | df969702182f0057ccd89a950abc9981 |
|
BLAKE2b-256 | fb8c1d54261364d5b3bb50dc059ab44e4a229e45e53afe7425714ff51e56e0e7 |
File details
Details for the file miblepy-0.4.6-py3-none-any.whl
.
File metadata
- Download URL: miblepy-0.4.6-py3-none-any.whl
- Upload date:
- Size: 17.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: DepHell/0.8.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c56edcc43f345325cfdb1be38b99890f3ce851d7c4e853c344af4ed09ecf7da5 |
|
MD5 | 9e8e535c0498e15f3dd100d5786ffda3 |
|
BLAKE2b-256 | 732fd1ff9bb8d50a90bb00651f836b4fc8a8dc0d515373351caec9c58dc65a9b |