在为树莓派配置BLE的时候,遇到了各种问题,本文将介绍如何为树莓派配置BLE,这里主要针对的是可以支持64Bit系统的3B及后续的树莓派版本。
在文章开始前,先来枚举以下可能你遇到的坑或者将遇到的坑:
- 使用官方提供的Raspbian系统,可以正常调用蓝牙功能,但无法安装新版本的Miniforge等conda包
- 使用原生64Bit的Ubuntu系统,各种自动、手动安装bluez后,使用 hciconfig -a 却找不到蓝牙设备
如果你也遇到上述的问题,那么可以继续阅读下去,下面将会解决这些问题,避免你踩到同样的坑。
Raspbian问题
首先,如果你是使用树莓派3B以前的版本,反正也不支持64Bit系统,所以直接安装官方提供的Raspbian系统就可以了。因为官网提供的系统直接就安装好了支持,无论是 hciconfig hcitool 还是 gatttool 都是可以直接使用的。
但是,Raspbian存在一个问题,就是这个系统原生是32Bit的系统。虽然有提供转换64Bit的方法,但是通过修改 /boot/config.txt 来实现 64Bit 系统,然而修改完成后,安装 Miniforge 会报出 conda.exe could not found 的错误。该错误就是系统不支持64Bit原因所致。
为什么要执着要安装 Miniforge ?因为在支持树莓派 ARM 的 conda 环境,无非就只有 Miniconda 和 Miniforge,而 Miniconda 的版本还是停留在非常远古的时代,所以如果想愉快的使用 Python,那只有安装 Miniforge。但 Miniforge 又没有提供32