目前很多使用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速率,长距离等,安全特性:

  1. 配对 (Pairing):设备协商、生成共享密钥的过程,是安全通信的起点。
  2. 绑定 (Bonding):配对完成后永久保存密钥,下次重连自动复用,不用重复配对,设备成为 “已绑定信任设备”。
  3. 设备认证 (Authentication):校验双方密钥一致,确认对方是合法设备。
  4. 加密 (Encryption):使用 AES-CCM 算法加密通信数据,防止内容被窃听,加密由蓝牙控制器硬件执行。
  5. 消息完整性 (Message integrity):防数据篡改、伪造,保证报文未被恶意修改。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