linux上的蓝牙低能耗python库
bluezero的Python项目详细描述
Bluez Stack的简单python接口
名称和目标
这个库的目的是提供一个api来访问bluez和zero样板代码。
目标
为希望在代码中使用蓝牙功能的用户提供简化的API。 该库将使用对bluez d-bus api的调用,并使用“合理的”默认值来帮助简化。 它旨在支持创建有趣的STEM活动而无需 解释bluez api或编写一个事件循环。
除了api之外,它还将包含如何连接到常见的bluetooth smart(ble)对象的示例。 在他们周围(或者至少容易接近他们)。 这些例子需要在不需要签署(或破坏)保密协议的情况下编写。
状态
虽然我们希望它易于使用,但并不意味着它易于创建。 这个图书馆还处于早期阶段,所以事情可能会改变和破裂。提前道歉! 我们会尽量使它稳定下来。不管bluez中有多少功能 仍被标记为实验性的。 该库假设您使用的是带有Bluez5.43的Linux版本。例如raspbian stretch
开始
如果你是来这里的,特别是当你刚接触蓝牙低能耗时,那么 教程可能是一个很好的开始。 以下教程是基于 一个树莓皮3和一个微型:比特。更多详情请访问: https://ukbaz.github.io/howto/ubit_workshop.html
示例
如果你有冒险精神,图书馆里还有其他一些例子
适配器
适配器示例.py
这将检查它是否可以在运行代码的计算机上找到蓝牙适配器。
它将打印以筛选各种信息,并在扫描
附近的设备
关贸总协定客户(中心角色)
microbit民意测验.py
这个例子使用了用bluezero编写的micro:bit API。
您需要将蜂鸣器连接到插脚0才能使播放哔哔声正常工作。
信标
eddystone url beacon.py
你需要把BlueZ Bluetooth放入这个实验模式。 文档中其他地方的更多细节。 一个简单的Eddystone URL信标。 您可以通过手机上的任何物理Web应用程序读取正在广播的URL
扫描仪
eddystone scanner.py
这个例子使用eddystone格式扫描信标。 它将报告uid信标和url信标。
这使用了aioblescanpython库,它要求使用sudo运行代码。
gatt服务器(外围角色)
这开始是非常实验性的… 您需要让bluez处于实验模式并调整dbus配置 打开“ukbaz.bluezero”权限的文件
CPU温度.py
此示例通过单个特性传输CPU的温度。 如果您的硬件不支持vcgencmd,则更改获取CPU温度() 函数使用随机生成的温度。 值仅在打开通知时更新。
每年
这个例子模拟了两条线路上的基本uart连接:txd和rxd。
它基于北欧半导体公司的专用uart服务规范。 可以使用Nordic的NRF UART应用程序查看发送到此服务的数据 半导体android和ios的uctors。
它使用BlueZero外设文件(10级),因此应该比以前的CPU更容易 温度的例子是100级。