Other Parts Discussed in Thread: CC2541
My CC2541 application uses a 1 ms periodic event. Most of the time, it is taken and the application checks for certain sensor status, etc. and creates notifications. In most cases, the data is sent out and properly received. When a notification is not "accepted", usually due to MSG_BUFFER_NOT_AVAIL, I queue up the notification for later, when there is "room" to send it.
I have noticed that one particular sensor creates a lot of data and the periodic events stop for a while. I instrumented a logic analyzer on the SPI bus that is used to communicate with the system and I see the perioidic SPI communication stop for as much as 4 ms. (Every periodic event, the SPI looks at a sensor.) Since all of the processes other than mine are BLE related, and mine only gets activated via the periodic event, I have to assume that BLE is using the CPU to service the radio, etc. Is there any way to tell what is consuming the CPU, or how to insure that the periodic event is really periodic (and not sporadic!)?
Thanks!
