[已解决]BK3431Q功耗问题

蓝牙 BLE设备、蓝牙 MESH设备、蓝牙 Beacon设备、Sub-G设备等


TripleJay
Posts: 49

1.确认宏HZ32000的值,注意后面的注释(1为使用内部晶振,0为使用外部晶振),看与32K晶振的具体情况是否一致?
2.使用nrf connect查看是否真的有广播包发出来?
3.看日志,是否有stop adv执行,及是否又意外触发了start adv?

15179276401
Posts: 49

Re: [求助]BK3431Q功耗问题

TripleJay 2023年 Apr 26日 14:25

1.确认宏HZ32000的值,注意后面的注释(1为使用内部晶振,0为使用外部晶振),看与32K晶振的具体情况是否一致?
2.使用nrf connect查看是否真的有广播包发出来?
3.看日志,是否有stop adv执行,及是否又意外触发了start adv?

你好,1:如图,使用的是外部晶振16M,所以这个宏为0
2:nrf软件已经搜不到这个设备(现在广播间隔为1000ms,关闭后降低了十几ua的功耗),涂鸦蓝牙app也搜不到这个设备了
3:已经搜索不到这个设备应该说明没有误触发吧

功耗依然一直在跳动

Attachments
1682513148861.png
1682513148855.png
TripleJay
Posts: 49

Re: [求助]BK3431Q功耗问题

把log打开,看下日志情况,显示记得加上时间戳,把日志贴出来

15179276401
Posts: 49

Re: [求助]BK3431Q功耗问题

TripleJay 2023年 Apr 26日 21:27

把log打开,看下日志情况,显示记得加上时间戳,把日志贴出来

这是我日志和功耗

Attachments
1682562371280.png
1682562059615.png
15179276401
Posts: 49

Re: [求助]BK3431Q功耗问题

怀疑和RTC中断有关系,我看功耗是每隔1s就升高的,然后在代码里面关闭app_port_local_clock_start();函数的话,每次一休眠过了1s锁就会重启,现在的代码里面是没用到RTC的,怎么把这个关闭掉呢

15179276401
Posts: 49

Re: [求助]BK3431Q功耗问题

rtc_alarm_init(0x01, NULL, 500, bk_rtc_handler);这个功耗跳变和这个函数有关系,当第三个形参为500时,大概一秒功耗就会起来一次,当形参为100时,大概50ms就会起来一次,但是这个函数如果屏蔽的话也会有问题,每次休眠过了一会就会重启,怎么关闭这个RTC呢

it_xh
Posts: 34

Re: [求助]BK3431Q功耗问题

15179276401 2023年 Apr 25日 19:03

已经关掉了,休眠标志位也置位了,还是会跳

您好,跳变是rtc开启的原因,sdk默认用了rtc_alarm方式来实现每秒计时,所以可见电流波形每秒起来一次的情况。
该平台的sdk我们搭建了个环境详细测了下idle模式的底电流情况,平均6uA,附件为对应测试代码。

bk3431q_lowpower_test.zip
(293.8 KiB) Downloaded 169 times

sdk对应调整的地方(除之前回复的外),rtc计时的方式可优化调整下,采用软件定时器方式,具体方式如下图所示:

企业微信截图_16826699219126.png
15179276401
Posts: 49

Re: [求助]BK3431Q功耗问题

已经解决,功耗优化了20ua左右,谢谢

Post Reply