0%

用新还是用稳

在做 GATT CLI 时,GATT Client 有两个选择:

  • Bluepy。BlueZ 的 Python 封装,运行在 Linux 上。
  • Zephyr。运行在 MCU 上。

最初选择了 bluepy,因为得益于 Bluepy 的 Python 封装,编写和调试特别方便。并且可以运行在电脑上,无需外接设备。

但在实施过程中发现了一些问题:

  • 树莓派支持最好,但其它平台有问题。

  • 启动蓝牙慢

  • 连接 peripheral 慢

  • 扫描信息不准确(macOS 的 Linux 虚拟机上)

  • 偶现断开连接。

  • 文档不全

  • 难以调试

总结下来就是:不稳定,不熟悉,不放心

可以做 demo,但不可做产品。

最后还是选择了稳定并且熟悉的 Zephyr + nRF52832 组合。速度快,稳定,好调试。

在 2013 年学习 USB 时的笔记,那时候不喜欢写文字,而是直接画图,感觉图最能直观的理解知识。

阅读全文 »

SWD - Serial Wire Debug,是一种两线制的 ARM 调试接口,是 JTAG 接口的一种替换。

阅读全文 »

Point-to-Point Protocol,是点对点数据链路层协议。

阅读全文 »