9 Support Documentation
This chapter provides generic documentation that supports the application example documentation.
9.1 User Actions
This section explains the code modifications required after generating code using MCC.
Developers must call the app_idle_task() API within
vApplicationIdleHook() to enable periodic Persistent Data Storage
and RF calibration. Persistent Data Storage stores data in non-volatile memory (Flash),
ensuring that application and stack parameters, such as peer connection information, are
saved. The Idle Task executes at the lowest priority level in FreeRTOS
- During project compilation or build, a
compile-time error prompts developers to call
app_idle_task()andapp_idle_updateRtcCnt(RTC_Timer32CounterGet()).Figure 9-1. Compile-time Error
Figure 9-2. User Action Required 
Users are required to open
freertos_hooks.cfile and add #include "definitions.h"
Users are required to open
freertos_hooks.cfile and add APIapp_idle_task()Figure 9-3. freertos_hooks.c
Users are required to comment out “#error” in
app_user_edits.cfileFigure 9-4. app_user_edits.c
Initiate build and user will be able to build successfully
Figure 9-5. Build Successful 
Additional User Action when Low Power is Enabled
app_idle_updateRtcCnt(RTC_Timer32CounterGet())
in vApplicationTickHook(). This API call is used to compensate for
FreeRTOS Timer when in Sleep mode. app_user_edits.c
Users are required to open
freertos_hooks.cfile and add APIapp_idle_updateRtcCnt(RTC_Timer32CounterGet())Figure 9-7. freertos_hooks.c
9.2 MPLAB Code Configurator (MCC) Code Generation
- Generate a code.
- Select Generate.

Merge Strategy
For more details on Merge Strategy and its understanding, refer to the MPLAB® Code Configurator (MCC) Classic in Reference Documentation from Related Links.
9.3 Known Issues
- Continued enhancements of device discovery during Bluetooth® LE advertisements and consistency of data exchange robustness in multi role environment.
