睡眠模式进入任何DA14580与SmartTags接近固件和应用程序

⚠️
大家好. .谢谢你来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台,它将提供更好的功能,包含在主对话网站中。所有岗位和账户都已迁移。我们现在只接受新论坛的流量-请在上面发布任何新帖子//www.xmece.com/support.我们将在未来几天修复bug /优化搜索和标记。
9个帖子/ 0个新
最后发表
MADHUSF
离线
最后看到:3个月6个小时前
加入:2018-01-15 09:22
睡眠模式进入任何DA14580与SmartTags接近固件和应用程序

你好,我们有精确的硬件(PCB)作为接近参考设计,我可以燃烧接近智能标签固件,并能够与它通信。我的设置很好。我使用SmartTags android应用程序来测试它。我正在尝试修改固件,并与应用程序连接。最初它工作,但在一段时间后,它进入睡眠,它永远不会出现在android应用程序。请让我们知道这个解决方案。即使是没有修改代码的固件示例也会看到这种行为。是否有办法重新配置或避免睡眠模式…需要帮助,谢谢。

设备:
Qinjiny_Dialog
离线
最后看到:1个月1个星期前
工作人员
加入:2016-11-01 05:47
嗨MADHUSF,

嗨MADHUSF,

默认情况下,接近演示将停止广告,并在一段时间后进入深度睡眠,直到一个按钮被按下。这不是一个问题,而是一个节省电力的设置。

你不必完全禁用睡眠,只需删除广告的超时设置。

去user_config.h

设置.adv_scenario = DEF_ADV_FOREVER,

在user_default_hnd_conf

看看是否如你所愿

MADHUSF
离线
最后看到:3个月6个小时前
加入:2018-01-15 09:22
嗨,秦injiny,谢谢你

Hi Qinjiny,谢谢你的回复。我检查了代码。
这个设置已经存在于下面的每个user_config.h中。如果有其他设置缺失,请让我知道。另外,请让我知道这个按钮的功能是在哪个代码被照顾。
----------------------- user_config.h -----------------
.....
静态const struct default_handlers_configuration user_default_hnd_conf = {
//配置缺省处理程序使用的advertise操作
/ /可能的值:
/ /——DEF_ADV_FOREVER
/ /——DEF_ADV_WITH_TIMEOUT
.adv_scenario = DEF_ADV_FOREVER,

//配置DEF_ADV_WITH_TIMEOUT的通告时间。
//以10ms为计时单位。使用MS_TO_TIMERUNITS宏进行转换
//从毫秒(ms)到定时器单位。
.advertise_period = MS_TO_TIMERUNITS (10000),

//配置默认处理程序的安全启动操作
//如果启用了安全性(CFG_APP_SECURITY)
.security_request_scenario = DEF_SEC_REQ_ON_CONNECT
};

..
-----------------------------------

LC_Dialog
离线
最后看到:1个月1天前
工作人员
加入:2016-09-19 23:20
嗨MADHUSF,

嗨MADHUSF,

外部唤醒机制正在app_advertise_complete ()回调在user_proxr.c文件。但是,如果场景设置为DEF_ADV_FOREVER,则系统不应该到达此点。如果这个系统仍然处于休眠状态,并且永远不会醒来,那么就存在其他一些潜在的问题。请尝试以下步骤来解决硬件/软件中的问题。

1.尝试在开发套件上运行一个“开箱即用”的prox_reporter项目,并将Adv场景设置为“永远”。如果您没有看到任何问题,那么在您的自定义硬件上运行相同的映像,看看是否工作良好。如果这里有问题,那么问题可能是在自定义硬件。

2.另外,用你现在使用的导致睡眠问题的图像编写一个Dev Kit。使用smartnippets工具箱中的Power Profiler工具,在它处于永久睡眠阶段时检查读数。该阅读可以为理解系统是处于完全睡眠状态还是出现崩溃提供一些见解。

3.你也可以从Keil MDK在Dev Kit上调试这个程序,看看它是否达到任何断点或看门狗复位等,这将确认崩溃。

请让我们知道你在这些测试中的观察。

另外,您在默认项目中所做的所有更改是什么?这可能会提供一些有关可能导致此问题的信息。

