Metadata-Version: 2.4 Name: inkbird-ble Version: 1.4.4 Summary: Parser for INKBIRD BLE devices License-Expression: MIT License-File: LICENSE Author: J. Nick Koston Author-email: nick@koston.org Requires-Python: >=3.11 Classifier: Development Status :: 2 - Pre-Alpha Classifier: Intended Audience :: Developers Classifier: Natural Language :: English Classifier: Operating System :: OS Independent Classifier: Programming Language :: Python :: 3 Classifier: Programming Language :: Python :: 3.11 Classifier: Programming Language :: Python :: 3.12 Classifier: Programming Language :: Python :: 3.13 Classifier: Programming Language :: Python :: 3.14 Classifier: Topic :: Software Development :: Libraries Provides-Extra: docs Requires-Dist: Sphinx (>=9.0.4,<10) ; extra == "docs" Requires-Dist: bleak-retry-connector (>=1.20.0) Requires-Dist: bluetooth-data-tools (>=1.28.0) Requires-Dist: bluetooth-sensor-state-data (>=1.8.0) Requires-Dist: habluetooth (>=6.7.4) ; python_version >= "3.11" and python_version < "3.15" Requires-Dist: myst-parser (>=5.1.0,<5.2) ; extra == "docs" Requires-Dist: sensor-state-data (>=2.2.0) Requires-Dist: sphinx-rtd-theme (>=1,<4) ; extra == "docs" Project-URL: Bug Tracker, https://github.com/bluetooth-devices/inkbird-ble/issues Project-URL: Changelog, https://github.com/bluetooth-devices/inkbird-ble/blob/main/CHANGELOG.md Project-URL: Documentation, https://inkbird-ble.readthedocs.io Project-URL: Repository, https://github.com/bluetooth-devices/inkbird-ble Description-Content-Type: text/markdown # INKBIRD BLE
Parser for INKBIRD BLE devices ## Installation Install this via pip (or your favourite package manager): `pip install inkbird-ble` ## Usage `inkbird-ble` parses the BLE advertisements (and, for some models, GATT reads/notifications) emitted by INKBIRD devices into structured sensor values. Most sensors broadcast their readings, so passive parsing needs no connection: ```python from inkbird_ble import INKBIRDBluetoothDeviceData # `service_info` is a habluetooth `BluetoothServiceInfoBleak` data = INKBIRDBluetoothDeviceData() if data.supported(service_info): update = data.update(service_info) for device_key, value in update.entity_values.items(): print(device_key.key, value.native_value) # temperature 20.44 # humidity 48.07 # battery 86 ``` A few models must be polled (`async_poll`) or subscribed to (`async_start`) over a connection. See the [usage documentation](https://inkbird-ble.readthedocs.io/en/latest/usage.html) for the active device flow and for building a `service_info` outside Home Assistant. ## Contributors ✨ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)): This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome! ## Credits This package was created with [Cookiecutter](https://github.com/audreyr/cookiecutter) and the [browniebroke/cookiecutter-pypackage](https://github.com/browniebroke/cookiecutter-pypackage) project template.