跳转到主要内容

用于读取米家植物土壤传感器数据的库

项目描述

miflora - 小米植物传感器的库

PyPI PyPI PyPI GitHub Actions Coveralls github Plants healty and growing GitHub license

此存储库曾位于 open-homeautomation/miflora 命名空间下,最初由 @open-homeautomation 创建。

此库允许您从小米植物土壤传感器读取传感器数据。

功能

它支持读取传感器上的不同测量值

  • 温度
  • 湿度
  • 导电性
  • 亮度

使用此库,您需要在电脑上连接蓝牙低功耗适配器。您还需要一个小米米家植物传感器。

后端

遗憾的是,目前没有适用于Python的通用蓝牙低功耗库,因此该项目目前支持两种蓝牙实现

  • bluepy库
  • bluez工具(已弃用,通过gatttool包装器)
  • pygatt库

bluepy(推荐)

要使用bluepy库,您必须在您的机器上安装它,在大多数情况下,可以通过以下方式完成:pip3 install bluepy

使用bluepy后端的示例

from miflora.miflora_poller import MiFloraPoller
from btlewrap.bluepy import BluepyBackend

poller = MiFloraPoller("some mac address", BluepyBackend)

这是要使用的后端库。

bluez/gatttool包装器(已弃用)

:warning: bluez团队已将gatttool标记为已弃用。此解决方案可能仍然在某些Linux发行版上工作,但不再推荐。

要使用bluez包装器,您需要在您的机器上安装bluez工具。不需要额外的python库。一些发行版已将gatttool二进制文件移动到单独的包中。请确保您机器上有此二进制文件。

使用bluez/gatttool包装器的示例

from miflora.miflora_poller import MiFloraPoller
from btlewrap.gatttool import GatttoolBackend

poller = MiFloraPoller("some mac address", GatttoolBackend)

如果您的平台不受bluepy支持,则应仅使用此后端。

pygatt

如果您有一个由Blue Giga支持的设备,并且该设备受pygatt支持,您必须在本机上安装bluepy库。在大多数情况下,可以通过以下方式完成:pip3 install pygatt

使用pygatt后端的示例

from miflora.miflora_poller import MiFloraPoller
from btlewrap.pygatt import PygattBackend

poller = MiFloraPoller("some mac address", PygattBackend)

依赖项

miflora依赖于btlewrap库。如果您通过PIP安装miflora,btlewrap将自动安装。如果不安装,您将需要手动安装btlewrap

pip3 install btlewrap

故障排除

用户经常遇到蓝牙适配器与传感器之间的通信问题。以下是一些常见的尝试方法。

电池耗尽

电池通常可以持续约一年,但在那之前也可能因未知原因而失效。因此,首先要检查电池是否良好:取出电池,等待3秒,然后放回。传感器的灯应该闪烁。如果不是:更换新电池。

范围

蓝牙适配器和传感器之间的距离应小于5米。尝试将传感器和适配器放得更近,看看是否能解决问题。如果范围是问题,有一些通过MQTT提供的代理/中继器。

室外

如果您在室外操作传感器,请确保传感器已防雨。电池在-10°C以下的功率会降低。因此,您可能无法在此温度下读取数据。还要确保您附近有蓝牙适配器。

无线电干扰

蓝牙低功耗通信并不总是可靠的。由于其他无线电干扰,可能会出现中断。标准解决方案是重试或更频繁地轮询您的传感器。这也是最难分析和调试的问题。

Raspberry Pi

如果您正在使用Raspberry Pi,请确保您的操作系统是最新的,包括最新的内核和固件。有时有一些有用的蓝牙修复。还要确保您有一个良好的电源供应(建议3 A)因为这会导致许多地方出现间歇性问题。

贡献

请参阅CONTRIBUTING.md

依赖于miflora的项目

以下列出了一些使用此库的项目

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码发行版

miflora-0.7.2.tar.gz (13.7 kB 查看哈希值)

上传时间 源代码

构建发行版

miflora-0.7.2-py3-none-any.whl (12.0 kB 查看哈希值)

上传时间 Python 3

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面