This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

What is the difference between a BLE central reading from a peripheral versus a peripheral notifying the central in term of resources drained?

Suppose a BLE central needs to get sensor data from 10 peripheral sensors. Given that there is a limit to the number of connections a BLE central can have, is it better for the central to read from peripheral because it uses lesser resources compared to notify?

  • However, it doesn't need to periodically advertising though. How long it would take the peripheral to wake up and start advertise before it can be connected is depend on how the central be configured to do scaning. If the current consumption on the central is not the concern, it can stay in scan mode with big scan window and can have higher chance to catch the advertising packet. I guess in this case helpme hits the constrain on the maximum peripheral can be connected to the central at the same. Currently on S120 we only support 8 connections and on S130 it is 3 for now.

  • Good points --- depending on what data is needed and why it is needed perhaps including it in the advertising would be a better option (which could use the long scan window and isn't at all constrained by the central's limitations on connections). Without knowing the specific use and requirements (Like: Is a lost measurement tolerable? How important is power on Peripheral vs. Central? What is the expected frequency of updates?, How many connections are expected? etc.) I don't think there's a clear answer that one approach is definitely better than the other.

Related