最好的
LC_Dialog

MADHUSF
离线
最后看到:3个月6个小时前
加入:2018-01-15 09:22
hi LC_Dialog,谢谢

hi LC_Dialog,谢谢你的回复。我尝试和响应每下面。

1.尝试在开发套件上运行一个“开箱即用”的prox_reporter项目,并将Adv场景设置为“永远”。如果您没有看到任何问题,那么在您的自定义硬件上运行相同的映像,看看是否工作良好。如果这里有问题,那么问题可能是在自定义硬件。
答:是的,没有发现问题,工作正常。实际上,应用程序正在后台锁定蓝牙会话/对象。所以,必须重新启动或关闭应用程序来重新扫描和连接。

2.另外,用你现在使用的导致睡眠问题的图像编写一个Dev Kit。使用smartnippets工具箱中的Power Profiler工具,在它处于永久睡眠阶段时检查读数。该阅读可以为理解系统是处于完全睡眠状态还是出现崩溃提供一些见解。
答:我不知道如何使用功率分析器,但使用它:它总是显示相同的电流,没有变化。请建议设置。

3.你也可以从Keil MDK在Dev Kit上调试这个程序,看看它是否达到任何断点或看门狗复位等,这将确认崩溃。
答:没有试过,我想睡眠问题现在已经解决了。

问题:但是,我想知道在没有任何GPIO触发的情况下,我们如何从长时间睡眠或深度睡眠中醒来?请建议。由于当前的电力消耗基于万用表的测量显示约600 uA电流使用与这个接近的项目。请帮助我们减少功率和最佳值。

谢谢你!
MadhuSF

LC_Dialog
离线
最后看到:1个月1天前
工作人员
加入:2016-09-19 23:20
嗨MadhuSF,

嗨MadhuSF,

你追踪到问题是如何解决的了吗?请在这个帖子上发表,这样其他用户也可以利用它。

关于你的问题,
只要将睡眠模式设置为延长睡眠,你就可以从延长睡眠中醒来。它将在内部配置一个计时器,并每隔一段时间唤醒一次,以执行任何BLE事件或任何用户定义的事件(您需要在特定的回调点添加这些事件以处理任何数据)。如果您在应用程序中不进行任何数据处理,那么您的睡眠电流应该比您现在所经历的要小得多。我建议检查你的设计是否有电流泄漏等,以确保你的外部设备没有额外的电流。

如果您想让我们对您的设计做一个快速的回顾,请将您的原理图以及SWITCH上电感(L1)和16MHz晶体(Y1)的数据表发送给我们。如果你想安全地分享这个,我可以发给你一个安全的服务器链接来上传你的文件。

最好的
LC_Dialog

MADHUSF
离线
最后看到:3个月6个小时前
加入:2018-01-15 09:22
亲爱的LC_Dialog,请发送

亲爱的LC_Dialog,请发送给我的安全链接,以便我将分享你的设计,要求的范围和睡眠要求。谢谢你!

LC_Dialog
离线
最后看到:1个月1天前
工作人员
加入:2016-09-19 23:20
嗨MadhuSF,

嗨MadhuSF,

使用下面的链接将文件上传到服务器。请注意,您只能在这里上传。

https://diasemi.egnyte.com/ul/Jrgzqaa9X6

最好的
LC_Dialog

LC_Dialog
离线
最后看到:1个月1天前
工作人员
加入:2016-09-19 23:20
嗨MadhuSF,

嗨MadhuSF,

从原理图中,我注意到您在设计中使用了一个模块。模块设计指南可以不同于我们的设计指南。我们对客户设计所做的基本检查已经在模块上完成,其余的组件应该按照模块供应商的建议设计到系统中,这是模块供应商可以帮助的。

我建议首先查看你的软件应用程序,看看设备是否真的进入睡眠状态。因为您看到的当前消耗接近活动电流,这可能主要是由于软件设计中的一些问题,或者如果主循环被修改,保持处理器活动。关于如何利用我们的工具,如SmartSnippets工具箱等,请参阅支持网站上的文档,您可以查看程序执行期间发生了什么。

最好的
LC_Dialog