Hi,
We're designing a system that consists of a DA1468x and a few sensors. We're very space constrained, so we've created our PCB without an external 32 KHz crystal, and are instead configuring the low power clock as LP_CLK_RCX. We need to wake the DA1468x every 40 ms to service our sensors. When we run on a DA14681 Pro development kit and utilize its 32 KHz crystal (LP_CLK_32768), everything works great. If, however, we switch to LP_CLK_RCX (still on the pro dev kit), we hit the BLE_MAX_DELAYS_ALLOWED assert in rwble.c.
Here are some steps to reproduce the problem using Dialog's pxp_reporter sample project and a DA14681 pro development kit:
1. Create a new project by cloning the pxp_reporter sample project.
2. In pxp_reporter_task.c, create a new timer to fire every 40 milliseconds and start it. Create an empty handler to be called when the timer expires.
3. Modify custom_config_qspi.h to use the RCX for the low power clock:
#define dg_configUSE_LP_CLK LP_CLK_RCX
4. Build the DA14681-01-Release_QSPI target.
5. Run the program on a DA14681 pro development kit.
The program will trigger the BLE_MAX_DELAYS_ALLOWED assert in rwble.c within 10 to 20 seconds.
What can we do to both wake the system every 40 milliseconds and utilize the LP_CLK_RCX setting? Would you recommend we increase the number of allowed BLE delays, perhaps setting BLE_MAX_DELAYS_ALLOWED to 10 or more?
Thanks!
David
Hi david_33021,
Are you using the latest SDK ?, Since this was an issue in an older SDK, as far as i remember, and i am not able to replicate the issue either via advertising or when connected with the proximity reporter with the dgconfigUSE_LP_CLK LP_CLK_RCX and using a periodic timer of 40ms.
Thanks MT_dialog
Hi,
Thanks for your quick response. I believe I'm using DA1468x_SDK_BTLE_v_1.0.8.1050.1. Is this the latest SDK?
Thanks,
David
Hi david_33021,
Yes this is the latest SDK, tested again on a fresh download, but i am not able to see what you are mentioning either in advertising or when connected with the pro dev kit with a 40ms periodic timer. Perhaps this is due to a different modification ?
Thanks MT_dialog
非常感谢你跟进。我将download the SDK again and see if I can still reproduce the problem.
Thanks,
David
Downloading the SDK again fixed the issue. I must have done something wrong the first time.
Thanks for your help!
David