“为什么我家 BLE 传感器两个月就电量告急?”
很可能是你在广播参数上,让电池内心流泪了……
在 BLE 的世界里,不连接也能说话——靠的就是广播(Advertising)。
简单来说:
它就像路边发传单的:
“免费测体温啦!支持蓝牙连接哦!”
那广播喊得多不多、多快、哪喊,就决定了它到底是“激情销售”还是“节能大师”。
常见可调参数如下:
参数名称 | 含义 | 单位 | 对功耗影响 |
---|---|---|---|
Advertising Interval | 广播时间间隔 | ms(通常20~10240) | 最大关键项 |
Advertising Channels | 广播使用的通道数(37,38,39) | - | 少用略省电 |
TX Power | 发射功率 | dBm | 功耗正比,距离也变 |
Advertising Type | 广播类型(可连接/不可连接/定向) | - | 可连接更耗功 |
Duration / Timeout | 广播总时长 | s | 控制广播总周期 |
来看个案例:
广播间隔 | 每秒广播次数 | 1天广播总次数 | 耗电情况(假设每次1mA*1ms) |
---|---|---|---|
20ms | 50次 | 4,320,000次 | 超级耗电,电池崩溃⚡️ |
100ms | 10次 | 864,000次 | 中规中矩 |
1000ms | 1次 | 86,400次 | 非常省电 |
2000ms | 0.5次 | 43,200次 | 养老模式 |
你可以理解为:
选参数 = 选择你产品的“性格”
应用场景 | 推荐广播间隔 | 广播类型 | 发射功率 |
---|---|---|---|
智能手环(秒连体验) | 20~50ms | 可连接 | 中等 0 dBm |
体温贴片(低功耗) | 500~2000ms | 不可连接 | -4 ~ -8 dBm |
室内 Beacon 定位 | 100~300ms | 不可连接 | 4 dBm(提高距离) |
连接前摇(快速发现) | 初始20ms,10秒后调高 | 可连接 | 动态调 |
✅ 建议做成动态广播参数调节策略:
// 初始快速广播
sl_bt_advertiser_set_timing(handle, 32, 48, 0, 0); // 20~30ms
// 超过10秒无人连接后切换为慢速省电
sl_bt_advertiser_set_timing(handle, 1600, 1600, 0, 0); // 1s广播
下面是超粗略估算:
每次广播电流 × 持续时间 × 广播频率 × 天数 = 总耗电
举个栗子:
那你电池是 100mAh,用 10 天就掉 86%?别怀疑,你配参数太狠了。
BLE 广播参数,调得好,设备续航笑哈哈;调不好,电池嗷嗷哭!
所以说,别图“秒连”,把设备当“话痨”;
⏳ 也别盲省,把广播调成 5s,连接都连不上!
喜欢这种通俗又专业的讲解?欢迎点赞收藏!
下次我们一起拆解:连接间隔、连接超时、slave latency 的背后省电学问!