控制和Kamoer滴水Pro泵

btdripper的Python项目详细描述


滴头

用python控制你的植物灌溉泵。

安装

pip3 install btdripper

演示

您可以从命令行运行btdripper.py

$ btdripper.py --help
usage: btdripper.py [-h] [--adapter ADAPTER] [--mac MAC] [--duration DURATION]

Dripper Pro SDK Demo

optional arguments:
  -h, --help           show this help message and exit
  --adapter ADAPTER    Name of Bluetooth adapter, defaults to 'hci0'
  --mac MAC            Mac address of Dripper Pro device to connect to
  --duration DURATION  Duration in seconds to turn on the pump. Default is 1s

或者直接导入到项目中

$pythonPython3.6.8(default,Jan142019,11:02:34)>>>importbtdripper>>>dripper=btdripper.BtDripper()>>>dripper.on()>>>dripper.off()

API

首先,您需要创建一个新的BtDripper实例。 当使用空构造函数时,库将尝试连接到它找到的第一个名为“grow_c”的ble设备。 如果您已经知道dripper的mac地址,那么可以将其作为参数来加速连接。参数是mac_address,它接受格式为"90:e2:02:9c:db:50"的地址。 如果您有多个蓝牙适配器,可以使用adapter_name参数提供(默认值为"hci0") 如果需要支持多个蓝牙设备,还可以通过manager参数重用gatt.DeviceManager

btdripper类支持以下方法:

  • on-打开滴头
  • off-关闭滴头
  • send_sequence-发送一系列用户定义的字节字符串,如果您想亲自试验的话。

注意,如果发送格式错误的自定义序列,可能会导致driiper的软件挂起。它不会重新连接,只有一个电源循环才有帮助。

待办事项

这是一个非常基本的实现。应该可以找出定时器模式是如何工作的,并将其集成。也许有一种方法可以让泵以较低的速度运转?

当前没有超时或错误处理。另外,如果图书馆在意外情况下出现故障,我也不会感到惊讶。自负风险使用:)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何在wix中为TARGETDIR和SourceDir提供路径?   java在custom starter中访问spring应用程序名称   没有构建带有ActionBarSherlock的java Android项目   java按钮边框不显示   JavaSpring:从表单数据获取文件输入流   javascript通知侦听器服务   java在Junit测试时遇到异常   java从文件中读取特定值   JavaFX:在很短的时间内隐藏窗格   如何在Docker中使用用户定义的引用类来容器化Java应用程序?   java如何更改项目的编译SDKversion?   是否有任何java/spring方法可以使用HttpServletRequest存储当前登录用户的会话信息?   Java中的双大于号(>>)?   Java阵列2x2及其工作原理   java Spring引导ddl自动生成器   java如何利用大量数据传输优化服务器客户端应用程序?   java在使用Windows的FLAG_全屏时ICS和Jelly Bean之间的不同行为   java如何获取当前在回收器视图的线性布局中不可见的视图