Logging enabled by default in SDK Bluetooth examples

Several users have pointed out a sudden flash size increase in some of our Bluetooth examples. We decided to write a quick post here to describe the reason for this and explain how to decrease the size of the examples.

The reason for the size increase is that we added our logging module to the examples in question. Simply disable the module to decrease the size again. Logging can be turned on or off in sdk_config.h. This header file is included in all BLE examples. Remember that you can edit sdk_config using the configuration wizard.

Some examples use logging to display information such as pass keys and sensor data, while others use it only for outputting internal state changes and debug information (advertising states, security status). Example applications in the latter category did not always have logging enabled by default, because the data might not be useful from the “app” perspective.

While working on SDK 13.0.0, we decided to enable logging on all examples to make debugging quicker and more consistent. Internally, we really like this improvement, because adding traces for debugging “just works” now, and we can now switch between projects knowing that we can expect the same functionality.

In addition to added size, the logging module also adds considerable power consumption. Therefore, you should disable it for power profiling, especially since our logging module should not be enabled in your final product anyway. It’s primarily meant to speed up development.

Thank you for noticing! It's clear that we have a lot of active users. Keep making those awesome products, and remember to check out MyPage and Devzone for help and feedback!