⚠️
Hi there.. thanks for coming to the forums. Exciting news! we’re now in the process of moving to our new forum platform that will offer better functionality and is contained within the main Dialog website. All posts and accounts have been migrated. We’re now accepting traffic on the new forum only - please POST any new threads at//www.wsdof.com/support. We’ll be fixing bugs / optimising the searching and tagging over the coming days.
2 posts / 0 new
Last post
jmarous
Offline
Last seen:2 years 7 months ago
加入:2017-04-04 17:53
Deep Sleep not working

我在调试一个定制的基础on the DA14580 WLCSP34 package (with an external 32kHz oscillator). The processor is not waking up when the firmware is compiled with sleep_state_t app_default_sleep_mode = ARCH_DEEP_SLEEP_ON when burnt to the OTP. However, if I change the sleep_state_t app_default_sleep_mode to ARCH_EXT_SLEEP_ON, the system runs flawlessly from OTP. Furthermore, if I use ARCH_DEEP_SLEEP_ON and program the sysram with SmartSnippets, the system also runs fine, so the issue is only when booting from the OTP.

I have diagnostic LEDs on the board, and I can tell that when using ARCH_DEEP_SLEEP_ON and OTP the board wakes up once and then sleeps and never comes on again. I can see one advertising packed transmitted when the board first boots.

To summarize:
ARCH_EXT_SLEEP_ON and sysram = normal operation
ARCH_DEEP_SLEEP_ON and sysram = normal operation
ARCH_EXT_SLEEP_ON and OTP = normal operation
ARCH_DEEP_SLEEP_ON and OTP = non-operational.

I have tried both running on a battery in boost mode and with an external power supply and seen the same behavior. I am programming the same OTP header settings when I burn the chip with the different versions of the firmware. The only difference is the change in the sleep_state_t app_default_sleep_mode. I have also verified that CFG_DEVELOPMENT_DEBUG is undefined.

Naturally I'm burning through quite a number of boards in trying to isolate the issue. Any advice would be appreciated.

Device:
MT_dialog
Offline
Last seen:2 months 1 week ago
Staff
加入:2015-06-08 11:34
Hi jmarous,

Hi jmarous,

I dont see anything obvious on what you are mentioning, some comments on what you are mentioning, lets assume that the device has the OTP burned and operates in deep sleep, normally and defined by the SDK the device should be awake for 2 seconds and then go to any sleep mode, this happens in order for the XTAL32 to settle, do you see that happening ? So if the advertising is frequent enough there should be more advertising events than just one. Also when the development debug is enabled there is no deep sleep (the device's sysram is kept awake if the flash is set to CFG_DEVELOPMENT_DEBUG). Also the fw that you are using is a custom one or one of the dialog's example (please try to use one of the examples).

Thanks MT_dialog