i am making an application, which should enter into sleep mode when power on, and when interrupt comes, the dialog wake up and deal with that interrupt then sleep again.
我检查了PDF文件,然后运行DE14580板上的演示代码报告器_FH,版本3.0.2.0,并测量缓冲测试点TP1和TP2的电压,电压为168mV,根据AN-B的第3.2.2章-015_da14580_current_measurement.pdf,电流为1.68ma。如果我是对的,对话板没有睡眠模式,因为深睡眠和延长的睡眠电流在500na的范围内 2uA, i tried to use app_set_deep_sleep, app_set_extended_sleep and other api, unfortunately not works, can you give some instructions about how to modify the demo code to enter into sleep mode? or give other demo to make the DA14580 sleep?
When the end of interval sleep in slave role device, I want to keep RF power off for some connetion event so that can save power for certain periods and want to still keep the link with the master out of the periods. Who can teel me if it is possible and how can .
我尝试如下: 1。fh_proxr_sdk is the reference example. 2.使用GPIO引脚启用外部唤醒 3. enable extended mode sleep after the link has established. 4.使用步骤2初始化的GPIO唤醒睡眠。 结果: 步骤1到步骤3功能。 After step 4, the wakeup seems succed, but it never enter sleep again and a link loss occured after supervision timeout. It seems hungup. What was I wrong?
#define APP_BOOT_FROM_OTP // if the application is stored in OTP define it. Otherwise, e.g. in systemRAM, in Flash, or in EEPROM, you should undef APP_BOOT_FROM_OTP
I don't know above comment whether for me, but it seems not my theme.
A simple explain as below for my theme: 当睡眠模式设置时,在BLE Link建立之后,相应的睡眠模式应定期输入连接间隔持续时间。当睡眠醒来时,我想保持射频电源关闭并启动另一个睡眠持续时间,以跳过一些主硕士的轮询和从站的发送给某些连接事件点。在搅拌另一睡眠状态后,应保留BLE链接。 My device's role is slave. It is possible? and how can if possible?
您可以使用奴隶延迟。这将会帮助你kip a few connection events. The master will keep receiving. But the slave device will skip a number of connection events, as you specified in the slave latency.
Thanks for your kind advise. 我试图用从来的延迟做到这一点。 使用从属延迟不符合我的要求。 All of the connection events are not for the option to be skipped, the signal to invoke the skipping duration is from out of BLE controller and asynchronized with BLE link, it require to skip a anchor connection event some time so that cause to hungup in Dialog chip now.
My current mail loop is just reuse sdk one, as below lines. Can you advice what else I should modify to enable 14580 sleep mode? Either deep sleep or extended sleep is ok for me.
i am making an application, which should enter into sleep mode when power on, and when interrupt comes, the dialog wake up and deal with that interrupt then sleep again.
any ideas will be appreciate
Hello Yachao,
we have created an application note describing how to enter and exit sleep mode (typically via 2 main methods below).
1。Synchronously, via the BLE timer which can be programmed to wake up the system in order to serve a BLE event and
2.异步,通过唤醒定时器和正交解码器,如果由外部事件(输入)触发。
the apps note can be downloaded on
http://support.dialog-semiconductor.com/um-b-006-user-manual-sleep-mode-configuration
It includes some examples and describes the software architecture to implement deep sleep and extended sleep configurations.
BR JE_DIalog
thanks for your reply.
我检查了PDF文件,然后运行DE14580板上的演示代码报告器_FH,版本3.0.2.0,并测量缓冲测试点TP1和TP2的电压,电压为168mV,根据AN-B的第3.2.2章-015_da14580_current_measurement.pdf,电流为1.68ma。如果我是对的,对话板没有睡眠模式,因为深睡眠和延长的睡眠电流在500na的范围内
2uA, i tried to use app_set_deep_sleep, app_set_extended_sleep and other api, unfortunately not works, can you give some instructions about how to modify the demo code to enter into sleep mode? or give other demo to make the DA14580 sleep?
Best regards,
Hello Yachao,
使用刚刚测量TP1和TP2的方法,无论如何都会抵消,相当于几百个UA(注意他只是由于未设计为衡量到UA级别的UA级别的偏移量)广告/连接活动您可以看到要测量实际的深度睡眠或扩展睡眠电流,您确实需要使用该文件第4节中的方法 - 这需要高精度象限表。
在它进入扩展睡眠模式之前,需要留下3-4分钟的邻近记者应用程序(如此)。在那段时间之前,它将是广告,并且在广告间隔之间它将被删除入睡眠 - 但您可能看到的问题是平均测量(3个通道上的广告)。
6.3广告
-sleep modes.
SmartTag advertises in undirected mode with different intervals for specific advertising phases:
200 ms interval phase - For the first minute after start-up or disconnection.
1000 ms间隔阶段 - 在终止200ms阶段后的未来三分钟。
Deep sleep phase: SmartTag stops advertising and enters into continuous deep sleep mode after the
four minutes of advertising.
为了验证设备是否已删除扩展睡眠模式,我建议使用智能片段电源分布器查看Proximity应用程序:在此处可以在上面提到的阶段查看设备移动到深度睡眠。有关典型视图,请参见下文档中的图5。如果您看到当前丢弃到零(图6的右侧),那么您就会知道其进入扩展睡眠模式。
http://support.dialog-semiconductor.com/system/files/UM-B-018_Smart_tag_application_1.0.pdf
BR JE_DIALOG.
您好对话者支持者:
When the end of interval sleep in slave role device, I want to keep RF power off for some connetion event so that can save power for certain periods and want to still keep the link with the master out of the periods. Who can teel me if it is possible and how can .
我尝试如下:
1。fh_proxr_sdk is the reference example.
2.使用GPIO引脚启用外部唤醒
3. enable extended mode sleep after the link has established.
4.使用步骤2初始化的GPIO唤醒睡眠。
结果:
步骤1到步骤3功能。
After step 4, the wakeup seems succed, but it never enter sleep again and a link loss occured after supervision timeout. It seems hungup. What was I wrong?
Hello Z.G. Meng,
I will have one the support team contact you.
BR JE_DIALOG.
亲爱的br je_dialog,
Thank your.
I am look forward the solution from you.
Best Regards.
Z.G.Meng
Hi guys,
我猜你们正在使用扩展的睡眠模式。
你应该注意一些事情。
在SDK 3.0.6:
1。Debugging in extended sleep mode
在da14580_config.h中,
#define cfg_ext_sleep.
#define DEVELOPMENT_DEBUG 1
#define cfg_calibrated_at_fab.
2. Production in extended sleep mode
#define cfg_ext_sleep.
#define DEVELOPMENT_DEBUG 0
#define APP_BOOT_FROM_OTP // if the application is stored in OTP define it. Otherwise, e.g. in systemRAM, in Flash, or in EEPROM, you should undef APP_BOOT_FROM_OTP
#define cfg_calibrated_at_fab.
Coming back to your question,
在app_adv_timer_handler中(当3分钟超时时调用此处理程序),app_set_deep_sleep();叫做。
如果在您的应用,#define development_debug 0,然后芯片处于深度睡眠模式。如果您不刻录OTP并将芯片配置为Deep Sleep模式,则芯片将醒来,但不执行以下操作。
如果在应用程序中,#define development_debug 1,则启用深度睡眠模式仿真。您的芯片将醒来。并且在扩展睡眠模式下执行好像
In short, if you are using deep sleep mode, change app_set_deep_sleep() toapp_set_extended_sleep() inapp_adv_timer_handler.
Dear Dialog Supporters:
I don't know above comment whether for me, but it seems not my theme.
A simple explain as below for my theme:
当睡眠模式设置时,在BLE Link建立之后,相应的睡眠模式应定期输入连接间隔持续时间。当睡眠醒来时,我想保持射频电源关闭并启动另一个睡眠持续时间,以跳过一些主硕士的轮询和从站的发送给某些连接事件点。在搅拌另一睡眠状态后,应保留BLE链接。
My device's role is slave.
It is possible? and how can if possible?
Best Regards,
您可以使用奴隶延迟。这将会帮助你kip a few connection events. The master will keep receiving. But the slave device will skip a number of connection events, as you specified in the slave latency.
从延迟是一个连接参数,当您建立连接时设置,然后稍后您可以通过参数更新请求更新此参数。
亲爱的wt_dialog,
Thanks for your kind advise.
我试图用从来的延迟做到这一点。
使用从属延迟不符合我的要求。
All of the connection events are not for the option to be skipped, the signal to invoke the skipping duration is from out of BLE controller and asynchronized with BLE link, it require to skip a anchor connection event some time so that cause to hungup in Dialog chip now.
Best Regards.
Hi MT_dialog:
我试图在Da1458x_config_basic.h中定义下面,以便选择深度睡眠模式。不幸的是,功耗总是〜500A。还有什么我应该做的?
#undef cfg_ext_sleep.
#define CFG_DEEP_SLEEP
我试图跟进UM-B-006 DA14580睡眠模式配置V1.1文档,坦率地说,这篇文档真的很难捕获真正需要的东西来实现睡眠模式,应该修改主循环功能吗?我还应该做些什么来在da1458x_config_basic.h中的修改旁边启用睡眠模式?
My current mail loop is just reuse sdk one, as below lines. Can you advice what else I should modify to enable 14580 sleep mode? Either deep sleep or extended sleep is ok for me.
int main_func(void)
{
sleep_mode_t sleep_mode;
system_init();
while(1)
{
做 {
schedule_hile_ble_on();
}
而((app_asynch_proc())));//授予控件到应用程序,尝试掉电
if (((!BLE_APP_PRESENT) && (check_gtl_state())) || (BLE_APP_PRESENT))
{
GLOBAL_INT_STOP();
app_asynch_sleep_proc();
sleep_mode = rwip_power_down();
if ((sleep_mode == mode_ext_sleep) || (sleep_mode == mode_deep_sleep))
{
Arch_Goto_Sleep(Sleep_Mode);
WFI();
arch_resume_from_sleep();
}
else if (sleep_mode == mode_idle)
{
if (((!BLE_APP_PRESENT) && check_gtl_state()) || (BLE_APP_PRESENT))
{
WFI();
}
}
GLOBAL_INT_START();
}
如果(USE_WDOG)
{
wdg_reload(WATCHDOG_DEFAULT_PERIOD);
}
}
}
嗨smdzj007,
请勿多次发布您的问题,查看以下其他帖子以获得可能的答案。
https://support.dialog-semiconductor.com/forums/post/dialog-smartbond-bl...
Thanks MT_dialog