- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Serialization queue from the LE stack to application is 16 entries deep by default.
I have confirmed it by reading bleappevt_srzn_q_depth.
Our use case use CPU almost full, so I am concerned of serialization queue full case.
1) Is there any way for the application to check if serialization queue full has happened,
so that to determine whether to increase bleappevt_srzn_q_depth?
2) What is the behavior of LE stack if queue is full at the time of queueing a callback?
Watchdog reset has been observed sometimes, by any chance, does it trip watchdog?
3) What is the behavior of queueing AdvReportCb by LE stack?
For example, if Master receives a burst of advertisements (let's say from 30~40 slaves in the room),
the LE stack tries to queue up all advertisement packet received?
Or is there any throttling mechanism to avoid queue full?
Thanks!!
Solved! Go to Solution.
- Labels:
-
SDK 2.X
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You can check the warning flag.
extern UINT32 dbfw_warning_flag;
Following bits are defined
#define DBFW_WARNING_OS_QUEUE_ALLOC_FAIL 0x00000001
#define DBFW_WARNING_OS_QUEUE_FREE_FAIL 0x00000002
#define DBFW_WARNING_OS_QUEUE_SEND_FAIL 0x00000004
#define DBFW_WARNING_OS_QUEUE_SEND_FRONT_FAIL 0x00000008
#define DBFW_WARNING_OS_BLOCK_POOL_FREE_FAIL 0x00000010
#define DBFW_WARNING_OS_EXCEPTION 0x00000100
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
My apologies for the delayed response. I will ask one of the developers whether or not this level of detail is available for the stack we provide onboard the 2073X device.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You can check the warning flag.
extern UINT32 dbfw_warning_flag;
Following bits are defined
#define DBFW_WARNING_OS_QUEUE_ALLOC_FAIL 0x00000001
#define DBFW_WARNING_OS_QUEUE_FREE_FAIL 0x00000002
#define DBFW_WARNING_OS_QUEUE_SEND_FAIL 0x00000004
#define DBFW_WARNING_OS_QUEUE_SEND_FRONT_FAIL 0x00000008
#define DBFW_WARNING_OS_BLOCK_POOL_FREE_FAIL 0x00000010
#define DBFW_WARNING_OS_EXCEPTION 0x00000100