如何优化示例'extent_peripheral_template'的功耗

7个帖子/ 0新
最后一篇
HARDY.CHEN.
离线
最后一次露面:1年7个月前
加入:2015-03-13 04:20
如何优化示例'extent_peripheral_template'的功耗

嗨,

我想以“empty_peripheral_template”的示例开始我们的应用程序。
但是,在执行“DA1D14580_BEACON_3.40.6”的情况下进行功耗比较后,我发现“extent_peripheral_template”中有额外的2.x ma。
(注意:我设置了允许extent_peripheral_template运行到ext_sleep模式的相应配置)

所以,有人可以评论哪些优化这个例子'empty_peripheral_template'的功耗,以至于'da14580_beacon_3.40.6'相同的级别?

测量是在EVB'DA14580DEVKT-B'完成的。
使用SDK 5.x的示例'empty_peripheral_template',空闲电流(无RF)约为2.x mA。
使用示例'da14580_beacon_3.40.6',空闲电流(no rf)约为0x ma。

设备:
mt_dialog.
离线
最后一次露面:2周2天前
员工
加入:2015-06-08 11:34
嗨Hardy.chen,

嗨Hardy.chen,

您可以尝试使用此帖子上提到的CodeSnippethttp://support.dialog-semicondiondiondum/these-seems-bug-da14580dialogbea ...

谢谢mt_dialog.

HARDY.CHEN.
离线
最后一次露面:1年7个月前
加入:2015-03-13 04:20
嗨mt_dialog,

嗨mt_dialog,

我不太了解你的评论。要注意的是,我从SDK 5.0.2上工作了“empty_peripheral_template”。
在SDK 5.0.2中检查源代码后,只有一个用于更改位于函数'lld_adv_start_patch'的广告间隔'ble_advtim_set'的一行。

您是否希望我在另一个帖子上建议使用*添加*代码片段(试图在使用信标示例时解决非Conn广告的问题)?
我应该在哪里添加它?

HARDY.CHEN.
离线
最后一次露面:1年7个月前
加入:2015-03-13 04:20
嗨,

嗨,

我发现一个例子'empty_peripheral_template'根本没有进入睡眠模式。这可能是闲置状态额外功耗的原因。
允许睡眠模式所需的配置/更改在哪里?

mt_dialog.
离线
最后一次露面:2周2天前
员工
加入:2015-06-08 11:34
嗨Hardy.chen。

嗨Hardy.chen。

在SDK5中,您可以在user_config文件夹中更改user_config.h文件中的睡眠模式。只需将app_default_sleep_mode更改为任何相关睡眠。我以为你的睡眠已经启用(来自你的第一篇文章)。就标信标优化而言,我告诉您在上一篇文章中发表评论的功能是设置两个ADV_XXX数据包之间的广告数据包间隔的函数,这是信标参考设计为额外的低功耗。

谢谢mt_dialog.

HARDY.CHEN.
离线
最后一次露面:1年7个月前
加入:2015-03-13 04:20
嗨mt_dialog,

嗨mt_dialog,

是的,我在示例'extent_peripheral_template'上设置相应的睡眠模式。
但是,从信标参考(设置两个ADV_XXX数据包之间的广告包间隔)如此高达1〜2mA的额外节电(将广告分组间隔设置为1〜2mA?

我的计划是将“extent_peripheral_template”作为基础,并创建自己的IBeAcon应用程序。
所以,有2个必需品:
1.低功耗作为示例'da14580_beacon_3.40.6'。
2.使用包含扫描响应数据的ADV_IND和ADV_NON_CONN支持。

如果我理解正确,当我尝试修复1),例如'empty_peripheral_template',那么它会违反2),其中以下代码应该是注释出来的。
你能详细说明你的建议吗?
-
if(app_advertise_mode == gapm_adv_non_conn)
ble_advtim_set(500);
-

mt_dialog.
离线
最后一次露面:2周2天前
员工
加入:2015-06-08 11:34
嗨Hardy.chen,

嗨Hardy.chen,

App_Template中的功耗显然是从未设置睡眠能力的事实如此之高。现在睡觉是开启的,你还有约1〜2 ma的差异吗?

不,你在模板和灯塔之间有很多差异的事实不是广告数据包的间隔,我有点与你以前的帖子混淆adv_scan_ind.是,当您尝试修复1时,您将违反2当前时间编号。尝试扩展功能BLE_ADFTIM(500)中的时间,以便您的广告适合扫描数据的侦听期。您可以使用函数compulate_arch_adv_time()以便这样做并找到合适的时间。

谢谢mt_dialog.