You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

HM-10 BLE模块自定义服务创建问题及替代方案咨询

针对HM-10 BLE模块自行车追踪器开发的问题解答

1. 能否用HM-10创建新的BLE服务?

不能。HM-10的原厂固件AT指令集仅支持修改现有自定义服务的UUID,不提供动态创建新服务的指令接口。这类低成本BLE模块的固件通常是预编译固化的,仅开放有限的配置项,没有预留服务创建的底层接口。除非你能找到适配HM-10的第三方自定义固件并自行烧录,但这种操作风险高,且缺乏官方技术支持,不建议在量产项目中采用。

2. 能否用单个服务传输所有数据?

可以,有两种可行方案:

  • 复用预定义服务的自定义特征:比如选择位置与导航服务(0x1819),利用模块允许修改特征UUID的功能,创建一个自定义特征,将速度、位置、时间、日期、电量数据打包成二进制帧传输。例如定义帧格式:
    • 字节0-3:速度(32位浮点型)
    • 字节4-11:纬度(64位双精度)
    • 字节12-19:经度(64位双精度)
    • 字节20-23:时间戳(Unix时间,32位整数)
    • 字节24:电量百分比(0-100,8位整数)
      nRF Connect/BLE Scanner可以读取该特征的原始二进制数据,你也可以通过APP的自定义解析功能(或自行编写简单解析逻辑)将数据转换为可读格式。
  • 复用现有特征扩展数据:如果模块允许修改预定义特征的数据长度,也可以直接在电池服务(0x180F)或时间服务(0x1805)的特征中追加其他数据,但这种方式会打破BLE规范的特征定义,可能导致部分APP解析异常,优先推荐第一种方案。

3. 支持AT指令创建新服务的BLE模块推荐

以下模块均提供支持自定义服务/特征创建的AT指令集:

  • JDY-23:低成本模块,AT指令集支持创建多个自定义服务和特征,配置灵活,适合小型项目。
  • ESP32系列BLE模块(如ESP-01S BLE版):官方AT固件支持通过AT+BLEGATTSSRVCREATE等指令创建自定义服务和特征,同时具备更强的算力,适合需要额外处理逻辑的项目。
  • nRF52832 AT模块:部分厂商基于nRF52832开发的模块提供完整的AT指令集,支持动态创建BLE服务、特征,兼容性和稳定性较好。
  • CC2541第三方AT固件模块:部分第三方固件为CC2541添加了服务创建的AT指令,功能丰富,但需注意选择可靠的固件来源。

内容的提问来源于stack exchange,提问作者sofien

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 02:37:20