我试图用Python代码将Raspberry Pi Zero W中的事件发送到micro:bit,以控制Kitronik伺服:Lite板
我已经用Kitronik示例代码和Kitronik android gamepad应用程序证明了micro:bit可以控制伺服:Lite板。在我的python代码中,我可以成功地将Pi连接到micro:bit,如下所示:
from bluezero import microbit
ubit = microbit.Microbit(adapter_addr='xx:xx:xx:xx:xx:xx',
device_addr='yy:yy:yy:yy:yy:yy')
my_text = 'Hello, world'
ubit.connect()
Kitronik发布的android应用程序发送MES events来控制伺服:Lite板。如何从python代码中发送这些内容
Bluezero库不支持
microbit
模块中的消息事件服务(MES)Bluezero的目标是易于作为BLE的介绍使用。我没有必要使用MES服务,因此没有花时间使用来自micro:bit Bluetooth Profile的信息构建一个初学者友好的API
我的理解是,在应用程序中,在连接时Python代码应该读取
MicroBit Requirements
特性(UUID:E95DB84C-251D-470A-A062-FA1922DFA9A8
)然后通过
Client Event
特性(UUID:E95D5404-251D-470A-A062-FA1922DFA9A8
)发送命令正如您将在micro:bit Bluetooth Profile文档中看到的,事件是数字。其中一些数字可以从以下位置获得:https://lancaster-university.github.io/microbit-docs/ble/event-service/#microbit-code-for-the-buggy-controller
为了获得尽可能少的代码行,下面是一个使用BLE-GATT库的示例
我没有办法测试这是否是Kitronik Servo:Lite板所需的,这只是我的最佳猜测。如果你有更多的信息,我可以更新答案
相关问题 更多 >
编程相关推荐