Skip to main content

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 · PyPI Docker Image Size (latest by date) DeepSource

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

miblepy-0.4.6.tar.gz (17.1 kB view details)

Uploaded Source

Built Distribution

miblepy-0.4.6-py3-none-any.whl (17.8 kB view details)

Uploaded Python 3

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

Hashes for miblepy-0.4.6.tar.gz
Algorithm Hash digest
SHA256 6e0f5841cab2338523b0018d1816f1447ee7cbfcfee9f679538e666b2b1e04ec
MD5 df969702182f0057ccd89a950abc9981
BLAKE2b-256 fb8c1d54261364d5b3bb50dc059ab44e4a229e45e53afe7425714ff51e56e0e7

See more details on using hashes here.

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

Hashes for miblepy-0.4.6-py3-none-any.whl
Algorithm Hash digest
SHA256 c56edcc43f345325cfdb1be38b99890f3ce851d7c4e853c344af4ed09ecf7da5
MD5 9e8e535c0498e15f3dd100d5786ffda3
BLAKE2b-256 732fd1ff9bb8d50a90bb00651f836b4fc8a8dc0d515373351caec9c58dc65a9b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page