ESP32 C3开发实战 -6(BLE组件-1)
·
目前很多使用WIFI联网的IOT设备,都会增加一层BLE组件。主要用来对设备进行配置,包含网络SSID,密码,服务器地址,设备ID,OTA状态等数据。比起使用APP和WIFI来进行网络配置,无疑是更快速和便捷的
ESP-IDF是支持经典蓝牙(BR+EDR)和 BLE两大蓝牙协议栈的,在组件配置里面是:
1:Bluedriod,支持经典蓝牙和BLE,Flash ≈ 350KB,RAM ≈ 50–100KB,开销大
2:NimBLE,仅BLE是开源轻量化BLE协议栈,Flash ≈ 50KB,RAM ≈ 10–30KB
因为我的项目,也是基于BLE进行配置的,NimBLE已经满足当前的需要。
Nimble是 Apache Mynewt 项目里的一个开源 BLE 协议栈,专门给嵌入式设计,只做 BLE,不做经典蓝牙。 ESP-IDF 把它移植过来,作为 Bluedroid 的轻量替代方案。
既然用到了NimBLE,再去了解到,这个组件也是支持到BLE5.0的绝大部分特性:比如:2M速率,长距离等,安全特性:
- 配对 (Pairing):设备协商、生成共享密钥的过程,是安全通信的起点。
- 绑定 (Bonding):配对完成后永久保存密钥,下次重连自动复用,不用重复配对,设备成为 “已绑定信任设备”。
- 设备认证 (Authentication):校验双方密钥一致,确认对方是合法设备。
- 加密 (Encryption):使用 AES-CCM 算法加密通信数据,防止内容被窃听,加密由蓝牙控制器硬件执行。
- 消息完整性 (Message integrity):防数据篡改、伪造,保证报文未被恶意修改。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)