text: /**
   * Copyright (c) 2017 - 2017, Nordic Semiconductor ASA
   * 
   * All rights reserved.
   * 
   * Redistribution and use in source and binary forms, with or without modification,
   * are permitted provided that the following conditions are met:
   * 
   * 1. Redistributions of source code must retain the above copyright notice, this
   *    list of conditions and the following disclaimer.
   * 
   * 2. Redistributions in binary form, except as embedded into a Nordic
   *    Semiconductor ASA integrated circuit in a product or a software update for
   *    such product, must reproduce the above copyright notice, this list of
   *    conditions and the following disclaimer in the documentation and/or other
   *    materials provided with the distribution.
   * 
   * 3. Neither the name of Nordic Semiconductor ASA nor the names of its
   *    contributors may be used to endorse or promote products derived from this
   *    software without specific prior written permission.
   * 
   * 4. This software, with or without modification, must only be used with a
   *    Nordic Semiconductor ASA integrated circuit.
   * 
   * 5. Any software provided in binary form under this license must not be reverse
   *    engineered, decompiled, modified and/or disassembled.
   * 
   * THIS SOFTWARE IS PROVIDED BY NORDIC SEMICONDUCTOR ASA "AS IS" AND ANY EXPRESS
   * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
   * OF MERCHANTABILITY, NONINFRINGEMENT, AND FITNESS FOR A PARTICULAR PURPOSE ARE
   * DISCLAIMED. IN NO EVENT SHALL NORDIC SEMICONDUCTOR ASA OR CONTRIBUTORS BE
   * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
   * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
   * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
   * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
   * 
   */
  
  
  
  #ifndef SDK_CONFIG_H
  #define SDK_CONFIG_H
  // <<< Use Configuration Wizard in Context Menu >>>\n
  #ifdef USE_APP_CONFIG
  #include "app_config.h"
  #endif
  // <h> nRF_BLE 
  
  //==========================================================
  // <q> BLE_ADVERTISING_ENABLED  - ble_advertising - Advertising module
   
  
  #ifndef BLE_ADVERTISING_ENABLED
  #define BLE_ADVERTISING_ENABLED 0
  #endif
  
  // <q> BLE_DTM_ENABLED  - ble_dtm - Module for testing RF/PHY using DTM commands
   
  
  #ifndef BLE_DTM_ENABLED
  #define BLE_DTM_ENABLED 0
  #endif
  
  // <q> BLE_RACP_ENABLED  - ble_racp - Record Access Control Point library
   
  
  #ifndef BLE_RACP_ENABLED
  #define BLE_RACP_ENABLED 0
  #endif
  
  // <q> NRF_BLE_QWR_ENABLED  - nrf_ble_qwr - Queued writes support module (prepare/execute write)
   
  
  #ifndef NRF_BLE_QWR_ENABLED
  #define NRF_BLE_QWR_ENABLED 0
  #endif
  
  // <e> PEER_MANAGER_ENABLED - peer_manager - Peer Manager
  //==========================================================
  #ifndef PEER_MANAGER_ENABLED
  #define PEER_MANAGER_ENABLED 0
  #endif
  // <o> PM_MAX_REGISTRANTS - Number of event handlers that can be registered. 
  #ifndef PM_MAX_REGISTRANTS
  #define PM_MAX_REGISTRANTS 3
  #endif
  
  // <o> PM_FLASH_BUFFERS - Number of internal buffers for flash operations. 
  // <i> Decrease this value to lower RAM usage.
  
  #ifndef PM_FLASH_BUFFERS
  #define PM_FLASH_BUFFERS 2
  #endif
  
  // <q> PM_CENTRAL_ENABLED  - Enable/disable central-specific Peer Manager functionality.
   
  
  // <i> Enable/disable central-specific Peer Manager functionality.
  
  #ifndef PM_CENTRAL_ENABLED
  #define PM_CENTRAL_ENABLED 1
  #endif
  
  // </e>
  
  // </h> 
  //==========================================================
  
  // <h> nRF_BLE_Services 
  
  //==========================================================
  // <q> BLE_ANCS_C_ENABLED  - ble_ancs_c - Apple Notification Service Client
   
  
  #ifndef BLE_ANCS_C_ENABLED
  #define BLE_ANCS_C_ENABLED 0
  #endif
  
  // <q> BLE_ANS_C_ENABLED  - ble_ans_c - Alert Notification Service Client
   
  
  #ifndef BLE_ANS_C_ENABLED
  #define BLE_ANS_C_ENABLED 0
  #endif
  
  // <q> BLE_BAS_C_ENABLED  - ble_bas_c - Battery Service Client
   
  
  #ifndef BLE_BAS_C_ENABLED
  #define BLE_BAS_C_ENABLED 0
  #endif
  
  // <q> BLE_BAS_ENABLED  - ble_bas - Battery Service
   
  
  #ifndef BLE_BAS_ENABLED
  #define BLE_BAS_ENABLED 0
  #endif
  
  // <q> BLE_CSCS_ENABLED  - ble_cscs - Cycling Speed and Cadence Service
   
  
  #ifndef BLE_CSCS_ENABLED
  #define BLE_CSCS_ENABLED 0
  #endif
  
  // <q> BLE_CTS_C_ENABLED  - ble_cts_c - Current Time Service Client
   
  
  #ifndef BLE_CTS_C_ENABLED
  #define BLE_CTS_C_ENABLED 0
  #endif
  
  // <q> BLE_DIS_ENABLED  - ble_dis - Device Information Service
   
  
  #ifndef BLE_DIS_ENABLED
  #define BLE_DIS_ENABLED 0
  #endif
  
  // <q> BLE_GLS_ENABLED  - ble_gls - Glucose Service
   
  
  #ifndef BLE_GLS_ENABLED
  #define BLE_GLS_ENABLED 0
  #endif
  
  // <q> BLE_HIDS_ENABLED  - ble_hids - Human Interface Device Service
   
  
  #ifndef BLE_HIDS_ENABLED
  #define BLE_HIDS_ENABLED 0
  #endif
  
  // <q> BLE_HRS_C_ENABLED  - ble_hrs_c - Heart Rate Service Client
   
  
  #ifndef BLE_HRS_C_ENABLED
  #define BLE_HRS_C_ENABLED 0
  #endif
  
  // <q> BLE_HRS_ENABLED  - ble_hrs - Heart Rate Service
   
  
  #ifndef BLE_HRS_ENABLED
  #define BLE_HRS_ENABLED 0
  #endif
  
  // <q> BLE_HTS_ENABLED  - ble_hts - Health Thermometer Service
   
  
  #ifndef BLE_HTS_ENABLED
  #define BLE_HTS_ENABLED 0
  #endif
  
  // <q> BLE_IAS_C_ENABLED  - ble_ias_c - Immediate Alert Service Client
   
  
  #ifndef BLE_IAS_C_ENABLED
  #define BLE_IAS_C_ENABLED 0
  #endif
  
  // <q> BLE_IAS_ENABLED  - ble_ias - Immediate Alert Service
   
  
  #ifndef BLE_IAS_ENABLED
  #define BLE_IAS_ENABLED 0
  #endif
  
  // <q> BLE_LBS_C_ENABLED  - ble_lbs_c - Nordic LED Button Service Client
   
  
  #ifndef BLE_LBS_C_ENABLED
  #define BLE_LBS_C_ENABLED 0
  #endif
  
  // <q> BLE_LBS_ENABLED  - ble_lbs - LED Button Service
   
  
  #ifndef BLE_LBS_ENABLED
  #define BLE_LBS_ENABLED 0
  #endif
  
  // <q> BLE_LLS_ENABLED  - ble_lls - Link Loss Service
   
  
  #ifndef BLE_LLS_ENABLED
  #define BLE_LLS_ENABLED 0
  #endif
  
  // <q> BLE_NUS_C_ENABLED  - ble_nus_c - Nordic UART Central Service
   
  
  #ifndef BLE_NUS_C_ENABLED
  #define BLE_NUS_C_ENABLED 0
  #endif
  
  // <q> BLE_NUS_ENABLED  - ble_nus - Nordic UART Service
   
  
  #ifndef BLE_NUS_ENABLED
  #define BLE_NUS_ENABLED 0
  #endif
  
  // <q> BLE_RSCS_C_ENABLED  - ble_rscs_c - Running Speed and Cadence Client
   
  
  #ifndef BLE_RSCS_C_ENABLED
  #define BLE_RSCS_C_ENABLED 0
  #endif
  
  // <q> BLE_RSCS_ENABLED  - ble_rscs - Running Speed and Cadence Service
   
  
  #ifndef BLE_RSCS_ENABLED
  #define BLE_RSCS_ENABLED 0
  #endif
  
  // <q> BLE_TPS_ENABLED  - ble_tps - TX Power Service
   
  
  #ifndef BLE_TPS_ENABLED
  #define BLE_TPS_ENABLED 0
  #endif
  
  // <h> ble_ipsp - Internet Protocol Support Profile
  
  //==========================================================
  // <q> BLE_IPSP_DISABLE_API_PARAM_CHECK  - Enable or disable API parameter check.
   
  
  // <i> API parameter checks are added to ensure right parameters are passed to the module. These checks are useful during development phase but be redundant once application is developed. Disabling this can result in some code saving.
  
  #ifndef BLE_IPSP_DISABLE_API_PARAM_CHECK
  #define BLE_IPSP_DISABLE_API_PARAM_CHECK 0
  #endif
  
  // <e> IOT_BLE_IPSP_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef IOT_BLE_IPSP_CONFIG_LOG_ENABLED
  #define IOT_BLE_IPSP_CONFIG_LOG_ENABLED 0
  #endif
  // <o> IOT_BLE_IPSP_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef IOT_BLE_IPSP_CONFIG_LOG_LEVEL
  #define IOT_BLE_IPSP_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> IOT_BLE_IPSP_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef IOT_BLE_IPSP_CONFIG_INFO_COLOR
  #define IOT_BLE_IPSP_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> IOT_BLE_IPSP_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef IOT_BLE_IPSP_CONFIG_DEBUG_COLOR
  #define IOT_BLE_IPSP_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // </h> 
  //==========================================================
  
  // </h> 
  //==========================================================
  
  // <h> nRF_DFU 
  
  //==========================================================
  // <h> ble_dfu - Device Firmware Update
  
  //==========================================================
  // <q> BLE_DFU_ENABLED  - Enable DFU Service.
   
  
  #ifndef BLE_DFU_ENABLED
  #define BLE_DFU_ENABLED 0
  #endif
  
  // <q> NRF_DFU_BLE_BUTTONLESS_SUPPORTS_BONDS  - Buttonless DFU supports bonds.
   
  
  #ifndef NRF_DFU_BLE_BUTTONLESS_SUPPORTS_BONDS
  #define NRF_DFU_BLE_BUTTONLESS_SUPPORTS_BONDS 0
  #endif
  
  // </h> 
  //==========================================================
  
  // </h> 
  //==========================================================
  
  // <h> nRF_Drivers 
  
  //==========================================================
  // <e> APP_USBD_ENABLED - app_usbd - USB Device library
  //==========================================================
  #ifndef APP_USBD_ENABLED
  #define APP_USBD_ENABLED 0
  #endif
  // <o> APP_USBD_VID - Vendor ID  <0x0000-0xFFFF> 
  
  
  // <i> Vendor ID ordered from USB IF: http://www.usb.org/developers/vendor/
  
  #ifndef APP_USBD_VID
  #define APP_USBD_VID 0
  #endif
  
  // <o> APP_USBD_PID - Product ID  <0x0000-0xFFFF> 
  
  
  // <i> Selected Product ID
  
  #ifndef APP_USBD_PID
  #define APP_USBD_PID 0
  #endif
  
  // <o> APP_USBD_DEVICE_VER_MAJOR - Device version, major part  <0-99> 
  
  
  // <i> Device version, will be converted automatically to BCD notation. Use just decimal values.
  
  #ifndef APP_USBD_DEVICE_VER_MAJOR
  #define APP_USBD_DEVICE_VER_MAJOR 1
  #endif
  
  // <o> APP_USBD_DEVICE_VER_MINOR - Device version, minor part  <0-99> 
  
  
  // <i> Device version, will be converted automatically to BCD notation. Use just decimal values.
  
  #ifndef APP_USBD_DEVICE_VER_MINOR
  #define APP_USBD_DEVICE_VER_MINOR 0
  #endif
  
  // <e> APP_USBD_EVENT_QUEUE_ENABLE - Enable event queue
  
  // <i> This is the default configuration when all the events are placed into internal queue.
  // <i> Disable it when external queue is used like app_scheduler or if you wish to process all events inside interrupts.
  // <i> Processing all events from the interrupt level adds requirement not to call any functions that modifies the USBD library state from the context higher than USB interrupt context.
  // <i> Functions that modify USBD state are functions for sleep, wakeup, start, stop, enable and disable.
  //==========================================================
  #ifndef APP_USBD_EVENT_QUEUE_ENABLE
  #define APP_USBD_EVENT_QUEUE_ENABLE 1
  #endif
  // <o> APP_USBD_EVENT_QUEUE_SIZE - The size of event queue  <16-64> 
  
  
  // <i> The size of the queue for the events that would be processed in the main loop.
  
  #ifndef APP_USBD_EVENT_QUEUE_SIZE
  #define APP_USBD_EVENT_QUEUE_SIZE 32
  #endif
  
  // </e>
  
  // <q> APP_USBD_CONFIG_PROVIDE_SOF_TIMESTAMP  - Provide a function that generates timestamps for logs based on the current SOF
   
  
  // <i> The function app_usbd_sof_timestamp_get will be implemented if the logger is enabled. 
  // <i> Use it when initializing the logger. 
  // <i> SOF processing will be always enabled when this configuration parameter is active. 
  // <i> Notice that this option is configured outside of APP_USBD_CONFIG_LOG_ENABLED. 
  // <i> This means that it will work even if the logging in this very module is disabled. 
  
  #ifndef APP_USBD_CONFIG_PROVIDE_SOF_TIMESTAMP
  #define APP_USBD_CONFIG_PROVIDE_SOF_TIMESTAMP 0
  #endif
  
  // <e> APP_USBD_CONFIG_LOG_ENABLED - Enable logging in the module
  //==========================================================
  #ifndef APP_USBD_CONFIG_LOG_ENABLED
  #define APP_USBD_CONFIG_LOG_ENABLED 0
  #endif
  // <o> APP_USBD_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef APP_USBD_CONFIG_LOG_LEVEL
  #define APP_USBD_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> APP_USBD_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef APP_USBD_CONFIG_INFO_COLOR
  #define APP_USBD_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> APP_USBD_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef APP_USBD_CONFIG_DEBUG_COLOR
  #define APP_USBD_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // </e>
  
  // <e> CLOCK_ENABLED - nrf_drv_clock - CLOCK peripheral driver
  //==========================================================
  #ifndef CLOCK_ENABLED
  #define CLOCK_ENABLED 1
  #endif
  // <o> CLOCK_CONFIG_XTAL_FREQ  - HF XTAL Frequency
   
  // <0=> Default (64 MHz) 
  
  #ifndef CLOCK_CONFIG_XTAL_FREQ
  #define CLOCK_CONFIG_XTAL_FREQ 0
  #endif
  
  // <o> CLOCK_CONFIG_LF_SRC  - LF Clock Source
   
  // <0=> RC 
  // <1=> XTAL 
  // <2=> Synth 
  
  #ifndef CLOCK_CONFIG_LF_SRC
  #define CLOCK_CONFIG_LF_SRC 1
  #endif
  
  // <o> CLOCK_CONFIG_IRQ_PRIORITY  - Interrupt priority
   
  
  // <i> Priorities 0,2 (nRF51) and 0,1,4,5 (nRF52) are reserved for SoftDevice
  // <0=> 0 (highest) 
  // <1=> 1 
  // <2=> 2 
  // <3=> 3 
  // <4=> 4 
  // <5=> 5 
  // <6=> 6 
  // <7=> 7 
  
  #ifndef CLOCK_CONFIG_IRQ_PRIORITY
  #define CLOCK_CONFIG_IRQ_PRIORITY 7
  #endif
  
  // </e>
  
  // <e> COMP_ENABLED - nrf_drv_comp - COMP peripheral driver
  //==========================================================
  #ifndef COMP_ENABLED
  #define COMP_ENABLED 0
  #endif
  // <o> COMP_CONFIG_REF  - Reference voltage
   
  // <0=> Internal 1.2V 
  // <1=> Internal 1.8V 
  // <2=> Internal 2.4V 
  // <4=> VDD 
  // <7=> ARef 
  
  #ifndef COMP_CONFIG_REF
  #define COMP_CONFIG_REF 1
  #endif
  
  // <o> COMP_CONFIG_MAIN_MODE  - Main mode
   
  // <0=> Single ended 
  // <1=> Differential 
  
  #ifndef COMP_CONFIG_MAIN_MODE
  #define COMP_CONFIG_MAIN_MODE 0
  #endif
  
  // <o> COMP_CONFIG_SPEED_MODE  - Speed mode
   
  // <0=> Low power 
  // <1=> Normal 
  // <2=> High speed 
  
  #ifndef COMP_CONFIG_SPEED_MODE
  #define COMP_CONFIG_SPEED_MODE 2
  #endif
  
  // <o> COMP_CONFIG_HYST  - Hystheresis
   
  // <0=> No 
  // <1=> 50mV 
  
  #ifndef COMP_CONFIG_HYST
  #define COMP_CONFIG_HYST 0
  #endif
  
  // <o> COMP_CONFIG_ISOURCE  - Current Source
   
  // <0=> Off 
  // <1=> 2.5 uA 
  // <2=> 5 uA 
  // <3=> 10 uA 
  
  #ifndef COMP_CONFIG_ISOURCE
  #define COMP_CONFIG_ISOURCE 0
  #endif
  
  // <o> COMP_CONFIG_INPUT  - Analog input
   
  // <0=> 0 
  // <1=> 1 
  // <2=> 2 
  // <3=> 3 
  // <4=> 4 
  // <5=> 5 
  // <6=> 6 
  // <7=> 7 
  
  #ifndef COMP_CONFIG_INPUT
  #define COMP_CONFIG_INPUT 0
  #endif
  
  // <o> COMP_CONFIG_IRQ_PRIORITY  - Interrupt priority
   
  
  // <i> Priorities 0,2 (nRF51) and 0,1,4,5 (nRF52) are reserved for SoftDevice
  // <0=> 0 (highest) 
  // <1=> 1 
  // <2=> 2 
  // <3=> 3 
  // <4=> 4 
  // <5=> 5 
  // <6=> 6 
  // <7=> 7 
  
  #ifndef COMP_CONFIG_IRQ_PRIORITY
  #define COMP_CONFIG_IRQ_PRIORITY 7
  #endif
  
  // </e>
  
  // <q> EGU_ENABLED  - nrf_drv_swi - SWI(EGU) peripheral driver
   
  
  #ifndef EGU_ENABLED
  #define EGU_ENABLED 0
  #endif
  
  // <e> GPIOTE_ENABLED - nrf_drv_gpiote - GPIOTE peripheral driver
  //==========================================================
  #ifndef GPIOTE_ENABLED
  #define GPIOTE_ENABLED 1
  #endif
  // <o> GPIOTE_CONFIG_NUM_OF_LOW_POWER_EVENTS - Number of lower power input pins 
  #ifndef GPIOTE_CONFIG_NUM_OF_LOW_POWER_EVENTS
  #define GPIOTE_CONFIG_NUM_OF_LOW_POWER_EVENTS 4
  #endif
  
  // <o> GPIOTE_CONFIG_IRQ_PRIORITY  - Interrupt priority
   
  
  // <i> Priorities 0,2 (nRF51) and 0,1,4,5 (nRF52) are reserved for SoftDevice
  // <0=> 0 (highest) 
  // <1=> 1 
  // <2=> 2 
  // <3=> 3 
  // <4=> 4 
  // <5=> 5 
  // <6=> 6 
  // <7=> 7 
  
  #ifndef GPIOTE_CONFIG_IRQ_PRIORITY
  #define GPIOTE_CONFIG_IRQ_PRIORITY 7
  #endif
  
  // </e>
  
  // <e> I2S_ENABLED - nrf_drv_i2s - I2S peripheral driver
  //==========================================================
  #ifndef I2S_ENABLED
  #define I2S_ENABLED 0
  #endif
  // <o> I2S_CONFIG_SCK_PIN - SCK pin  <0-31> 
  
  
  #ifndef I2S_CONFIG_SCK_PIN
  #define I2S_CONFIG_SCK_PIN 31
  #endif
  
  // <o> I2S_CONFIG_LRCK_PIN - LRCK pin  <1-31> 
  
  
  #ifndef I2S_CONFIG_LRCK_PIN
  #define I2S_CONFIG_LRCK_PIN 30
  #endif
  
  // <o> I2S_CONFIG_MCK_PIN - MCK pin 
  #ifndef I2S_CONFIG_MCK_PIN
  #define I2S_CONFIG_MCK_PIN 255
  #endif
  
  // <o> I2S_CONFIG_SDOUT_PIN - SDOUT pin  <0-31> 
  
  
  #ifndef I2S_CONFIG_SDOUT_PIN
  #define I2S_CONFIG_SDOUT_PIN 29
  #endif
  
  // <o> I2S_CONFIG_SDIN_PIN - SDIN pin  <0-31> 
  
  
  #ifndef I2S_CONFIG_SDIN_PIN
  #define I2S_CONFIG_SDIN_PIN 28
  #endif
  
  // <o> I2S_CONFIG_MASTER  - Mode
   
  // <0=> Master 
  // <1=> Slave 
  
  #ifndef I2S_CONFIG_MASTER
  #define I2S_CONFIG_MASTER 0
  #endif
  
  // <o> I2S_CONFIG_FORMAT  - Format
   
  // <0=> I2S 
  // <1=> Aligned 
  
  #ifndef I2S_CONFIG_FORMAT
  #define I2S_CONFIG_FORMAT 0
  #endif
  
  // <o> I2S_CONFIG_ALIGN  - Alignment
   
  // <0=> Left 
  // <1=> Right 
  
  #ifndef I2S_CONFIG_ALIGN
  #define I2S_CONFIG_ALIGN 0
  #endif
  
  // <o> I2S_CONFIG_SWIDTH  - Sample width (bits)
   
  // <0=> 8 
  // <1=> 16 
  // <2=> 24 
  
  #ifndef I2S_CONFIG_SWIDTH
  #define I2S_CONFIG_SWIDTH 1
  #endif
  
  // <o> I2S_CONFIG_CHANNELS  - Channels
   
  // <0=> Stereo 
  // <1=> Left 
  // <2=> Right 
  
  #ifndef I2S_CONFIG_CHANNELS
  #define I2S_CONFIG_CHANNELS 1
  #endif
  
  // <o> I2S_CONFIG_MCK_SETUP  - MCK behavior
   
  // <0=> Disabled 
  // <2147483648=> 32MHz/2 
  // <1342177280=> 32MHz/3 
  // <1073741824=> 32MHz/4 
  // <805306368=> 32MHz/5 
  // <671088640=> 32MHz/6 
  // <536870912=> 32MHz/8 
  // <402653184=> 32MHz/10 
  // <369098752=> 32MHz/11 
  // <285212672=> 32MHz/15 
  // <268435456=> 32MHz/16 
  // <201326592=> 32MHz/21 
  // <184549376=> 32MHz/23 
  // <142606336=> 32MHz/30 
  // <138412032=> 32MHz/31 
  // <134217728=> 32MHz/32 
  // <100663296=> 32MHz/42 
  // <68157440=> 32MHz/63 
  // <34340864=> 32MHz/125 
  
  #ifndef I2S_CONFIG_MCK_SETUP
  #define I2S_CONFIG_MCK_SETUP 536870912
  #endif
  
  // <o> I2S_CONFIG_RATIO  - MCK/LRCK ratio
   
  // <0=> 32x 
  // <1=> 48x 
  // <2=> 64x 
  // <3=> 96x 
  // <4=> 128x 
  // <5=> 192x 
  // <6=> 256x 
  // <7=> 384x 
  // <8=> 512x 
  
  #ifndef I2S_CONFIG_RATIO
  #define I2S_CONFIG_RATIO 2000
  #endif
  
  // <o> I2S_CONFIG_IRQ_PRIORITY  - Interrupt priority
   
  
  // <i> Priorities 0,2 (nRF51) and 0,1,4,5 (nRF52) are reserved for SoftDevice
  // <0=> 0 (highest) 
  // <1=> 1 
  // <2=> 2 
  // <3=> 3 
  // <4=> 4 
  // <5=> 5 
  // <6=> 6 
  // <7=> 7 
  
  #ifndef I2S_CONFIG_IRQ_PRIORITY
  #define I2S_CONFIG_IRQ_PRIORITY 7
  #endif
  
  // </e>
  
  // <e> LPCOMP_ENABLED - nrf_drv_lpcomp - LPCOMP peripheral driver
  //==========================================================
  #ifndef LPCOMP_ENABLED
  #define LPCOMP_ENABLED 0
  #endif
  // <o> LPCOMP_CONFIG_REFERENCE  - Reference voltage
   
  // <0=> Supply 1/8 
  // <1=> Supply 2/8 
  // <2=> Supply 3/8 
  // <3=> Supply 4/8 
  // <4=> Supply 5/8 
  // <5=> Supply 6/8 
  // <6=> Supply 7/8 
  // <8=> Supply 1/16 (nRF52) 
  // <9=> Supply 3/16 (nRF52) 
  // <10=> Supply 5/16 (nRF52) 
  // <11=> Supply 7/16 (nRF52) 
  // <12=> Supply 9/16 (nRF52) 
  // <13=> Supply 11/16 (nRF52) 
  // <14=> Supply 13/16 (nRF52) 
  // <15=> Supply 15/16 (nRF52) 
  // <7=> External Ref 0 
  // <65543=> External Ref 1 
  
  #ifndef LPCOMP_CONFIG_REFERENCE
  #define LPCOMP_CONFIG_REFERENCE 3
  #endif
  
  // <o> LPCOMP_CONFIG_DETECTION  - Detection
   
  // <0=> Crossing 
  // <1=> Up 
  // <2=> Down 
  
  #ifndef LPCOMP_CONFIG_DETECTION
  #define LPCOMP_CONFIG_DETECTION 2
  #endif
  
  // <o> LPCOMP_CONFIG_INPUT  - Analog input
   
  // <0=> 0 
  // <1=> 1 
  // <2=> 2 
  // <3=> 3 
  // <4=> 4 
  // <5=> 5 
  // <6=> 6 
  // <7=> 7 
  
  #ifndef LPCOMP_CONFIG_INPUT
  #define LPCOMP_CONFIG_INPUT 0
  #endif
  
  // <q> LPCOMP_CONFIG_HYST  - Hysteresis
   
  
  #ifndef LPCOMP_CONFIG_HYST
  #define LPCOMP_CONFIG_HYST 0
  #endif
  
  // <o> LPCOMP_CONFIG_IRQ_PRIORITY  - Interrupt priority
   
  
  // <i> Priorities 0,2 (nRF51) and 0,1,4,5 (nRF52) are reserved for SoftDevice
  // <0=> 0 (highest) 
  // <1=> 1 
  // <2=> 2 
  // <3=> 3 
  // <4=> 4 
  // <5=> 5 
  // <6=> 6 
  // <7=> 7 
  
  #ifndef LPCOMP_CONFIG_IRQ_PRIORITY
  #define LPCOMP_CONFIG_IRQ_PRIORITY 7
  #endif
  
  // </e>
  
  // <e> PDM_ENABLED - nrf_drv_pdm - PDM peripheral driver
  //==========================================================
  #ifndef PDM_ENABLED
  #define PDM_ENABLED 0
  #endif
  // <o> PDM_CONFIG_MODE  - Mode
   
  // <0=> Stereo 
  // <1=> Mono 
  
  #ifndef PDM_CONFIG_MODE
  #define PDM_CONFIG_MODE 1
  #endif
  
  // <o> PDM_CONFIG_EDGE  - Edge
   
  // <0=> Left falling 
  // <1=> Left rising 
  
  #ifndef PDM_CONFIG_EDGE
  #define PDM_CONFIG_EDGE 0
  #endif
  
  // <o> PDM_CONFIG_CLOCK_FREQ  - Clock frequency
   
  // <134217728=> 1000k 
  // <138412032=> 1032k (default) 
  // <142606336=> 1067k 
  
  #ifndef PDM_CONFIG_CLOCK_FREQ
  #define PDM_CONFIG_CLOCK_FREQ 138412032
  #endif
  
  // <o> PDM_CONFIG_IRQ_PRIORITY  - Interrupt priority
   
  
  // <i> Priorities 0,2 (nRF51) and 0,1,4,5 (nRF52) are reserved for SoftDevice
  // <0=> 0 (highest) 
  // <1=> 1 
  // <2=> 2 
  // <3=> 3 
  // <4=> 4 
  // <5=> 5 
  // <6=> 6 
  // <7=> 7 
  
  #ifndef PDM_CONFIG_IRQ_PRIORITY
  #define PDM_CONFIG_IRQ_PRIORITY 7
  #endif
  
  // </e>
  
  // <q> PERIPHERAL_RESOURCE_SHARING_ENABLED  - nrf_drv_common - Peripheral drivers common module
   
  
  #ifndef PERIPHERAL_RESOURCE_SHARING_ENABLED
  #define PERIPHERAL_RESOURCE_SHARING_ENABLED 0
  #endif
  
  // <e> POWER_ENABLED - nrf_drv_power - POWER peripheral driver
  //==========================================================
  #ifndef POWER_ENABLED
  #define POWER_ENABLED 0
  #endif
  // <o> POWER_CONFIG_IRQ_PRIORITY  - Interrupt priority
   
  
  // <i> Priorities 0,2 (nRF51) and 0,1,4,5 (nRF52) are reserved for SoftDevice
  // <0=> 0 (highest) 
  // <1=> 1 
  // <2=> 2 
  // <3=> 3 
  // <4=> 4 
  // <5=> 5 
  // <6=> 6 
  // <7=> 7 
  
  #ifndef POWER_CONFIG_IRQ_PRIORITY
  #define POWER_CONFIG_IRQ_PRIORITY 7
  #endif
  
  // <q> POWER_CONFIG_DEFAULT_DCDCEN  - The default configuration of main DCDC regulator
   
  
  // <i> This settings means only that components for DCDC regulator are installed and it can be enabled.
  
  #ifndef POWER_CONFIG_DEFAULT_DCDCEN
  #define POWER_CONFIG_DEFAULT_DCDCEN 0
  #endif
  
  // <q> POWER_CONFIG_DEFAULT_DCDCENHV  - The default configuration of High Voltage DCDC regulator
   
  
  // <i> This settings means only that components for DCDC regulator are installed and it can be enabled.
  
  #ifndef POWER_CONFIG_DEFAULT_DCDCENHV
  #define POWER_CONFIG_DEFAULT_DCDCENHV 0
  #endif
  
  // </e>
  
  // <q> PPI_ENABLED  - nrf_drv_ppi - PPI peripheral driver
   
  
  #ifndef PPI_ENABLED
  #define PPI_ENABLED 0
  #endif
  
  // <e> PWM_ENABLED - nrf_drv_pwm - PWM peripheral driver
  //==========================================================
  #ifndef PWM_ENABLED
  #define PWM_ENABLED 0
  #endif
  // <o> PWM_DEFAULT_CONFIG_OUT0_PIN - Out0 pin  <0-31> 
  
  
  #ifndef PWM_DEFAULT_CONFIG_OUT0_PIN
  #define PWM_DEFAULT_CONFIG_OUT0_PIN 31
  #endif
  
  // <o> PWM_DEFAULT_CONFIG_OUT1_PIN - Out1 pin  <0-31> 
  
  
  #ifndef PWM_DEFAULT_CONFIG_OUT1_PIN
  #define PWM_DEFAULT_CONFIG_OUT1_PIN 31
  #endif
  
  // <o> PWM_DEFAULT_CONFIG_OUT2_PIN - Out2 pin  <0-31> 
  
  
  #ifndef PWM_DEFAULT_CONFIG_OUT2_PIN
  #define PWM_DEFAULT_CONFIG_OUT2_PIN 31
  #endif
  
  // <o> PWM_DEFAULT_CONFIG_OUT3_PIN - Out3 pin  <0-31> 
  
  
  #ifndef PWM_DEFAULT_CONFIG_OUT3_PIN
  #define PWM_DEFAULT_CONFIG_OUT3_PIN 31
  #endif
  
  // <o> PWM_DEFAULT_CONFIG_BASE_CLOCK  - Base clock
   
  // <0=> 16 MHz 
  // <1=> 8 MHz 
  // <2=> 4 MHz 
  // <3=> 2 MHz 
  // <4=> 1 MHz 
  // <5=> 500 kHz 
  // <6=> 250 kHz 
  // <7=> 125 kHz 
  
  #ifndef PWM_DEFAULT_CONFIG_BASE_CLOCK
  #define PWM_DEFAULT_CONFIG_BASE_CLOCK 4
  #endif
  
  // <o> PWM_DEFAULT_CONFIG_COUNT_MODE  - Count mode
   
  // <0=> Up 
  // <1=> Up and Down 
  
  #ifndef PWM_DEFAULT_CONFIG_COUNT_MODE
  #define PWM_DEFAULT_CONFIG_COUNT_MODE 0
  #endif
  
  // <o> PWM_DEFAULT_CONFIG_TOP_VALUE - Top value 
  #ifndef PWM_DEFAULT_CONFIG_TOP_VALUE
  #define PWM_DEFAULT_CONFIG_TOP_VALUE 1000
  #endif
  
  // <o> PWM_DEFAULT_CONFIG_LOAD_MODE  - Load mode
   
  // <0=> Common 
  // <1=> Grouped 
  // <2=> Individual 
  // <3=> Waveform 
  
  #ifndef PWM_DEFAULT_CONFIG_LOAD_MODE
  #define PWM_DEFAULT_CONFIG_LOAD_MODE 0
  #endif
  
  // <o> PWM_DEFAULT_CONFIG_STEP_MODE  - Step mode
   
  // <0=> Auto 
  // <1=> Triggered 
  
  #ifndef PWM_DEFAULT_CONFIG_STEP_MODE
  #define PWM_DEFAULT_CONFIG_STEP_MODE 0
  #endif
  
  // <o> PWM_DEFAULT_CONFIG_IRQ_PRIORITY  - Interrupt priority
   
  
  // <i> Priorities 0,1,4,5 (nRF52) are reserved for SoftDevice
  // <0=> 0 (highest) 
  // <1=> 1 
  // <2=> 2 
  // <3=> 3 
  // <4=> 4 
  // <5=> 5 
  // <6=> 6 
  // <7=> 7 
  
  #ifndef PWM_DEFAULT_CONFIG_IRQ_PRIORITY
  #define PWM_DEFAULT_CONFIG_IRQ_PRIORITY 7
  #endif
  
  // <q> PWM0_ENABLED  - Enable PWM0 instance
   
  
  #ifndef PWM0_ENABLED
  #define PWM0_ENABLED 0
  #endif
  
  // <q> PWM1_ENABLED  - Enable PWM1 instance
   
  
  #ifndef PWM1_ENABLED
  #define PWM1_ENABLED 0
  #endif
  
  // <q> PWM2_ENABLED  - Enable PWM2 instance
   
  
  #ifndef PWM2_ENABLED
  #define PWM2_ENABLED 0
  #endif
  
  // <e> PWM_NRF52_ANOMALY_109_WORKAROUND_ENABLED - Enables nRF52 Anomaly 109 workaround for PWM.
  
  // <i> The workaround uses interrupts to wake up the CPU and ensure
  // <i> it is active when PWM is about to start a DMA transfer. For
  // <i> initial transfer, done when a playback is started via PPI,
  // <i> a specific EGU instance is used to generate the interrupt.
  // <i> During the playback, the PWM interrupt triggered on SEQEND
  // <i> event of a preceding sequence is used to protect the transfer
  // <i> done for the next sequence to be played.
  //==========================================================
  #ifndef PWM_NRF52_ANOMALY_109_WORKAROUND_ENABLED
  #define PWM_NRF52_ANOMALY_109_WORKAROUND_ENABLED 0
  #endif
  // <o> PWM_NRF52_ANOMALY_109_EGU_INSTANCE  - EGU instance used by the nRF52 Anomaly 109 workaround for PWM.
   
  // <0=> EGU0 
  // <1=> EGU1 
  // <2=> EGU2 
  // <3=> EGU3 
  // <4=> EGU4 
  // <5=> EGU5 
  
  #ifndef PWM_NRF52_ANOMALY_109_EGU_INSTANCE
  #define PWM_NRF52_ANOMALY_109_EGU_INSTANCE 5
  #endif
  
  // </e>
  
  // </e>
  
  // <e> QDEC_ENABLED - nrf_drv_qdec - QDEC peripheral driver
  //==========================================================
  #ifndef QDEC_ENABLED
  #define QDEC_ENABLED 0
  #endif
  // <o> QDEC_CONFIG_REPORTPER  - Report period
   
  // <0=> 10 Samples 
  // <1=> 40 Samples 
  // <2=> 80 Samples 
  // <3=> 120 Samples 
  // <4=> 160 Samples 
  // <5=> 200 Samples 
  // <6=> 240 Samples 
  // <7=> 280 Samples 
  
  #ifndef QDEC_CONFIG_REPORTPER
  #define QDEC_CONFIG_REPORTPER 0
  #endif
  
  // <o> QDEC_CONFIG_SAMPLEPER  - Sample period
   
  // <0=> 128 us 
  // <1=> 256 us 
  // <2=> 512 us 
  // <3=> 1024 us 
  // <4=> 2048 us 
  // <5=> 4096 us 
  // <6=> 8192 us 
  // <7=> 16384 us 
  
  #ifndef QDEC_CONFIG_SAMPLEPER
  #define QDEC_CONFIG_SAMPLEPER 7
  #endif
  
  // <o> QDEC_CONFIG_PIO_A - A pin  <0-31> 
  
  
  #ifndef QDEC_CONFIG_PIO_A
  #define QDEC_CONFIG_PIO_A 31
  #endif
  
  // <o> QDEC_CONFIG_PIO_B - B pin  <0-31> 
  
  
  #ifndef QDEC_CONFIG_PIO_B
  #define QDEC_CONFIG_PIO_B 31
  #endif
  
  // <o> QDEC_CONFIG_PIO_LED - LED pin  <0-31> 
  
  
  #ifndef QDEC_CONFIG_PIO_LED
  #define QDEC_CONFIG_PIO_LED 31
  #endif
  
  // <o> QDEC_CONFIG_LEDPRE - LED pre 
  #ifndef QDEC_CONFIG_LEDPRE
  #define QDEC_CONFIG_LEDPRE 511
  #endif
  
  // <o> QDEC_CONFIG_LEDPOL  - LED polarity
   
  // <0=> Active low 
  // <1=> Active high 
  
  #ifndef QDEC_CONFIG_LEDPOL
  #define QDEC_CONFIG_LEDPOL 1
  #endif
  
  // <q> QDEC_CONFIG_DBFEN  - Debouncing enable
   
  
  #ifndef QDEC_CONFIG_DBFEN
  #define QDEC_CONFIG_DBFEN 0
  #endif
  
  // <q> QDEC_CONFIG_SAMPLE_INTEN  - Sample ready interrupt enable
   
  
  #ifndef QDEC_CONFIG_SAMPLE_INTEN
  #define QDEC_CONFIG_SAMPLE_INTEN 0
  #endif
  
  // <o> QDEC_CONFIG_IRQ_PRIORITY  - Interrupt priority
   
  
  // <i> Priorities 0,2 (nRF51) and 0,1,4,5 (nRF52) are reserved for SoftDevice
  // <0=> 0 (highest) 
  // <1=> 1 
  // <2=> 2 
  // <3=> 3 
  // <4=> 4 
  // <5=> 5 
  // <6=> 6 
  // <7=> 7 
  
  #ifndef QDEC_CONFIG_IRQ_PRIORITY
  #define QDEC_CONFIG_IRQ_PRIORITY 7
  #endif
  
  // </e>
  
  // <e> RNG_ENABLED - nrf_drv_rng - RNG peripheral driver
  //==========================================================
  #ifndef RNG_ENABLED
  #define RNG_ENABLED 0
  #endif
  // <q> RNG_CONFIG_ERROR_CORRECTION  - Error correction
   
  
  #ifndef RNG_CONFIG_ERROR_CORRECTION
  #define RNG_CONFIG_ERROR_CORRECTION 0
  #endif
  
  // <o> RNG_CONFIG_POOL_SIZE - Pool size 
  #ifndef RNG_CONFIG_POOL_SIZE
  #define RNG_CONFIG_POOL_SIZE 32
  #endif
  
  // <o> RNG_CONFIG_IRQ_PRIORITY  - Interrupt priority
   
  
  // <i> Priorities 0,2 (nRF51) and 0,1,4,5 (nRF52) are reserved for SoftDevice
  // <0=> 0 (highest) 
  // <1=> 1 
  // <2=> 2 
  // <3=> 3 
  // <4=> 4 
  // <5=> 5 
  // <6=> 6 
  // <7=> 7 
  
  #ifndef RNG_CONFIG_IRQ_PRIORITY
  #define RNG_CONFIG_IRQ_PRIORITY 7
  #endif
  
  // </e>
  
  // <e> RTC_ENABLED - nrf_drv_rtc - RTC peripheral driver
  //==========================================================
  #ifndef RTC_ENABLED
  #define RTC_ENABLED 0
  #endif
  // <o> RTC_DEFAULT_CONFIG_FREQUENCY - Frequency  <16-32768> 
  
  
  #ifndef RTC_DEFAULT_CONFIG_FREQUENCY
  #define RTC_DEFAULT_CONFIG_FREQUENCY 32768
  #endif
  
  // <q> RTC_DEFAULT_CONFIG_RELIABLE  - Ensures safe compare event triggering
   
  
  #ifndef RTC_DEFAULT_CONFIG_RELIABLE
  #define RTC_DEFAULT_CONFIG_RELIABLE 0
  #endif
  
  // <o> RTC_DEFAULT_CONFIG_IRQ_PRIORITY  - Interrupt priority
   
  
  // <i> Priorities 0,2 (nRF51) and 0,1,4,5 (nRF52) are reserved for SoftDevice
  // <0=> 0 (highest) 
  // <1=> 1 
  // <2=> 2 
  // <3=> 3 
  // <4=> 4 
  // <5=> 5 
  // <6=> 6 
  // <7=> 7 
  
  #ifndef RTC_DEFAULT_CONFIG_IRQ_PRIORITY
  #define RTC_DEFAULT_CONFIG_IRQ_PRIORITY 7
  #endif
  
  // <q> RTC0_ENABLED  - Enable RTC0 instance
   
  
  #ifndef RTC0_ENABLED
  #define RTC0_ENABLED 0
  #endif
  
  // <q> RTC1_ENABLED  - Enable RTC1 instance
   
  
  #ifndef RTC1_ENABLED
  #define RTC1_ENABLED 0
  #endif
  
  // <q> RTC2_ENABLED  - Enable RTC2 instance
   
  
  #ifndef RTC2_ENABLED
  #define RTC2_ENABLED 0
  #endif
  
  // <o> NRF_MAXIMUM_LATENCY_US - Maximum possible time[us] in highest priority interrupt 
  #ifndef NRF_MAXIMUM_LATENCY_US
  #define NRF_MAXIMUM_LATENCY_US 2000
  #endif
  
  // </e>
  
  // <e> SAADC_ENABLED - nrf_drv_saadc - SAADC peripheral driver
  //==========================================================
  #ifndef SAADC_ENABLED
  #define SAADC_ENABLED 0
  #endif
  // <o> SAADC_CONFIG_RESOLUTION  - Resolution
   
  // <0=> 8 bit 
  // <1=> 10 bit 
  // <2=> 12 bit 
  // <3=> 14 bit 
  
  #ifndef SAADC_CONFIG_RESOLUTION
  #define SAADC_CONFIG_RESOLUTION 1
  #endif
  
  // <o> SAADC_CONFIG_OVERSAMPLE  - Sample period
   
  // <0=> Disabled 
  // <1=> 2x 
  // <2=> 4x 
  // <3=> 8x 
  // <4=> 16x 
  // <5=> 32x 
  // <6=> 64x 
  // <7=> 128x 
  // <8=> 256x 
  
  #ifndef SAADC_CONFIG_OVERSAMPLE
  #define SAADC_CONFIG_OVERSAMPLE 0
  #endif
  
  // <q> SAADC_CONFIG_LP_MODE  - Enabling low power mode
   
  
  #ifndef SAADC_CONFIG_LP_MODE
  #define SAADC_CONFIG_LP_MODE 0
  #endif
  
  // <o> SAADC_CONFIG_IRQ_PRIORITY  - Interrupt priority
   
  
  // <i> Priorities 0,2 (nRF51) and 0,1,4,5 (nRF52) are reserved for SoftDevice
  // <0=> 0 (highest) 
  // <1=> 1 
  // <2=> 2 
  // <3=> 3 
  // <4=> 4 
  // <5=> 5 
  // <6=> 6 
  // <7=> 7 
  
  #ifndef SAADC_CONFIG_IRQ_PRIORITY
  #define SAADC_CONFIG_IRQ_PRIORITY 7
  #endif
  
  // </e>
  
  // <e> SPIS_ENABLED - nrf_drv_spis - SPI Slave driver
  //==========================================================
  #ifndef SPIS_ENABLED
  #define SPIS_ENABLED 0
  #endif
  // <o> SPIS_DEFAULT_CONFIG_IRQ_PRIORITY  - Interrupt priority
   
  
  // <i> Priorities 0,2 (nRF51) and 0,1,4,5 (nRF52) are reserved for SoftDevice
  // <0=> 0 (highest) 
  // <1=> 1 
  // <2=> 2 
  // <3=> 3 
  // <4=> 4 
  // <5=> 5 
  // <6=> 6 
  // <7=> 7 
  
  #ifndef SPIS_DEFAULT_CONFIG_IRQ_PRIORITY
  #define SPIS_DEFAULT_CONFIG_IRQ_PRIORITY 7
  #endif
  
  // <o> SPIS_DEFAULT_MODE  - Mode
   
  // <0=> MODE_0 
  // <1=> MODE_1 
  // <2=> MODE_2 
  // <3=> MODE_3 
  
  #ifndef SPIS_DEFAULT_MODE
  #define SPIS_DEFAULT_MODE 0
  #endif
  
  // <o> SPIS_DEFAULT_BIT_ORDER  - SPIS default bit order
   
  // <0=> MSB first 
  // <1=> LSB first 
  
  #ifndef SPIS_DEFAULT_BIT_ORDER
  #define SPIS_DEFAULT_BIT_ORDER 0
  #endif
  
  // <o> SPIS_DEFAULT_DEF - SPIS default DEF character  <0-255> 
  
  
  #ifndef SPIS_DEFAULT_DEF
  #define SPIS_DEFAULT_DEF 255
  #endif
  
  // <o> SPIS_DEFAULT_ORC - SPIS default ORC character  <0-255> 
  
  
  #ifndef SPIS_DEFAULT_ORC
  #define SPIS_DEFAULT_ORC 255
  #endif
  
  // <q> SPIS0_ENABLED  - Enable SPIS0 instance
   
  
  #ifndef SPIS0_ENABLED
  #define SPIS0_ENABLED 0
  #endif
  
  // <q> SPIS1_ENABLED  - Enable SPIS1 instance
   
  
  #ifndef SPIS1_ENABLED
  #define SPIS1_ENABLED 0
  #endif
  
  // <q> SPIS2_ENABLED  - Enable SPIS2 instance
   
  
  #ifndef SPIS2_ENABLED
  #define SPIS2_ENABLED 0
  #endif
  
  // <q> SPIS_NRF52_ANOMALY_109_WORKAROUND_ENABLED  - Enables nRF52 Anomaly 109 workaround for SPIS.
   
  
  // <i> The workaround uses a GPIOTE channel to generate interrupts
  // <i> on falling edges detected on the CSN line. This will make
  // <i> the CPU active for the moment when SPIS starts DMA transfers,
  // <i> and this way the transfers will be protected.
  // <i> This workaround uses GPIOTE driver, so this driver must be
  // <i> enabled as well.
  
  #ifndef SPIS_NRF52_ANOMALY_109_WORKAROUND_ENABLED
  #define SPIS_NRF52_ANOMALY_109_WORKAROUND_ENABLED 0
  #endif
  
  // </e>
  
  // <e> SPI_ENABLED - nrf_drv_spi - SPI/SPIM peripheral driver
  //==========================================================
  #ifndef SPI_ENABLED
  #define SPI_ENABLED 0
  #endif
  // <o> SPI_DEFAULT_CONFIG_IRQ_PRIORITY  - Interrupt priority
   
  
  // <i> Priorities 0,2 (nRF51) and 0,1,4,5 (nRF52) are reserved for SoftDevice
  // <0=> 0 (highest) 
  // <1=> 1 
  // <2=> 2 
  // <3=> 3 
  // <4=> 4 
  // <5=> 5 
  // <6=> 6 
  // <7=> 7 
  
  #ifndef SPI_DEFAULT_CONFIG_IRQ_PRIORITY
  #define SPI_DEFAULT_CONFIG_IRQ_PRIORITY 7
  #endif
  
  // <o> SPI_DEFAULT_FREQUENCY  - SPI frequency
   
  // <33554432=> 125 kHz 
  // <67108864=> 250 kHz 
  // <134217728=> 500 kHz 
  // <268435456=> 1 MHz 
  // <536870912=> 2 MHz 
  // <1073741824=> 4 MHz 
  // <2147483648=> 8 MHz 
  
  #ifndef SPI_DEFAULT_FREQUENCY
  #define SPI_DEFAULT_FREQUENCY 1073741824
  #endif
  
  // <o> NRF_SPI_DRV_MISO_PULLUP_CFG  - MISO PIN pull-up configuration.
   
  // <0=> NRF_GPIO_PIN_NOPULL 
  // <1=> NRF_GPIO_PIN_PULLDOWN 
  // <3=> NRF_GPIO_PIN_PULLUP 
  
  #ifndef NRF_SPI_DRV_MISO_PULLUP_CFG
  #define NRF_SPI_DRV_MISO_PULLUP_CFG 1
  #endif
  
  // <e> SPI0_ENABLED - Enable SPI0 instance
  //==========================================================
  #ifndef SPI0_ENABLED
  #define SPI0_ENABLED 0
  #endif
  // <q> SPI0_USE_EASY_DMA  - Use EasyDMA
   
  
  #ifndef SPI0_USE_EASY_DMA
  #define SPI0_USE_EASY_DMA 1
  #endif
  
  // </e>
  
  // <e> SPI1_ENABLED - Enable SPI1 instance
  //==========================================================
  #ifndef SPI1_ENABLED
  #define SPI1_ENABLED 0
  #endif
  // <q> SPI1_USE_EASY_DMA  - Use EasyDMA
   
  
  #ifndef SPI1_USE_EASY_DMA
  #define SPI1_USE_EASY_DMA 1
  #endif
  
  // </e>
  
  // <e> SPI2_ENABLED - Enable SPI2 instance
  //==========================================================
  #ifndef SPI2_ENABLED
  #define SPI2_ENABLED 0
  #endif
  // <q> SPI2_USE_EASY_DMA  - Use EasyDMA
   
  
  #ifndef SPI2_USE_EASY_DMA
  #define SPI2_USE_EASY_DMA 1
  #endif
  
  // </e>
  
  // <q> SPIM_NRF52_ANOMALY_109_WORKAROUND_ENABLED  - Enables nRF52 anomaly 109 workaround for SPIM.
   
  
  // <i> The workaround uses interrupts to wake up the CPU by catching
  // <i> a start event of zero-length transmission to start the clock. This 
  // <i> ensures that the DMA transfer will be executed without issues and
  // <i> that the proper transfer will be started. See more in the Errata 
  // <i> document or Anomaly 109 Addendum located at 
  // <i> https://infocenter.nordicsemi.com/
  
  #ifndef SPIM_NRF52_ANOMALY_109_WORKAROUND_ENABLED
  #define SPIM_NRF52_ANOMALY_109_WORKAROUND_ENABLED 0
  #endif
  
  // </e>
  
  // <e> TIMER_ENABLED - nrf_drv_timer - TIMER periperal driver
  //==========================================================
  #ifndef TIMER_ENABLED
  #define TIMER_ENABLED 0
  #endif
  // <o> TIMER_DEFAULT_CONFIG_FREQUENCY  - Timer frequency if in Timer mode
   
  // <0=> 16 MHz 
  // <1=> 8 MHz 
  // <2=> 4 MHz 
  // <3=> 2 MHz 
  // <4=> 1 MHz 
  // <5=> 500 kHz 
  // <6=> 250 kHz 
  // <7=> 125 kHz 
  // <8=> 62.5 kHz 
  // <9=> 31.25 kHz 
  
  #ifndef TIMER_DEFAULT_CONFIG_FREQUENCY
  #define TIMER_DEFAULT_CONFIG_FREQUENCY 0
  #endif
  
  // <o> TIMER_DEFAULT_CONFIG_MODE  - Timer mode or operation
   
  // <0=> Timer 
  // <1=> Counter 
  
  #ifndef TIMER_DEFAULT_CONFIG_MODE
  #define TIMER_DEFAULT_CONFIG_MODE 0
  #endif
  
  // <o> TIMER_DEFAULT_CONFIG_BIT_WIDTH  - Timer counter bit width
   
  // <0=> 16 bit 
  // <1=> 8 bit 
  // <2=> 24 bit 
  // <3=> 32 bit 
  
  #ifndef TIMER_DEFAULT_CONFIG_BIT_WIDTH
  #define TIMER_DEFAULT_CONFIG_BIT_WIDTH 0
  #endif
  
  // <o> TIMER_DEFAULT_CONFIG_IRQ_PRIORITY  - Interrupt priority
   
  
  // <i> Priorities 0,2 (nRF51) and 0,1,4,5 (nRF52) are reserved for SoftDevice
  // <0=> 0 (highest) 
  // <1=> 1 
  // <2=> 2 
  // <3=> 3 
  // <4=> 4 
  // <5=> 5 
  // <6=> 6 
  // <7=> 7 
  
  #ifndef TIMER_DEFAULT_CONFIG_IRQ_PRIORITY
  #define TIMER_DEFAULT_CONFIG_IRQ_PRIORITY 7
  #endif
  
  // <q> TIMER0_ENABLED  - Enable TIMER0 instance
   
  
  #ifndef TIMER0_ENABLED
  #define TIMER0_ENABLED 0
  #endif
  
  // <q> TIMER1_ENABLED  - Enable TIMER1 instance
   
  
  #ifndef TIMER1_ENABLED
  #define TIMER1_ENABLED 0
  #endif
  
  // <q> TIMER2_ENABLED  - Enable TIMER2 instance
   
  
  #ifndef TIMER2_ENABLED
  #define TIMER2_ENABLED 0
  #endif
  
  // <q> TIMER3_ENABLED  - Enable TIMER3 instance
   
  
  #ifndef TIMER3_ENABLED
  #define TIMER3_ENABLED 0
  #endif
  
  // <q> TIMER4_ENABLED  - Enable TIMER4 instance
   
  
  #ifndef TIMER4_ENABLED
  #define TIMER4_ENABLED 0
  #endif
  
  // </e>
  
  // <e> TWIS_ENABLED - nrf_drv_twis - TWIS peripheral driver
  //==========================================================
  #ifndef TWIS_ENABLED
  #define TWIS_ENABLED 0
  #endif
  // <o> TWIS_DEFAULT_CONFIG_ADDR0 - Address0 
  #ifndef TWIS_DEFAULT_CONFIG_ADDR0
  #define TWIS_DEFAULT_CONFIG_ADDR0 0
  #endif
  
  // <o> TWIS_DEFAULT_CONFIG_ADDR1 - Address1 
  #ifndef TWIS_DEFAULT_CONFIG_ADDR1
  #define TWIS_DEFAULT_CONFIG_ADDR1 0
  #endif
  
  // <o> TWIS_DEFAULT_CONFIG_SCL_PULL  - SCL pin pull configuration
   
  // <0=> Disabled 
  // <1=> Pull down 
  // <3=> Pull up 
  
  #ifndef TWIS_DEFAULT_CONFIG_SCL_PULL
  #define TWIS_DEFAULT_CONFIG_SCL_PULL 0
  #endif
  
  // <o> TWIS_DEFAULT_CONFIG_SDA_PULL  - SDA pin pull configuration
   
  // <0=> Disabled 
  // <1=> Pull down 
  // <3=> Pull up 
  
  #ifndef TWIS_DEFAULT_CONFIG_SDA_PULL
  #define TWIS_DEFAULT_CONFIG_SDA_PULL 0
  #endif
  
  // <o> TWIS_DEFAULT_CONFIG_IRQ_PRIORITY  - Interrupt priority
   
  
  // <i> Priorities 0,2 (nRF51) and 0,1,4,5 (nRF52) are reserved for SoftDevice
  // <0=> 0 (highest) 
  // <1=> 1 
  // <2=> 2 
  // <3=> 3 
  // <4=> 4 
  // <5=> 5 
  // <6=> 6 
  // <7=> 7 
  
  #ifndef TWIS_DEFAULT_CONFIG_IRQ_PRIORITY
  #define TWIS_DEFAULT_CONFIG_IRQ_PRIORITY 7
  #endif
  
  // <q> TWIS0_ENABLED  - Enable TWIS0 instance
   
  
  #ifndef TWIS0_ENABLED
  #define TWIS0_ENABLED 0
  #endif
  
  // <q> TWIS1_ENABLED  - Enable TWIS1 instance
   
  
  #ifndef TWIS1_ENABLED
  #define TWIS1_ENABLED 0
  #endif
  
  // <q> TWIS_ASSUME_INIT_AFTER_RESET_ONLY  - Assume that any instance would be initialized only once
   
  
  // <i> Optimization flag. Registers used by TWIS are shared by other peripherals. Normally, during initialization driver tries to clear all registers to known state before doing the initialization itself. This gives initialization safe procedure, no matter when it would be called. If you activate TWIS only once and do never uninitialize it - set this flag to 1 what gives more optimal code.
  
  #ifndef TWIS_ASSUME_INIT_AFTER_RESET_ONLY
  #define TWIS_ASSUME_INIT_AFTER_RESET_ONLY 0
  #endif
  
  // <q> TWIS_NO_SYNC_MODE  - Remove support for synchronous mode
   
  
  // <i> Synchronous mode would be used in specific situations. And it uses some additional code and data memory to safely process state machine by polling it in status functions. If this functionality is not required it may be disabled to free some resources.
  
  #ifndef TWIS_NO_SYNC_MODE
  #define TWIS_NO_SYNC_MODE 0
  #endif
  
  // </e>
  
  // <e> TWI_ENABLED - nrf_drv_twi - TWI/TWIM peripheral driver
  //==========================================================
  #ifndef TWI_ENABLED
  #define TWI_ENABLED 0
  #endif
  // <o> TWI_DEFAULT_CONFIG_FREQUENCY  - Frequency
   
  // <26738688=> 100k 
  // <67108864=> 250k 
  // <104857600=> 400k 
  
  #ifndef TWI_DEFAULT_CONFIG_FREQUENCY
  #define TWI_DEFAULT_CONFIG_FREQUENCY 26738688
  #endif
  
  // <q> TWI_DEFAULT_CONFIG_CLR_BUS_INIT  - Enables bus clearing procedure during init
   
  
  #ifndef TWI_DEFAULT_CONFIG_CLR_BUS_INIT
  #define TWI_DEFAULT_CONFIG_CLR_BUS_INIT 0
  #endif
  
  // <q> TWI_DEFAULT_CONFIG_HOLD_BUS_UNINIT  - Enables bus holding after uninit
   
  
  #ifndef TWI_DEFAULT_CONFIG_HOLD_BUS_UNINIT
  #define TWI_DEFAULT_CONFIG_HOLD_BUS_UNINIT 0
  #endif
  
  // <o> TWI_DEFAULT_CONFIG_IRQ_PRIORITY  - Interrupt priority
   
  
  // <i> Priorities 0,2 (nRF51) and 0,1,4,5 (nRF52) are reserved for SoftDevice
  // <0=> 0 (highest) 
  // <1=> 1 
  // <2=> 2 
  // <3=> 3 
  // <4=> 4 
  // <5=> 5 
  // <6=> 6 
  // <7=> 7 
  
  #ifndef TWI_DEFAULT_CONFIG_IRQ_PRIORITY
  #define TWI_DEFAULT_CONFIG_IRQ_PRIORITY 7
  #endif
  
  // <e> TWI0_ENABLED - Enable TWI0 instance
  //==========================================================
  #ifndef TWI0_ENABLED
  #define TWI0_ENABLED 0
  #endif
  // <q> TWI0_USE_EASY_DMA  - Use EasyDMA (if present)
   
  
  #ifndef TWI0_USE_EASY_DMA
  #define TWI0_USE_EASY_DMA 0
  #endif
  
  // </e>
  
  // <e> TWI1_ENABLED - Enable TWI1 instance
  //==========================================================
  #ifndef TWI1_ENABLED
  #define TWI1_ENABLED 0
  #endif
  // <q> TWI1_USE_EASY_DMA  - Use EasyDMA (if present)
   
  
  #ifndef TWI1_USE_EASY_DMA
  #define TWI1_USE_EASY_DMA 0
  #endif
  
  // </e>
  
  // <q> TWIM_NRF52_ANOMALY_109_WORKAROUND_ENABLED  - Enables nRF52 anomaly 109 workaround for TWIM.
   
  
  // <i> The workaround uses interrupts to wake up the CPU by catching
  // <i> the start event of zero-frequency transmission, clear the 
  // <i> peripheral, set desired frequency, start the peripheral, and
  // <i> the proper transmission. See more in the Errata document or
  // <i> Anomaly 109 Addendum located at https://infocenter.nordicsemi.com/
  
  #ifndef TWIM_NRF52_ANOMALY_109_WORKAROUND_ENABLED
  #define TWIM_NRF52_ANOMALY_109_WORKAROUND_ENABLED 0
  #endif
  
  // </e>
  
  // <e> UART_ENABLED - nrf_drv_uart - UART/UARTE peripheral driver
  //==========================================================
  #ifndef UART_ENABLED
  #define UART_ENABLED 1
  #endif
  // <o> UART_DEFAULT_CONFIG_HWFC  - Hardware Flow Control
   
  // <0=> Disabled 
  // <1=> Enabled 
  
  #ifndef UART_DEFAULT_CONFIG_HWFC
  #define UART_DEFAULT_CONFIG_HWFC 0
  #endif
  
  // <o> UART_DEFAULT_CONFIG_PARITY  - Parity
   
  // <0=> Excluded 
  // <14=> Included 
  
  #ifndef UART_DEFAULT_CONFIG_PARITY
  #define UART_DEFAULT_CONFIG_PARITY 0
  #endif
  
  // <o> UART_DEFAULT_CONFIG_BAUDRATE  - Default Baudrate
   
  // <323584=> 1200 baud 
  // <643072=> 2400 baud 
  // <1290240=> 4800 baud 
  // <2576384=> 9600 baud 
  // <3862528=> 14400 baud 
  // <5152768=> 19200 baud 
  // <7716864=> 28800 baud 
  // <10289152=> 38400 baud 
  // <15400960=> 57600 baud 
  // <20615168=> 76800 baud 
  // <30801920=> 115200 baud 
  // <61865984=> 230400 baud 
  // <67108864=> 250000 baud 
  // <121634816=> 460800 baud 
  // <251658240=> 921600 baud 
  // <268435456=> 1000000 baud 
  
  #ifndef UART_DEFAULT_CONFIG_BAUDRATE
  #define UART_DEFAULT_CONFIG_BAUDRATE 30801920
  #endif
  
  // <o> UART_DEFAULT_CONFIG_IRQ_PRIORITY  - Interrupt priority
   
  
  // <i> Priorities 0,2 (nRF51) and 0,1,4,5 (nRF52) are reserved for SoftDevice
  // <0=> 0 (highest) 
  // <1=> 1 
  // <2=> 2 
  // <3=> 3 
  // <4=> 4 
  // <5=> 5 
  // <6=> 6 
  // <7=> 7 
  
  #ifndef UART_DEFAULT_CONFIG_IRQ_PRIORITY
  #define UART_DEFAULT_CONFIG_IRQ_PRIORITY 7
  #endif
  
  // <q> UART_EASY_DMA_SUPPORT  - Driver supporting EasyDMA
   
  
  #ifndef UART_EASY_DMA_SUPPORT
  #define UART_EASY_DMA_SUPPORT 1
  #endif
  
  // <q> UART_LEGACY_SUPPORT  - Driver supporting Legacy mode
   
  
  #ifndef UART_LEGACY_SUPPORT
  #define UART_LEGACY_SUPPORT 1
  #endif
  
  // <e> UART0_ENABLED - Enable UART0 instance
  //==========================================================
  #ifndef UART0_ENABLED
  #define UART0_ENABLED 1
  #endif
  // <q> UART0_CONFIG_USE_EASY_DMA  - Default setting for using EasyDMA
   
  
  #ifndef UART0_CONFIG_USE_EASY_DMA
  #define UART0_CONFIG_USE_EASY_DMA 1
  #endif
  
  // </e>
  
  // </e>
  
  // <e> USBD_ENABLED - nrf_drv_usbd - USB driver
  //==========================================================
  #ifndef USBD_ENABLED
  #define USBD_ENABLED 0
  #endif
  // <o> USBD_CONFIG_IRQ_PRIORITY  - Interrupt priority
   
  
  // <i> Priorities 0,2 (nRF51) and 0,1,4,5 (nRF52) are reserved for SoftDevice
  // <0=> 0 (highest) 
  // <1=> 1 
  // <2=> 2 
  // <3=> 3 
  // <4=> 4 
  // <5=> 5 
  // <6=> 6 
  // <7=> 7 
  
  #ifndef USBD_CONFIG_IRQ_PRIORITY
  #define USBD_CONFIG_IRQ_PRIORITY 7
  #endif
  
  // <o> NRF_DRV_USBD_DMASCHEDULER_MODE  - USBD SMA scheduler working scheme
   
  // <0=> Prioritized access 
  // <1=> Round Robin 
  
  #ifndef NRF_DRV_USBD_DMASCHEDULER_MODE
  #define NRF_DRV_USBD_DMASCHEDULER_MODE 0
  #endif
  
  // </e>
  
  // <e> WDT_ENABLED - nrf_drv_wdt - WDT peripheral driver
  //==========================================================
  #ifndef WDT_ENABLED
  #define WDT_ENABLED 0
  #endif
  // <o> WDT_CONFIG_BEHAVIOUR  - WDT behavior in CPU SLEEP or HALT mode
   
  // <1=> Run in SLEEP, Pause in HALT 
  // <8=> Pause in SLEEP, Run in HALT 
  // <9=> Run in SLEEP and HALT 
  // <0=> Pause in SLEEP and HALT 
  
  #ifndef WDT_CONFIG_BEHAVIOUR
  #define WDT_CONFIG_BEHAVIOUR 1
  #endif
  
  // <o> WDT_CONFIG_RELOAD_VALUE - Reload value  <15-4294967295> 
  
  
  #ifndef WDT_CONFIG_RELOAD_VALUE
  #define WDT_CONFIG_RELOAD_VALUE 2000
  #endif
  
  // <o> WDT_CONFIG_IRQ_PRIORITY  - Interrupt priority
   
  
  // <i> Priorities 0,2 (nRF51) and 0,1,4,5 (nRF52) are reserved for SoftDevice
  // <0=> 0 (highest) 
  // <1=> 1 
  // <2=> 2 
  // <3=> 3 
  // <4=> 4 
  // <5=> 5 
  // <6=> 6 
  // <7=> 7 
  
  #ifndef WDT_CONFIG_IRQ_PRIORITY
  #define WDT_CONFIG_IRQ_PRIORITY 7
  #endif
  
  // </e>
  
  // </h> 
  //==========================================================
  
  // <h> nRF_IoT 
  
  //==========================================================
  // <o> IPV6_DEFAULT_HOP_LIMIT - ipv6_utils - IoT utilities  <1-255> 
  
  
  // <i> This parameter indicates how many hops by default IPv6 packets can do. Each router which forward IPv6 packets to another host/router decrease this value by 1. When this field become 0, the packet is discarded. Hop limit value of 1,64 or 255 are prefarable in case of more efficient compression.
  
  #ifndef IPV6_DEFAULT_HOP_LIMIT
  #define IPV6_DEFAULT_HOP_LIMIT 64
  #endif
  
  // <h> ble_6lowpan - 6LoWPAN over BLE and Internet Protocol Support Profile library
  
  //==========================================================
  // <q> BLE_6LOWPAN_DISABLE_API_PARAM_CHECK  - Enable or disable API parameter check.
   
  
  // <i> API parameter checks are added to ensure right parameters are passed to the module. These checks are useful during development phase but be redundant once application is developed. Disabling this can result in some code saving.
  
  #ifndef BLE_6LOWPAN_DISABLE_API_PARAM_CHECK
  #define BLE_6LOWPAN_DISABLE_API_PARAM_CHECK 0
  #endif
  
  // <e> IOT_BLE_6LOWPAN_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef IOT_BLE_6LOWPAN_CONFIG_LOG_ENABLED
  #define IOT_BLE_6LOWPAN_CONFIG_LOG_ENABLED 0
  #endif
  // <o> IOT_BLE_6LOWPAN_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef IOT_BLE_6LOWPAN_CONFIG_LOG_LEVEL
  #define IOT_BLE_6LOWPAN_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> IOT_BLE_6LOWPAN_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef IOT_BLE_6LOWPAN_CONFIG_INFO_COLOR
  #define IOT_BLE_6LOWPAN_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> IOT_BLE_6LOWPAN_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef IOT_BLE_6LOWPAN_CONFIG_DEBUG_COLOR
  #define IOT_BLE_6LOWPAN_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <q> BLE_6LOWPAN_LEGACY_MODE  - Enable legacy mode of IID derivation from Bluetooth Device Address and Link Layer address size determination. The legacy mode is not compatible with the RFC7668 sepcification. For the Linux Kernel versions higher or equal to 4.12 this define has to be set to 0, otherwise to 1.
   
  
  #ifndef BLE_6LOWPAN_LEGACY_MODE
  #define BLE_6LOWPAN_LEGACY_MODE 1
  #endif
  
  // </h> 
  //==========================================================
  
  // <h> iot_context_manager - Context Manager
  
  //==========================================================
  // <q> IOT_CONTEXT_MANAGER_DISABLE_API_PARAM_CHECK  - Enable or disable API parameter check.
   
  
  // <i> API parameter checks are added to ensure right parameters are passed to the module. These checks are useful during development phase but be redundant once application is developed. Disabling this can result in some code saving.
  
  #ifndef IOT_CONTEXT_MANAGER_DISABLE_API_PARAM_CHECK
  #define IOT_CONTEXT_MANAGER_DISABLE_API_PARAM_CHECK 0
  #endif
  
  // <e> IOT_CONTEXT_MANAGER_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef IOT_CONTEXT_MANAGER_CONFIG_LOG_ENABLED
  #define IOT_CONTEXT_MANAGER_CONFIG_LOG_ENABLED 0
  #endif
  // <o> IOT_CONTEXT_MANAGER_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef IOT_CONTEXT_MANAGER_CONFIG_LOG_LEVEL
  #define IOT_CONTEXT_MANAGER_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> IOT_CONTEXT_MANAGER_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef IOT_CONTEXT_MANAGER_CONFIG_INFO_COLOR
  #define IOT_CONTEXT_MANAGER_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> IOT_CONTEXT_MANAGER_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef IOT_CONTEXT_MANAGER_CONFIG_DEBUG_COLOR
  #define IOT_CONTEXT_MANAGER_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <o> IOT_CONTEXT_MANAGER_MAX_CONTEXTS - Maximum number of supported context identifiers.  <1-16> 
  
  
  // <i> Maximum value of 16 is preferable to correct decompression.
  
  #ifndef IOT_CONTEXT_MANAGER_MAX_CONTEXTS
  #define IOT_CONTEXT_MANAGER_MAX_CONTEXTS 16
  #endif
  
  // <o> IOT_CONTEXT_MANAGER_MAX_TABLES - Maximum number of supported context's table.  <1-255> 
  
  
  // <i> If value is equal to BLE_IPSP_MAX_CHANNELS then all interface will have its own table which is preferable. This value should be less or equal to BLE_IPSP_MAX_CHANNELS.
  
  #ifndef IOT_CONTEXT_MANAGER_MAX_TABLES
  #define IOT_CONTEXT_MANAGER_MAX_TABLES 1
  #endif
  
  // </h> 
  //==========================================================
  
  // <h> iot_pbuffer - Packet buffer for IPv6 stack
  
  //==========================================================
  // <q> IOT_PBUFFER_DISABLE_API_PARAM_CHECK  - Enable or disable API parameter check.
   
  
  // <i> API parameter checks are added to ensure right parameters are passed to the module. These checks are useful during development phase but be redundant once application is developed. Disabling this can result in some code saving.
  
  #ifndef IOT_PBUFFER_DISABLE_API_PARAM_CHECK
  #define IOT_PBUFFER_DISABLE_API_PARAM_CHECK 0
  #endif
  
  // <e> IOT_PBUFFER_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef IOT_PBUFFER_CONFIG_LOG_ENABLED
  #define IOT_PBUFFER_CONFIG_LOG_ENABLED 0
  #endif
  // <o> IOT_PBUFFER_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef IOT_PBUFFER_CONFIG_LOG_LEVEL
  #define IOT_PBUFFER_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> IOT_PBUFFER_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef IOT_PBUFFER_CONFIG_INFO_COLOR
  #define IOT_PBUFFER_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> IOT_PBUFFER_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef IOT_PBUFFER_CONFIG_DEBUG_COLOR
  #define IOT_PBUFFER_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <o> IOT_PBUFFER_MAX_COUNT - Maximum packet buffers managed by the module.  <1-255> 
  
  
  #ifndef IOT_PBUFFER_MAX_COUNT
  #define IOT_PBUFFER_MAX_COUNT 10
  #endif
  
  // </h> 
  //==========================================================
  
  // <h> iot_timer - IoT Timer
  
  //==========================================================
  // <q> IOT_TIMER_DISABLE_API_PARAM_CHECK  - Disables API parameter checks in the module.
   
  
  // <i> API parameter checks are added to ensure right parameters are passed to the module. These checks are useful during development phase but be redundant once application is developed. Disabling this can result in some code saving.
  
  #ifndef IOT_TIMER_DISABLE_API_PARAM_CHECK
  #define IOT_TIMER_DISABLE_API_PARAM_CHECK 0
  #endif
  
  // <o> IOT_TIMER_RESOLUTION_IN_MS - Wall clock resolution in milliseconds.  <1-4294967295> 
  
  
  // <i> The wall clock of the IoT Timer module has to be updated from an external source at regular intervals. This define needs to be set to the interval between updates.
  
  #ifndef IOT_TIMER_RESOLUTION_IN_MS
  #define IOT_TIMER_RESOLUTION_IN_MS 500
  #endif
  
  // </h> 
  //==========================================================
  
  // <h> ipv6_dns6 - Domain Name System Client (DNS)
  
  //==========================================================
  // <q> DNS6_DISABLE_API_PARAM_CHECK  - Enable or disable API parameter check.
   
  
  // <i> API parameter checks are added to ensure right parameters are passed to the module. These checks are useful during development phase but be redundant once application is developed. Disabling this can result in some code saving.
  
  #ifndef DNS6_DISABLE_API_PARAM_CHECK
  #define DNS6_DISABLE_API_PARAM_CHECK 0
  #endif
  
  // <e> DNS6_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef DNS6_CONFIG_LOG_ENABLED
  #define DNS6_CONFIG_LOG_ENABLED 0
  #endif
  // <o> DNS6_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef DNS6_CONFIG_LOG_LEVEL
  #define DNS6_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> DNS6_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef DNS6_CONFIG_INFO_COLOR
  #define DNS6_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> DNS6_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef DNS6_CONFIG_DEBUG_COLOR
  #define DNS6_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <o> DNS6_MAX_PENDING_QUERIES - Maximum number of pending queries in queue.  <1-65534> 
  
  
  #ifndef DNS6_MAX_PENDING_QUERIES
  #define DNS6_MAX_PENDING_QUERIES 3
  #endif
  
  // <o> DNS6_MAX_RETRANSMISSION_COUNT - Max number of retransmissions.  <0-255> 
  
  
  // <i> Set this define to 0 to disable retransmission attempts.
  
  #ifndef DNS6_MAX_RETRANSMISSION_COUNT
  #define DNS6_MAX_RETRANSMISSION_COUNT 3
  #endif
  
  // <o> DNS6_RETRANSMISSION_INTERVAL - Interval between retransmissions in seconds.  <2-4294967295> 
  
  
  #ifndef DNS6_RETRANSMISSION_INTERVAL
  #define DNS6_RETRANSMISSION_INTERVAL 2
  #endif
  
  // </h> 
  //==========================================================
  
  // <h> ipv6_icmp6 - Internet Control Message Protocol (ICMP6)
  
  //==========================================================
  // <q> ICMP6_DISABLE_API_PARAM_CHECK  - Enable or disable API parameter check.
   
  
  // <i> API parameter checks are added to ensure right parameters are passed to the module. These checks are useful during development phase but be redundant once application is developed. Disabling this can result in some code saving.
  
  #ifndef ICMP6_DISABLE_API_PARAM_CHECK
  #define ICMP6_DISABLE_API_PARAM_CHECK 0
  #endif
  
  // <q> ICMP6_ENABLE_ALL_MESSAGES_TO_APPLICATION  - Enables call ICMPv6 event handler on getting any of ICMPv6 message.
   
  
  // <i> Set this parameter to 1 to enable call ICMPv6 event handler on receiving any of ICMPv6 messages including error, Neighbour Discovery or ping messages.
  
  #ifndef ICMP6_ENABLE_ALL_MESSAGES_TO_APPLICATION
  #define ICMP6_ENABLE_ALL_MESSAGES_TO_APPLICATION 1
  #endif
  
  // <q> ICMP6_ENABLE_HANDLE_ECHO_REQUEST_TO_APPLICATION  - Enable or disable internal ECHO response.
   
  
  // <i> Set this parameter to 1 to disable internal ECHO RESPONSE sending after processing ICMP packet in application (if ICMP6_ENABLE_ALL_MESSAGES_TO_APPLICATION is set). Application then is responsible of processing ECHO REQUEST and should also generate ECHO RESPONSE by itself. Set this parameter to 0 to let automatically reply inside of ICMP6 module, after processing it by application.
  
  #ifndef ICMP6_ENABLE_HANDLE_ECHO_REQUEST_TO_APPLICATION
  #define ICMP6_ENABLE_HANDLE_ECHO_REQUEST_TO_APPLICATION 0
  #endif
  
  // <e> ICMP6_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef ICMP6_CONFIG_LOG_ENABLED
  #define ICMP6_CONFIG_LOG_ENABLED 0
  #endif
  // <o> ICMP6_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef ICMP6_CONFIG_LOG_LEVEL
  #define ICMP6_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> ICMP6_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef ICMP6_CONFIG_INFO_COLOR
  #define ICMP6_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> ICMP6_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef ICMP6_CONFIG_DEBUG_COLOR
  #define ICMP6_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <q> ICMP6_ENABLE_ND6_MESSAGES_TO_APPLICATION  - Enables call ICMPv6 event handler on getting Neighbour Discovery message.
   
  
  // <i> Set this parameter to 1 to enable call ICMPv6 event handler on receiving one of Neighbour Discovery messages.
  
  #ifndef ICMP6_ENABLE_ND6_MESSAGES_TO_APPLICATION
  #define ICMP6_ENABLE_ND6_MESSAGES_TO_APPLICATION 0
  #endif
  
  // <o> ICMP6_ERROR_MESSAGE_MAX_SIZE  - Maximum error message size when transmitting.
   
  
  // <i> Error messages contain partial or complete IPv6 packet that resulted in transmission of error message in the host. See RFC 4443 for details. This configurable parameter allows limiting the size of ICMP packet when responding with an error message. The size defined here is inclusive of ICMP Header.
  // <48=> 48 
  // <1240=> 1240 
  
  #ifndef ICMP6_ERROR_MESSAGE_MAX_SIZE
  #define ICMP6_ERROR_MESSAGE_MAX_SIZE 128
  #endif
  
  // </h> 
  //==========================================================
  
  // <h> ipv6_medium - IPv6 Medium
  
  //==========================================================
  // <e> IPV6_MEDIUM_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef IPV6_MEDIUM_CONFIG_LOG_ENABLED
  #define IPV6_MEDIUM_CONFIG_LOG_ENABLED 0
  #endif
  // <o> IPV6_MEDIUM_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef IPV6_MEDIUM_CONFIG_LOG_LEVEL
  #define IPV6_MEDIUM_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> IPV6_MEDIUM_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef IPV6_MEDIUM_CONFIG_INFO_COLOR
  #define IPV6_MEDIUM_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> IPV6_MEDIUM_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef IPV6_MEDIUM_CONFIG_DEBUG_COLOR
  #define IPV6_MEDIUM_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <o> APP_ADV_ADV_INTERVAL - The advertising interval. This value can vary between 100ms to 10.24s.  <32-16384> 
  
  
  // <i> Minimum 0x0020, maximum 0x4000, unit UNIT_0_625_MS.
  
  #ifndef APP_ADV_ADV_INTERVAL
  #define APP_ADV_ADV_INTERVAL 532
  #endif
  
  // <o> APP_ADV_TIMEOUT - Time for which the device must be advertising in non-connectable mode (in seconds). 0 disables timeout.  <0-16383> 
  
  
  #ifndef APP_ADV_TIMEOUT
  #define APP_ADV_TIMEOUT 0
  #endif
  
  // <o> COMPANY_IDENTIFIER  - Company identifier for Nordic Semiconductor ASA as per www.bluetooth.org.
   
  // <89=> 89 
  
  #ifndef COMPANY_IDENTIFIER
  #define COMPANY_IDENTIFIER 89
  #endif
  
  // <o> CONFIG_MODE_ADV_ADV_INTERVAL - If COMMISSIONING_ENABLED is defined: The advertising interval in Configuration mode. This value can vary between 100ms to 10.24s.  <32-16384> 
  
  
  // <i> Minimum 0x0020, maximum 0x4000, unit UNIT_0_625_MS.
  
  #ifndef CONFIG_MODE_ADV_ADV_INTERVAL
  #define CONFIG_MODE_ADV_ADV_INTERVAL 532
  #endif
  
  // <o> CONFIG_MODE_ADV_TIMEOUT - If COMMISSIONING_ENABLED is defined: Time for which the device must be advertising in non-connectable mode (in seconds) in Configuration mode. 0 disables timeout.  <0-16383> 
  
  
  #ifndef CONFIG_MODE_ADV_TIMEOUT
  #define CONFIG_MODE_ADV_TIMEOUT 0
  #endif
  
  // <o> CONFIG_MODE_CONN_SUP_TIMEOUT - If COMMISSIONING_ENABLED is defined: Connection Supervision Timeout in 10 ms units in Configuration mode, see BLE_GAP_CP_LIMITS. 
  // <i> Minimum BLE_GAP_CP_CONN_SUP_TIMEOUT_MIN, maximum BLE_GAP_CP_CONN_SUP_TIMEOUT_MAX, unit UNIT_10_MS.
  
  #ifndef CONFIG_MODE_CONN_SUP_TIMEOUT
  #define CONFIG_MODE_CONN_SUP_TIMEOUT 43
  #endif
  
  // <s> CONFIG_MODE_DEVICE_NAME - If COMMISSIONING_ENABLED is defined: Device name used in BLE undirected advertisement in Configuration mode.
  #ifndef CONFIG_MODE_DEVICE_NAME
  #define CONFIG_MODE_DEVICE_NAME "Node_Cfg"
  #endif
  
  // <o> CONFIG_MODE_MAX_CONN_INTERVAL - If COMMISSIONING_ENABLED is defined: Maximum Connection Interval in 1.25 ms units in Configuration mode, see BLE_GAP_CP_LIMITS. 
  // <i> Minimum BLE_GAP_CP_MAX_CONN_INTVL_MIN, maximum BLE_GAP_CP_MAX_CONN_INTVL_MAX, unit UNIT_1_25_MS.
  
  #ifndef CONFIG_MODE_MAX_CONN_INTERVAL
  #define CONFIG_MODE_MAX_CONN_INTERVAL 24
  #endif
  
  // <o> CONFIG_MODE_MIN_CONN_INTERVAL - If COMMISSIONING_ENABLED is defined: Minimum Connection Interval in 1.25 ms units in Configuration mode, see BLE_GAP_CP_LIMITS. 
  // <i> Minimum BLE_GAP_CP_MIN_CONN_INTVL_MIN, maximum BLE_GAP_CP_MIN_CONN_INTVL_MAX, unit UNIT_1_25_MS
  
  #ifndef CONFIG_MODE_MIN_CONN_INTERVAL
  #define CONFIG_MODE_MIN_CONN_INTERVAL 6
  #endif
  
  // <o> CONFIG_MODE_SLAVE_LATENCY - If COMMISSIONING_ENABLED is defined: Slave Latency in number of connection events in Configuration mode, see BLE_GAP_CP_LIMITS. 
  // <i> Minimum 0, maximum BLE_GAP_CP_SLAVE_LATENCY_MAX.
  
  #ifndef CONFIG_MODE_SLAVE_LATENCY
  #define CONFIG_MODE_SLAVE_LATENCY 6
  #endif
  
  // <o> CONN_SUP_TIMEOUT - Connection Supervision Timeout in 10 ms units, see BLE_GAP_CP_LIMITS. 
  // <i> Minimum BLE_GAP_CP_CONN_SUP_TIMEOUT_MIN, maximum BLE_GAP_CP_CONN_SUP_TIMEOUT_MAX, unit UNIT_10_MS
  
  #ifndef CONN_SUP_TIMEOUT
  #define CONN_SUP_TIMEOUT 43
  #endif
  
  // <s> DEVICE_NAME - Device name used in BLE undirected advertisement if COMMISSIONING_ENABLED is not defined.
  #ifndef DEVICE_NAME
  #define DEVICE_NAME "DNS_Client"
  #endif
  
  // <q> IS_SRVC_CHANGED_CHARACT_PRESENT  - Include the Service Changed characteristic in the Attribute Table.
   
  
  #ifndef IS_SRVC_CHANGED_CHARACT_PRESENT
  #define IS_SRVC_CHANGED_CHARACT_PRESENT 0
  #endif
  
  // <o> JOINING_MODE_ADV_ADV_INTERVAL - If COMMISSIONING_ENABLED is defined: The advertising interval in Joining mode. This value can vary between 100ms to 10.24s.  <32-16384> 
  
  
  // <i> Minimum 0x0020, maximum 0x4000, unit UNIT_0_625_MS.
  
  #ifndef JOINING_MODE_ADV_ADV_INTERVAL
  #define JOINING_MODE_ADV_ADV_INTERVAL 532
  #endif
  
  // <o> JOINING_MODE_ADV_TIMEOUT - If COMMISSIONING_ENABLED is defined: Time for which the device must be advertising in non-connectable mode (in seconds) in Joining mode. 0 disables timeout.  <0-16383> 
  
  
  #ifndef JOINING_MODE_ADV_TIMEOUT
  #define JOINING_MODE_ADV_TIMEOUT 0
  #endif
  
  // <o> JOINING_MODE_CONN_SUP_TIMEOUT - If COMMISSIONING_ENABLED is defined: Connection Supervision Timeout in 10 ms units in Joining mode, see BLE_GAP_CP_LIMITS. 
  // <i> Minimum BLE_GAP_CP_CONN_SUP_TIMEOUT_MIN, maximum BLE_GAP_CP_CONN_SUP_TIMEOUT_MAX, unit UNIT_10_MS.
  
  #ifndef JOINING_MODE_CONN_SUP_TIMEOUT
  #define JOINING_MODE_CONN_SUP_TIMEOUT 43
  #endif
  
  // <o> JOINING_MODE_MAX_CONN_INTERVAL - If COMMISSIONING_ENABLED is defined: Maximum Connection Interval in 1.25 ms units in Joining mode, see BLE_GAP_CP_LIMITS. 
  // <i> Minimum BLE_GAP_CP_MAX_CONN_INTVL_MIN, maximum BLE_GAP_CP_MAX_CONN_INTVL_MAX, unit UNIT_1_25_MS.
  
  #ifndef JOINING_MODE_MAX_CONN_INTERVAL
  #define JOINING_MODE_MAX_CONN_INTERVAL 24
  #endif
  
  // <o> JOINING_MODE_MIN_CONN_INTERVAL - If COMMISSIONING_ENABLED is defined: Minimum Connection Interval in 1.25 ms units in Joining mode, see BLE_GAP_CP_LIMITS. 
  // <i> Minimum BLE_GAP_CP_MIN_CONN_INTVL_MIN, maximum BLE_GAP_CP_MIN_CONN_INTVL_MAX, unit UNIT_1_25_MS.
  
  #ifndef JOINING_MODE_MIN_CONN_INTERVAL
  #define JOINING_MODE_MIN_CONN_INTERVAL 6
  #endif
  
  // <o> JOINING_MODE_SLAVE_LATENCY - If COMMISSIONING_ENABLED is defined: Slave Latency in number of connection events in Joining mode, see BLE_GAP_CP_LIMITS. 
  // <i> Minimum 0, maximum BLE_GAP_CP_SLAVE_LATENCY_MAX.
  
  #ifndef JOINING_MODE_SLAVE_LATENCY
  #define JOINING_MODE_SLAVE_LATENCY 6
  #endif
  
  // <o> MAX_CONN_INTERVAL - Maximum Connection Interval in 1.25 ms units, see BLE_GAP_CP_LIMITS. 
  // <i> Minimum BLE_GAP_CP_MAX_CONN_INTVL_MIN, maximum BLE_GAP_CP_MAX_CONN_INTVL_MAX, unit UNIT_1_25_MS.
  
  #ifndef MAX_CONN_INTERVAL
  #define MAX_CONN_INTERVAL 24
  #endif
  
  // <o> MIN_CONN_INTERVAL - Minimum Connection Interval in 1.25 ms units, see BLE_GAP_CP_LIMITS. 
  // <i> Minimum BLE_GAP_CP_MIN_CONN_INTVL_MIN, maximum BLE_GAP_CP_MIN_CONN_INTVL_MAX, unit UNIT_1_25_MS.
  
  #ifndef MIN_CONN_INTERVAL
  #define MIN_CONN_INTERVAL 6
  #endif
  
  // <o> SLAVE_LATENCY - Slave Latency in number of connection events, see BLE_GAP_CP_LIMITS. 
  // <i> Minimum 0, maximum BLE_GAP_CP_SLAVE_LATENCY_MAX.
  
  #ifndef SLAVE_LATENCY
  #define SLAVE_LATENCY 6
  #endif
  
  // <q> BLE_IPV6_MEDIUM_ENABLED  - Enabling BLE IPv6 module
   
  
  #ifndef BLE_IPV6_MEDIUM_ENABLED
  #define BLE_IPV6_MEDIUM_ENABLED 1
  #endif
  
  // </h> 
  //==========================================================
  
  // <h> ipv6_stack - Internet Protocol version 6 (IPv6)
  
  //==========================================================
  // <q> IPV6_DISABLE_API_PARAM_CHECK  - Enable or disable API parameter check.
   
  
  // <i> API parameter checks are added to ensure right parameters are passed to the module. These checks are useful during development phase but be redundant once application is developed. Disabling this can result in some code saving.
  
  #ifndef IPV6_DISABLE_API_PARAM_CHECK
  #define IPV6_DISABLE_API_PARAM_CHECK 0
  #endif
  
  // <e> IPV6_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef IPV6_CONFIG_LOG_ENABLED
  #define IPV6_CONFIG_LOG_ENABLED 0
  #endif
  // <o> IPV6_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef IPV6_CONFIG_LOG_LEVEL
  #define IPV6_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> IPV6_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef IPV6_CONFIG_INFO_COLOR
  #define IPV6_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> IPV6_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef IPV6_CONFIG_DEBUG_COLOR
  #define IPV6_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <q> IPV6_ENABLE_USNUPORTED_PROTOCOLS_TO_APPLICATION  - Enables call application event handler if getting unsupported transport protocols.
   
  
  // <i> Set this parameter to 1 to enable event while getting unsupported transport protocol. In the current implementation, it means, all transport protocols besides ICMPv6 or UDP.
  
  #ifndef IPV6_ENABLE_USNUPORTED_PROTOCOLS_TO_APPLICATION
  #define IPV6_ENABLE_USNUPORTED_PROTOCOLS_TO_APPLICATION 0
  #endif
  
  // <o> IPV6_MAX_ADDRESS_PER_INTERFACE - Number of IPv6 addresses supported per interface.  <1-255> 
  
  
  // <i> Number of IPv6 address supported including link local address.
  
  #ifndef IPV6_MAX_ADDRESS_PER_INTERFACE
  #define IPV6_MAX_ADDRESS_PER_INTERFACE 3
  #endif
  
  // <o> IPV6_MAX_INTERFACE - Number of IPv6 network interface.  <1-255> 
  
  
  #ifndef IPV6_MAX_INTERFACE
  #define IPV6_MAX_INTERFACE 1
  #endif
  
  // </h> 
  //==========================================================
  
  // <h> ipv6_udp - User Datagram Protocol (UDP)
  
  //==========================================================
  // <q> UDP6_DISABLE_API_PARAM_CHECK  - Enable or disable API parameter check.
   
  
  // <i> API parameter checks are added to ensure right parameters are passed to the module. These checks are useful during development phase but be redundant once application is developed. Disabling this can result in some code saving.
  
  #ifndef UDP6_DISABLE_API_PARAM_CHECK
  #define UDP6_DISABLE_API_PARAM_CHECK 0
  #endif
  
  // <e> UDP6_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef UDP6_CONFIG_LOG_ENABLED
  #define UDP6_CONFIG_LOG_ENABLED 0
  #endif
  // <o> UDP6_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef UDP6_CONFIG_LOG_LEVEL
  #define UDP6_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> UDP6_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef UDP6_CONFIG_INFO_COLOR
  #define UDP6_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> UDP6_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef UDP6_CONFIG_DEBUG_COLOR
  #define UDP6_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <o> UDP6_MAX_SOCKET_COUNT - The max number of sockets to support for UDP module.  <1-255> 
  
  
  #ifndef UDP6_MAX_SOCKET_COUNT
  #define UDP6_MAX_SOCKET_COUNT 3
  #endif
  
  // </h> 
  //==========================================================
  
  // </h> 
  //==========================================================
  
  // <h> nRF_IoT_Commissioning 
  
  //==========================================================
  // <e> COMMISSIONING_CONFIG_LOG_ENABLED - commissioning - IoT Commissioning module
  //==========================================================
  #ifndef COMMISSIONING_CONFIG_LOG_ENABLED
  #define COMMISSIONING_CONFIG_LOG_ENABLED 0
  #endif
  // <o> COMMISSIONING_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef COMMISSIONING_CONFIG_LOG_LEVEL
  #define COMMISSIONING_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> COMMISSIONING_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef COMMISSIONING_CONFIG_INFO_COLOR
  #define COMMISSIONING_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> COMMISSIONING_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef COMMISSIONING_CONFIG_DEBUG_COLOR
  #define COMMISSIONING_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> NCFGS_CONFIG_LOG_ENABLED - ble_ncfgs - BLE Node Configuration Service
  //==========================================================
  #ifndef NCFGS_CONFIG_LOG_ENABLED
  #define NCFGS_CONFIG_LOG_ENABLED 0
  #endif
  // <o> NCFGS_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef NCFGS_CONFIG_LOG_LEVEL
  #define NCFGS_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> NCFGS_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NCFGS_CONFIG_INFO_COLOR
  #define NCFGS_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> NCFGS_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NCFGS_CONFIG_DEBUG_COLOR
  #define NCFGS_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // </h> 
  //==========================================================
  
  // <h> nRF_Libraries 
  
  //==========================================================
  // <q> APP_GPIOTE_ENABLED  - app_gpiote - GPIOTE events dispatcher
   
  
  #ifndef APP_GPIOTE_ENABLED
  #define APP_GPIOTE_ENABLED 0
  #endif
  
  // <q> APP_PWM_ENABLED  - app_pwm - PWM functionality
   
  
  #ifndef APP_PWM_ENABLED
  #define APP_PWM_ENABLED 0
  #endif
  
  // <e> APP_SCHEDULER_ENABLED - app_scheduler - Events scheduler
  //==========================================================
  #ifndef APP_SCHEDULER_ENABLED
  #define APP_SCHEDULER_ENABLED 1
  #endif
  // <q> APP_SCHEDULER_WITH_PAUSE  - Enabling pause feature
   
  
  #ifndef APP_SCHEDULER_WITH_PAUSE
  #define APP_SCHEDULER_WITH_PAUSE 0
  #endif
  
  // <q> APP_SCHEDULER_WITH_PROFILER  - Enabling scheduler profiling
   
  
  #ifndef APP_SCHEDULER_WITH_PROFILER
  #define APP_SCHEDULER_WITH_PROFILER 0
  #endif
  
  // </e>
  
  // <e> APP_TIMER_ENABLED - app_timer - Application timer functionality
  //==========================================================
  #ifndef APP_TIMER_ENABLED
  #define APP_TIMER_ENABLED 1
  #endif
  // <o> APP_TIMER_CONFIG_RTC_FREQUENCY  - Configure RTC prescaler.
   
  // <0=> 32768 Hz 
  // <1=> 16384 Hz 
  // <3=> 8192 Hz 
  // <7=> 4096 Hz 
  // <15=> 2048 Hz 
  // <31=> 1024 Hz 
  
  #ifndef APP_TIMER_CONFIG_RTC_FREQUENCY
  #define APP_TIMER_CONFIG_RTC_FREQUENCY 31
  #endif
  
  // <o> APP_TIMER_CONFIG_IRQ_PRIORITY  - Interrupt priority
   
  
  // <i> Priorities 0,2 (nRF51) and 0,1,4,5 (nRF52) are reserved for SoftDevice
  // <0=> 0 (highest) 
  // <1=> 1 
  // <2=> 2 
  // <3=> 3 
  // <4=> 4 
  // <5=> 5 
  // <6=> 6 
  // <7=> 7 
  
  #ifndef APP_TIMER_CONFIG_IRQ_PRIORITY
  #define APP_TIMER_CONFIG_IRQ_PRIORITY 7
  #endif
  
  // <o> APP_TIMER_CONFIG_OP_QUEUE_SIZE - Capacity of timer requests queue. 
  // <i> Size of the queue depends on how many timers are used
  // <i> in the system, how often timers are started and overall
  // <i> system latency. If queue size is too small app_timer calls
  // <i> will fail.
  
  #ifndef APP_TIMER_CONFIG_OP_QUEUE_SIZE
  #define APP_TIMER_CONFIG_OP_QUEUE_SIZE 10
  #endif
  
  // <q> APP_TIMER_CONFIG_USE_SCHEDULER  - Enable scheduling app_timer events to app_scheduler
   
  
  #ifndef APP_TIMER_CONFIG_USE_SCHEDULER
  #define APP_TIMER_CONFIG_USE_SCHEDULER 1
  #endif
  
  // <q> APP_TIMER_WITH_PROFILER  - Enable app_timer profiling
   
  
  #ifndef APP_TIMER_WITH_PROFILER
  #define APP_TIMER_WITH_PROFILER 0
  #endif
  
  // <q> APP_TIMER_KEEPS_RTC_ACTIVE  - Enable RTC always on
   
  
  // <i> If option is enabled RTC is kept running even if there is no active timers.
  // <i> This option can be used when app_timer is used for timestamping.
  
  #ifndef APP_TIMER_KEEPS_RTC_ACTIVE
  #define APP_TIMER_KEEPS_RTC_ACTIVE 0
  #endif
  
  // <o> APP_TIMER_CONFIG_SWI_NUMBER  - Configure SWI instance used.
   
  // <0=> 0 
  // <1=> 1 
  
  #ifndef APP_TIMER_CONFIG_SWI_NUMBER
  #define APP_TIMER_CONFIG_SWI_NUMBER 0
  #endif
  
  // </e>
  
  // <q> APP_TWI_ENABLED  - app_twi - TWI transaction manager wrapper. Switch to nrf_twi_mngr usage.
   
  
  #ifndef APP_TWI_ENABLED
  #define APP_TWI_ENABLED 0
  #endif
  
  // <e> APP_UART_ENABLED - app_uart - UART driver
  //==========================================================
  #ifndef APP_UART_ENABLED
  #define APP_UART_ENABLED 0
  #endif
  // <o> APP_UART_DRIVER_INSTANCE  - UART instance used
   
  // <0=> 0 
  
  #ifndef APP_UART_DRIVER_INSTANCE
  #define APP_UART_DRIVER_INSTANCE 0
  #endif
  
  // </e>
  
  // <q> APP_USBD_CLASS_AUDIO_ENABLED  - app_usbd_audio - USB AUDIO class
   
  
  #ifndef APP_USBD_CLASS_AUDIO_ENABLED
  #define APP_USBD_CLASS_AUDIO_ENABLED 0
  #endif
  
  // <q> APP_USBD_CLASS_CDC_ACM_ENABLED  - app_usbd_cdc_acm - USB CDC ACM class
   
  
  #ifndef APP_USBD_CLASS_CDC_ACM_ENABLED
  #define APP_USBD_CLASS_CDC_ACM_ENABLED 0
  #endif
  
  // <q> APP_USBD_CLASS_HID_ENABLED  - app_usbd_hid - USB HID class
   
  
  #ifndef APP_USBD_CLASS_HID_ENABLED
  #define APP_USBD_CLASS_HID_ENABLED 0
  #endif
  
  // <q> APP_USBD_HID_GENERIC_ENABLED  - app_usbd_hid_generic - USB HID generic
   
  
  #ifndef APP_USBD_HID_GENERIC_ENABLED
  #define APP_USBD_HID_GENERIC_ENABLED 0
  #endif
  
  // <q> APP_USBD_HID_KBD_ENABLED  - app_usbd_hid_kbd - USB HID keyboard
   
  
  #ifndef APP_USBD_HID_KBD_ENABLED
  #define APP_USBD_HID_KBD_ENABLED 0
  #endif
  
  // <q> APP_USBD_HID_MOUSE_ENABLED  - app_usbd_hid_mouse - USB HID mouse
   
  
  #ifndef APP_USBD_HID_MOUSE_ENABLED
  #define APP_USBD_HID_MOUSE_ENABLED 0
  #endif
  
  // <q> APP_USBD_MSC_ENABLED  - app_usbd_msc - USB MSC class
   
  
  #ifndef APP_USBD_MSC_ENABLED
  #define APP_USBD_MSC_ENABLED 0
  #endif
  
  // <q> BUTTON_ENABLED  - app_button - buttons handling module
   
  
  #ifndef BUTTON_ENABLED
  #define BUTTON_ENABLED 1
  #endif
  
  // <q> CRC16_ENABLED  - crc16 - CRC16 calculation routines
   
  
  #ifndef CRC16_ENABLED
  #define CRC16_ENABLED 1
  #endif
  
  // <q> CRC32_ENABLED  - crc32 - CRC32 calculation routines
   
  
  #ifndef CRC32_ENABLED
  #define CRC32_ENABLED 0
  #endif
  
  // <q> ECC_ENABLED  - ecc - Elliptic Curve Cryptography Library
   
  
  #ifndef ECC_ENABLED
  #define ECC_ENABLED 0
  #endif
  
  // <e> FDS_ENABLED - fds - Flash data storage module
  //==========================================================
  #ifndef FDS_ENABLED
  #define FDS_ENABLED 1
  #endif
  // <h> Pages - Virtual page settings
  
  // <i> Configure the number of virtual pages to use and their size.
  //==========================================================
  // <o> FDS_VIRTUAL_PAGES - Number of virtual flash pages to use. 
  // <i> One of the virtual pages is reserved by the system for garbage collection.
  // <i> Therefore, the minimum is two virtual pages: one page to store data and one page to be used by the system for garbage collection.
  // <i> The total amount of flash memory that is used by FDS amounts to @ref FDS_VIRTUAL_PAGES * @ref FDS_VIRTUAL_PAGE_SIZE * 4 bytes.
  
  #ifndef FDS_VIRTUAL_PAGES
  #define FDS_VIRTUAL_PAGES 3
  #endif
  
  // <o> FDS_VIRTUAL_PAGE_SIZE  - The size of a virtual flash page.
   
  
  // <i> Expressed in number of 4-byte words.
  // <i> By default, a virtual page is the same size as a physical page.
  // <i> The size of a virtual page must be a multiple of the size of a physical page.
  // <1024=> 1024 
  // <2048=> 2048 
  
  #ifndef FDS_VIRTUAL_PAGE_SIZE
  #define FDS_VIRTUAL_PAGE_SIZE 1024
  #endif
  
  // </h> 
  //==========================================================
  
  // <h> Backend - Backend configuration
  
  // <i> Configure which nrf_fstorage backend is used by FDS to write to flash.
  //==========================================================
  // <o> FDS_BACKEND  - FDS flash backend.
   
  
  // <i> NRF_FSTORAGE_SD uses the nrf_fstorage_sd backend implementation using the SoftDevice API. Use this if you have a SoftDevice present.
  // <i> NRF_FSTORAGE_NVMC uses the nrf_fstorage_nvmc implementation. Use this setting if you don't use the SoftDevice.
  // <1=> NRF_FSTORAGE_NVMC 
  // <2=> NRF_FSTORAGE_SD 
  
  #ifndef FDS_BACKEND
  #define FDS_BACKEND 2
  #endif
  
  // </h> 
  //==========================================================
  
  // <h> Queue - Queue settings
  
  //==========================================================
  // <o> FDS_OP_QUEUE_SIZE - Size of the internal queue. 
  // <i> Increase this value if you frequently get synchronous FDS_ERR_NO_SPACE_IN_QUEUES errors.
  
  #ifndef FDS_OP_QUEUE_SIZE
  #define FDS_OP_QUEUE_SIZE 4
  #endif
  
  // </h> 
  //==========================================================
  
  // <h> CRC - CRC functionality
  
  //==========================================================
  // <e> FDS_CRC_CHECK_ON_READ - Enable CRC checks.
  
  // <i> Save a record's CRC when it is written to flash and check it when the record is opened.
  // <i> Records with an incorrect CRC can still be 'seen' by the user using FDS functions, but they cannot be opened.
  // <i> Additionally, they will not be garbage collected until they are deleted.
  //==========================================================
  #ifndef FDS_CRC_CHECK_ON_READ
  #define FDS_CRC_CHECK_ON_READ 0
  #endif
  // <o> FDS_CRC_CHECK_ON_WRITE  - Perform a CRC check on newly written records.
   
  
  // <i> Perform a CRC check on newly written records.
  // <i> This setting can be used to make sure that the record data was not altered while being written to flash.
  // <1=> Enabled 
  // <0=> Disabled 
  
  #ifndef FDS_CRC_CHECK_ON_WRITE
  #define FDS_CRC_CHECK_ON_WRITE 0
  #endif
  
  // </e>
  
  // </h> 
  //==========================================================
  
  // <h> Users - Number of users
  
  //==========================================================
  // <o> FDS_MAX_USERS - Maximum number of callbacks that can be registered. 
  #ifndef FDS_MAX_USERS
  #define FDS_MAX_USERS 4
  #endif
  
  // </h> 
  //==========================================================
  
  // </e>
  
  // <e> HARDFAULT_HANDLER_ENABLED - hardfault_default - HardFault default handler for debugging and release
  //==========================================================
  #ifndef HARDFAULT_HANDLER_ENABLED
  #define HARDFAULT_HANDLER_ENABLED 0
  #endif
  // <q> HARDFAULT_HANDLER_GDB_PSP_BACKTRACE  - Bypass the GDB problem with multiple stack pointers backtrace
   
  
  // <i> There is a known bug in GDB which causes it to incorrectly backtrace the code
  // <i> when multiple stack pointers are used (main and process stack pointers).
  // <i> This option enables the fix for that problem and allows to see the proper backtrace info.
  // <i> It makes it possible to trace the code to the exact point where a HardFault appeared.
  // <i> This option requires additional commands and may temporarily switch MSP stack to store data on PSP space.
  // <i> This is an optional parameter - enable it while debugging.
  // <i> Before a HardFault handler exits, the stack will be reverted to its previous value.
  
  #ifndef HARDFAULT_HANDLER_GDB_PSP_BACKTRACE
  #define HARDFAULT_HANDLER_GDB_PSP_BACKTRACE 1
  #endif
  
  // </e>
  
  // <e> HCI_MEM_POOL_ENABLED - hci_mem_pool - memory pool implementation used by HCI
  //==========================================================
  #ifndef HCI_MEM_POOL_ENABLED
  #define HCI_MEM_POOL_ENABLED 0
  #endif
  // <o> HCI_TX_BUF_SIZE - TX buffer size in bytes. 
  #ifndef HCI_TX_BUF_SIZE
  #define HCI_TX_BUF_SIZE 600
  #endif
  
  // <o> HCI_RX_BUF_SIZE - RX buffer size in bytes. 
  #ifndef HCI_RX_BUF_SIZE
  #define HCI_RX_BUF_SIZE 600
  #endif
  
  // <o> HCI_RX_BUF_QUEUE_SIZE - RX buffer queue size. 
  #ifndef HCI_RX_BUF_QUEUE_SIZE
  #define HCI_RX_BUF_QUEUE_SIZE 4
  #endif
  
  // </e>
  
  // <e> HCI_SLIP_ENABLED - hci_slip - SLIP protocol implementation used by HCI
  //==========================================================
  #ifndef HCI_SLIP_ENABLED
  #define HCI_SLIP_ENABLED 0
  #endif
  // <o> HCI_UART_BAUDRATE  - Default Baudrate
   
  // <323584=> 1200 baud 
  // <643072=> 2400 baud 
  // <1290240=> 4800 baud 
  // <2576384=> 9600 baud 
  // <3862528=> 14400 baud 
  // <5152768=> 19200 baud 
  // <7716864=> 28800 baud 
  // <10289152=> 38400 baud 
  // <15400960=> 57600 baud 
  // <20615168=> 76800 baud 
  // <30801920=> 115200 baud 
  // <61865984=> 230400 baud 
  // <67108864=> 250000 baud 
  // <121634816=> 460800 baud 
  // <251658240=> 921600 baud 
  // <268435456=> 1000000 baud 
  
  #ifndef HCI_UART_BAUDRATE
  #define HCI_UART_BAUDRATE 30801920
  #endif
  
  // <o> HCI_UART_FLOW_CONTROL  - Hardware Flow Control
   
  // <0=> Disabled 
  // <1=> Enabled 
  
  #ifndef HCI_UART_FLOW_CONTROL
  #define HCI_UART_FLOW_CONTROL 0
  #endif
  
  // <o> HCI_UART_RX_PIN - UART RX pin 
  #ifndef HCI_UART_RX_PIN
  #define HCI_UART_RX_PIN 8
  #endif
  
  // <o> HCI_UART_TX_PIN - UART TX pin 
  #ifndef HCI_UART_TX_PIN
  #define HCI_UART_TX_PIN 6
  #endif
  
  // <o> HCI_UART_RTS_PIN - UART RTS pin 
  #ifndef HCI_UART_RTS_PIN
  #define HCI_UART_RTS_PIN 5
  #endif
  
  // <o> HCI_UART_CTS_PIN - UART CTS pin 
  #ifndef HCI_UART_CTS_PIN
  #define HCI_UART_CTS_PIN 7
  #endif
  
  // </e>
  
  // <e> HCI_TRANSPORT_ENABLED - hci_transport - HCI transport
  //==========================================================
  #ifndef HCI_TRANSPORT_ENABLED
  #define HCI_TRANSPORT_ENABLED 0
  #endif
  // <o> HCI_MAX_PACKET_SIZE_IN_BITS - Maximum size of a single application packet in bits. 
  #ifndef HCI_MAX_PACKET_SIZE_IN_BITS
  #define HCI_MAX_PACKET_SIZE_IN_BITS 8000
  #endif
  
  // </e>
  
  // <q> LED_SOFTBLINK_ENABLED  - led_softblink - led_softblink module
   
  
  #ifndef LED_SOFTBLINK_ENABLED
  #define LED_SOFTBLINK_ENABLED 0
  #endif
  
  // <q> LOW_POWER_PWM_ENABLED  - low_power_pwm - low_power_pwm module
   
  
  #ifndef LOW_POWER_PWM_ENABLED
  #define LOW_POWER_PWM_ENABLED 0
  #endif
  
  // <e> MEM_MANAGER_ENABLED - mem_manager - Dynamic memory allocator
  //==========================================================
  #ifndef MEM_MANAGER_ENABLED
  #define MEM_MANAGER_ENABLED 1
  #endif
  // <o> MEMORY_MANAGER_SMALL_BLOCK_COUNT - Size of each memory blocks identified as 'small' block.  <0-255> 
  
  
  #ifndef MEMORY_MANAGER_SMALL_BLOCK_COUNT
  #define MEMORY_MANAGER_SMALL_BLOCK_COUNT 8
  #endif
  
  // <o> MEMORY_MANAGER_SMALL_BLOCK_SIZE -  Size of each memory blocks identified as 'small' block. 
  // <i>  Size of each memory blocks identified as 'small' block. Memory block are recommended to be word-sized.
  
  #ifndef MEMORY_MANAGER_SMALL_BLOCK_SIZE
  #define MEMORY_MANAGER_SMALL_BLOCK_SIZE 64
  #endif
  
  // <o> MEMORY_MANAGER_MEDIUM_BLOCK_COUNT - Size of each memory blocks identified as 'medium' block.  <0-255> 
  
  
  #ifndef MEMORY_MANAGER_MEDIUM_BLOCK_COUNT
  #define MEMORY_MANAGER_MEDIUM_BLOCK_COUNT 4
  #endif
  
  // <o> MEMORY_MANAGER_MEDIUM_BLOCK_SIZE -  Size of each memory blocks identified as 'medium' block. 
  // <i>  Size of each memory blocks identified as 'medium' block. Memory block are recommended to be word-sized.
  
  #ifndef MEMORY_MANAGER_MEDIUM_BLOCK_SIZE
  #define MEMORY_MANAGER_MEDIUM_BLOCK_SIZE 256
  #endif
  
  // <o> MEMORY_MANAGER_LARGE_BLOCK_COUNT - Size of each memory blocks identified as 'large' block.  <0-255> 
  
  
  #ifndef MEMORY_MANAGER_LARGE_BLOCK_COUNT
  #define MEMORY_MANAGER_LARGE_BLOCK_COUNT 2
  #endif
  
  // <o> MEMORY_MANAGER_LARGE_BLOCK_SIZE -  Size of each memory blocks identified as 'large' block. 
  // <i>  Size of each memory blocks identified as 'large' block. Memory block are recommended to be word-sized.
  
  #ifndef MEMORY_MANAGER_LARGE_BLOCK_SIZE
  #define MEMORY_MANAGER_LARGE_BLOCK_SIZE 1280
  #endif
  
  // <o> MEMORY_MANAGER_XLARGE_BLOCK_COUNT - Size of each memory blocks identified as 'extra large' block.  <0-255> 
  
  
  #ifndef MEMORY_MANAGER_XLARGE_BLOCK_COUNT
  #define MEMORY_MANAGER_XLARGE_BLOCK_COUNT 0
  #endif
  
  // <o> MEMORY_MANAGER_XLARGE_BLOCK_SIZE -  Size of each memory blocks identified as 'extra large' block. 
  // <i>  Size of each memory blocks identified as 'extra large' block. Memory block are recommended to be word-sized.
  
  #ifndef MEMORY_MANAGER_XLARGE_BLOCK_SIZE
  #define MEMORY_MANAGER_XLARGE_BLOCK_SIZE 1320
  #endif
  
  // <o> MEMORY_MANAGER_XXLARGE_BLOCK_COUNT - Size of each memory blocks identified as 'extra extra large' block.  <0-255> 
  
  
  #ifndef MEMORY_MANAGER_XXLARGE_BLOCK_COUNT
  #define MEMORY_MANAGER_XXLARGE_BLOCK_COUNT 0
  #endif
  
  // <o> MEMORY_MANAGER_XXLARGE_BLOCK_SIZE -  Size of each memory blocks identified as 'extra extra large' block. 
  // <i>  Size of each memory blocks identified as 'extra extra large' block. Memory block are recommended to be word-sized.
  
  #ifndef MEMORY_MANAGER_XXLARGE_BLOCK_SIZE
  #define MEMORY_MANAGER_XXLARGE_BLOCK_SIZE 3444
  #endif
  
  // <o> MEMORY_MANAGER_XSMALL_BLOCK_COUNT - Size of each memory blocks identified as 'extra small' block.  <0-255> 
  
  
  #ifndef MEMORY_MANAGER_XSMALL_BLOCK_COUNT
  #define MEMORY_MANAGER_XSMALL_BLOCK_COUNT 0
  #endif
  
  // <o> MEMORY_MANAGER_XSMALL_BLOCK_SIZE -  Size of each memory blocks identified as 'extra small' block. 
  // <i>  Size of each memory blocks identified as 'extra large' block. Memory block are recommended to be word-sized.
  
  #ifndef MEMORY_MANAGER_XSMALL_BLOCK_SIZE
  #define MEMORY_MANAGER_XSMALL_BLOCK_SIZE 64
  #endif
  
  // <o> MEMORY_MANAGER_XXSMALL_BLOCK_COUNT - Size of each memory blocks identified as 'extra extra small' block.  <0-255> 
  
  
  #ifndef MEMORY_MANAGER_XXSMALL_BLOCK_COUNT
  #define MEMORY_MANAGER_XXSMALL_BLOCK_COUNT 0
  #endif
  
  // <o> MEMORY_MANAGER_XXSMALL_BLOCK_SIZE -  Size of each memory blocks identified as 'extra extra small' block. 
  // <i>  Size of each memory blocks identified as 'extra extra small' block. Memory block are recommended to be word-sized.
  
  #ifndef MEMORY_MANAGER_XXSMALL_BLOCK_SIZE
  #define MEMORY_MANAGER_XXSMALL_BLOCK_SIZE 32
  #endif
  
  // <e> MEM_MANAGER_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef MEM_MANAGER_CONFIG_LOG_ENABLED
  #define MEM_MANAGER_CONFIG_LOG_ENABLED 0
  #endif
  // <o> MEM_MANAGER_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef MEM_MANAGER_CONFIG_LOG_LEVEL
  #define MEM_MANAGER_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> MEM_MANAGER_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef MEM_MANAGER_CONFIG_INFO_COLOR
  #define MEM_MANAGER_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> MEM_MANAGER_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef MEM_MANAGER_CONFIG_DEBUG_COLOR
  #define MEM_MANAGER_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <q> MEM_MANAGER_DISABLE_API_PARAM_CHECK  - Disable API parameter checks in the module.
   
  
  #ifndef MEM_MANAGER_DISABLE_API_PARAM_CHECK
  #define MEM_MANAGER_DISABLE_API_PARAM_CHECK 0
  #endif
  
  // </e>
  
  // <e> NRF_BALLOC_ENABLED - nrf_balloc - Block allocator module
  //==========================================================
  #ifndef NRF_BALLOC_ENABLED
  #define NRF_BALLOC_ENABLED 1
  #endif
  // <e> NRF_BALLOC_CONFIG_DEBUG_ENABLED - Enables debug mode in the module.
  //==========================================================
  #ifndef NRF_BALLOC_CONFIG_DEBUG_ENABLED
  #define NRF_BALLOC_CONFIG_DEBUG_ENABLED 0
  #endif
  // <o> NRF_BALLOC_CONFIG_HEAD_GUARD_WORDS - Number of words used as head guard.  <0-255> 
  
  
  #ifndef NRF_BALLOC_CONFIG_HEAD_GUARD_WORDS
  #define NRF_BALLOC_CONFIG_HEAD_GUARD_WORDS 1
  #endif
  
  // <o> NRF_BALLOC_CONFIG_TAIL_GUARD_WORDS - Number of words used as tail guard.  <0-255> 
  
  
  #ifndef NRF_BALLOC_CONFIG_TAIL_GUARD_WORDS
  #define NRF_BALLOC_CONFIG_TAIL_GUARD_WORDS 1
  #endif
  
  // <q> NRF_BALLOC_CONFIG_BASIC_CHECKS_ENABLED  - Enables basic checks in this module.
   
  
  #ifndef NRF_BALLOC_CONFIG_BASIC_CHECKS_ENABLED
  #define NRF_BALLOC_CONFIG_BASIC_CHECKS_ENABLED 0
  #endif
  
  // <q> NRF_BALLOC_CONFIG_DOUBLE_FREE_CHECK_ENABLED  - Enables double memory free check in this module.
   
  
  #ifndef NRF_BALLOC_CONFIG_DOUBLE_FREE_CHECK_ENABLED
  #define NRF_BALLOC_CONFIG_DOUBLE_FREE_CHECK_ENABLED 0
  #endif
  
  // <q> NRF_BALLOC_CONFIG_DATA_TRASHING_CHECK_ENABLED  - Enables free memory corruption check in this module.
   
  
  #ifndef NRF_BALLOC_CONFIG_DATA_TRASHING_CHECK_ENABLED
  #define NRF_BALLOC_CONFIG_DATA_TRASHING_CHECK_ENABLED 0
  #endif
  
  // </e>
  
  // </e>
  
  // <e> NRF_CSENSE_ENABLED - nrf_csense - Capacitive sensor module
  //==========================================================
  #ifndef NRF_CSENSE_ENABLED
  #define NRF_CSENSE_ENABLED 0
  #endif
  // <o> NRF_CSENSE_PAD_HYSTERESIS - Minimum value of change required to determine that a pad was touched. 
  #ifndef NRF_CSENSE_PAD_HYSTERESIS
  #define NRF_CSENSE_PAD_HYSTERESIS 15
  #endif
  
  // <o> NRF_CSENSE_PAD_DEVIATION - Minimum value measured on a pad required to take it into account while calculating the step. 
  #ifndef NRF_CSENSE_PAD_DEVIATION
  #define NRF_CSENSE_PAD_DEVIATION 70
  #endif
  
  // <o> NRF_CSENSE_MIN_PAD_VALUE - Minimum normalized value on a pad required to take its value into account. 
  #ifndef NRF_CSENSE_MIN_PAD_VALUE
  #define NRF_CSENSE_MIN_PAD_VALUE 20
  #endif
  
  // <o> NRF_CSENSE_MAX_PADS_NUMBER - Maximum number of pads used for one instance. 
  #ifndef NRF_CSENSE_MAX_PADS_NUMBER
  #define NRF_CSENSE_MAX_PADS_NUMBER 20
  #endif
  
  // <o> NRF_CSENSE_MAX_VALUE - Maximum normalized value obtained from measurement. 
  #ifndef NRF_CSENSE_MAX_VALUE
  #define NRF_CSENSE_MAX_VALUE 1000
  #endif
  
  // <o> NRF_CSENSE_OUTPUT_PIN - Output pin used by the low-level module. 
  // <i> This is used when capacitive sensor does not use COMP.
  
  #ifndef NRF_CSENSE_OUTPUT_PIN
  #define NRF_CSENSE_OUTPUT_PIN 26
  #endif
  
  // </e>
  
  // <e> NRF_DRV_CSENSE_ENABLED - nrf_drv_csense - Capacitive sensor low-level module
  //==========================================================
  #ifndef NRF_DRV_CSENSE_ENABLED
  #define NRF_DRV_CSENSE_ENABLED 0
  #endif
  // <e> USE_COMP - Use the comparator to implement the capacitive sensor driver.
  
  // <i> Due to Anomaly 84, COMP I_SOURCE is not functional. It has too high a varation.
  //==========================================================
  #ifndef USE_COMP
  #define USE_COMP 0
  #endif
  // <o> TIMER0_FOR_CSENSE - First TIMER instance used by the driver (not used on nRF51). 
  #ifndef TIMER0_FOR_CSENSE
  #define TIMER0_FOR_CSENSE 1
  #endif
  
  // <o> TIMER1_FOR_CSENSE - Second TIMER instance used by the driver (not used on nRF51). 
  #ifndef TIMER1_FOR_CSENSE
  #define TIMER1_FOR_CSENSE 2
  #endif
  
  // <o> MEASUREMENT_PERIOD - Single measurement period. 
  // <i> Time of a single measurement can be calculated as
  // <i> T = (1/2)*MEASUREMENT_PERIOD*(1/f_OSC) where f_OSC = I_SOURCE / (2C*(VUP-VDOWN) ).
  // <i> I_SOURCE, VUP, and VDOWN are values used to initialize COMP and C is the capacitance of the used pad.
  
  #ifndef MEASUREMENT_PERIOD
  #define MEASUREMENT_PERIOD 20
  #endif
  
  // </e>
  
  // </e>
  
  // <q> NRF_FPRINTF_ENABLED  - nrf_fprintf - fprintf function.
   
  
  #ifndef NRF_FPRINTF_ENABLED
  #define NRF_FPRINTF_ENABLED 1
  #endif
  
  // <e> NRF_FSTORAGE_ENABLED - nrf_fstorage - Flash abstraction library
  //==========================================================
  #ifndef NRF_FSTORAGE_ENABLED
  #define NRF_FSTORAGE_ENABLED 1
  #endif
  // <h> nrf_fstorage_sd - Implementation using the SoftDevice.
  
  // <i> Configuration options for the fstorage implementation using the SoftDevice.
  //==========================================================
  // <o> NRF_FSTORAGE_SD_QUEUE_SIZE - Size of the internal queue of operations. 
  // <i> Increase this value if API calls frequently return the error @ref NRF_ERROR_NO_MEM.
  
  #ifndef NRF_FSTORAGE_SD_QUEUE_SIZE
  #define NRF_FSTORAGE_SD_QUEUE_SIZE 4
  #endif
  
  // <o> NRF_FSTORAGE_SD_MAX_RETRIES - Maximum number of attempts at executing an operation when the SoftDevice is busy. 
  // <i> Increase this value if events frequently return the @ref NRF_ERROR_TIMEOUT error.
  // <i> The SoftDevice might fail to schedule flash access due to high BLE activity.
  
  #ifndef NRF_FSTORAGE_SD_MAX_RETRIES
  #define NRF_FSTORAGE_SD_MAX_RETRIES 8
  #endif
  
  // <o> NRF_FSTORAGE_SD_MAX_WRITE_SIZE - Maximum number of bytes to be written to flash in a single operation. 
  // <i> This value must be a multiple of four.
  // <i> Lowering this value can increase the chances of the SoftDevice being able to execute flash operations in between radio activity.
  // <i> This value is bound by the maximum number of bytes that can be written to flash in a single call to @ref sd_flash_write.
  // <i> That is 1024 bytes for nRF51 ICs and 4096 bytes for nRF52 ICs.
  
  #ifndef NRF_FSTORAGE_SD_MAX_WRITE_SIZE
  #define NRF_FSTORAGE_SD_MAX_WRITE_SIZE 4096
  #endif
  
  // </h> 
  //==========================================================
  
  // </e>
  
  // <q> NRF_MEMOBJ_ENABLED  - nrf_memobj - Linked memory allocator module
   
  
  #ifndef NRF_MEMOBJ_ENABLED
  #define NRF_MEMOBJ_ENABLED 1
  #endif
  
  // <q> NRF_QUEUE_ENABLED  - nrf_queue - Queue module
   
  
  #ifndef NRF_QUEUE_ENABLED
  #define NRF_QUEUE_ENABLED 0
  #endif
  
  // <q> NRF_SECTION_ITER_ENABLED  - nrf_section_iter - Section iterator
   
  
  #ifndef NRF_SECTION_ITER_ENABLED
  #define NRF_SECTION_ITER_ENABLED 1
  #endif
  
  // <q> NRF_STRERROR_ENABLED  - nrf_strerror - Library for converting error code to string.
   
  
  #ifndef NRF_STRERROR_ENABLED
  #define NRF_STRERROR_ENABLED 1
  #endif
  
  // <q> NRF_TWI_MNGR_ENABLED  - nrf_twi_mngr - TWI transaction manager
   
  
  #ifndef NRF_TWI_MNGR_ENABLED
  #define NRF_TWI_MNGR_ENABLED 0
  #endif
  
  // <q> SLIP_ENABLED  - slip - SLIP encoding and decoding
   
  
  #ifndef SLIP_ENABLED
  #define SLIP_ENABLED 0
  #endif
  
  // <h> nrf_cli - Command line interface
  
  //==========================================================
  // <q> NRF_CLI_ENABLED  - Enable/disable the CLI module.
   
  
  #ifndef NRF_CLI_ENABLED
  #define NRF_CLI_ENABLED 0
  #endif
  
  // <o> NRF_CLI_ARGC_MAX - Maximum number of parameters passed to the command handler. 
  #ifndef NRF_CLI_ARGC_MAX
  #define NRF_CLI_ARGC_MAX 12
  #endif
  
  // <q> NRF_CLI_BUILD_IN_CMDS_ENABLED  - CLI built-in commands.
   
  
  #ifndef NRF_CLI_BUILD_IN_CMDS_ENABLED
  #define NRF_CLI_BUILD_IN_CMDS_ENABLED 1
  #endif
  
  // <o> NRF_CLI_CMD_BUFF_SIZE - Maximum buffer size for a single command. 
  #ifndef NRF_CLI_CMD_BUFF_SIZE
  #define NRF_CLI_CMD_BUFF_SIZE 128
  #endif
  
  // <q> NRF_CLI_ECHO_STATUS  - CLI echo status. If set, echo is ON.
   
  
  #ifndef NRF_CLI_ECHO_STATUS
  #define NRF_CLI_ECHO_STATUS 1
  #endif
  
  // <o> NRF_CLI_PRINTF_BUFF_SIZE - Maximum print buffer size. 
  #ifndef NRF_CLI_PRINTF_BUFF_SIZE
  #define NRF_CLI_PRINTF_BUFF_SIZE 23
  #endif
  
  // <e> NRF_CLI_HISTORY_ENABLED - Enable CLI history mode.
  //==========================================================
  #ifndef NRF_CLI_HISTORY_ENABLED
  #define NRF_CLI_HISTORY_ENABLED 1
  #endif
  // <o> NRF_CLI_HISTORY_ELEMENT_SIZE - Size of one memory object reserved for CLI history. 
  #ifndef NRF_CLI_HISTORY_ELEMENT_SIZE
  #define NRF_CLI_HISTORY_ELEMENT_SIZE 32
  #endif
  
  // <o> NRF_CLI_HISTORY_ELEMENT_COUNT - Number of history memory objects. 
  #ifndef NRF_CLI_HISTORY_ELEMENT_COUNT
  #define NRF_CLI_HISTORY_ELEMENT_COUNT 8
  #endif
  
  // </e>
  
  // <q> NRF_CLI_VT100_COLORS_ENABLED  - CLI VT100 colors.
   
  
  #ifndef NRF_CLI_VT100_COLORS_ENABLED
  #define NRF_CLI_VT100_COLORS_ENABLED 1
  #endif
  
  // <q> NRF_CLI_STATISTICS_ENABLED  - Enable CLI statistics.
   
  
  #ifndef NRF_CLI_STATISTICS_ENABLED
  #define NRF_CLI_STATISTICS_ENABLED 1
  #endif
  
  // <q> NRF_CLI_LOG_BACKEND  - Enable logger backend interface.
   
  
  #ifndef NRF_CLI_LOG_BACKEND
  #define NRF_CLI_LOG_BACKEND 1
  #endif
  
  // <q> NRF_CLI_USES_TASK_MANAGER_ENABLED  - Enable CLI to use task_manager
   
  
  #ifndef NRF_CLI_USES_TASK_MANAGER_ENABLED
  #define NRF_CLI_USES_TASK_MANAGER_ENABLED 0
  #endif
  
  // </h> 
  //==========================================================
  
  // </h> 
  //==========================================================
  
  // <h> nRF_Log 
  
  //==========================================================
  // <e> NRF_LOG_BACKEND_RTT_ENABLED - nrf_log_backend_rtt - Log RTT backend
  //==========================================================
  #ifndef NRF_LOG_BACKEND_RTT_ENABLED
  #define NRF_LOG_BACKEND_RTT_ENABLED 0
  #endif
  // <o> NRF_LOG_BACKEND_RTT_TEMP_BUFFER_SIZE - Size of buffer for partially processed strings. 
  // <i> Size of the buffer is a trade-off between RAM usage and processing.
  // <i> if buffer is smaller then strings will often be fragmented.
  // <i> It is recommended to use size which will fit typical log and only the
  // <i> longer one will be fragmented.
  
  #ifndef NRF_LOG_BACKEND_RTT_TEMP_BUFFER_SIZE
  #define NRF_LOG_BACKEND_RTT_TEMP_BUFFER_SIZE 64
  #endif
  
  // </e>
  
  // <e> NRF_LOG_BACKEND_UART_ENABLED - nrf_log_backend_uart - Log UART backend
  //==========================================================
  #ifndef NRF_LOG_BACKEND_UART_ENABLED
  #define NRF_LOG_BACKEND_UART_ENABLED 1
  #endif
  // <o> NRF_LOG_BACKEND_UART_TX_PIN - UART TX pin 
  #ifndef NRF_LOG_BACKEND_UART_TX_PIN
  #define NRF_LOG_BACKEND_UART_TX_PIN 6
  #endif
  
  // <o> NRF_LOG_BACKEND_UART_BAUDRATE  - Default Baudrate
   
  // <323584=> 1200 baud 
  // <643072=> 2400 baud 
  // <1290240=> 4800 baud 
  // <2576384=> 9600 baud 
  // <3862528=> 14400 baud 
  // <5152768=> 19200 baud 
  // <7716864=> 28800 baud 
  // <10289152=> 38400 baud 
  // <15400960=> 57600 baud 
  // <20615168=> 76800 baud 
  // <30801920=> 115200 baud 
  // <61865984=> 230400 baud 
  // <67108864=> 250000 baud 
  // <121634816=> 460800 baud 
  // <251658240=> 921600 baud 
  // <268435456=> 1000000 baud 
  
  #ifndef NRF_LOG_BACKEND_UART_BAUDRATE
  #define NRF_LOG_BACKEND_UART_BAUDRATE 30801920
  #endif
  
  // <o> NRF_LOG_BACKEND_UART_TEMP_BUFFER_SIZE - Size of buffer for partially processed strings. 
  // <i> Size of the buffer is a trade-off between RAM usage and processing.
  // <i> if buffer is smaller then strings will often be fragmented.
  // <i> It is recommended to use size which will fit typical log and only the
  // <i> longer one will be fragmented.
  
  #ifndef NRF_LOG_BACKEND_UART_TEMP_BUFFER_SIZE
  #define NRF_LOG_BACKEND_UART_TEMP_BUFFER_SIZE 64
  #endif
  
  // </e>
  
  // <h> nrf_log - Logger
  
  //==========================================================
  // <e> NRF_LOG_ENABLED - Logging module for nRF5 SDK
  //==========================================================
  #ifndef NRF_LOG_ENABLED
  #define NRF_LOG_ENABLED 1
  #endif
  // <e> NRF_LOG_USES_COLORS - If enabled then ANSI escape code for colors is prefixed to every string
  //==========================================================
  #ifndef NRF_LOG_USES_COLORS
  #define NRF_LOG_USES_COLORS 0
  #endif
  // <o> NRF_LOG_COLOR_DEFAULT  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_LOG_COLOR_DEFAULT
  #define NRF_LOG_COLOR_DEFAULT 0
  #endif
  
  // <o> NRF_LOG_ERROR_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_LOG_ERROR_COLOR
  #define NRF_LOG_ERROR_COLOR 2
  #endif
  
  // <o> NRF_LOG_WARNING_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_LOG_WARNING_COLOR
  #define NRF_LOG_WARNING_COLOR 4
  #endif
  
  // </e>
  
  // <o> NRF_LOG_DEFAULT_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef NRF_LOG_DEFAULT_LEVEL
  #define NRF_LOG_DEFAULT_LEVEL 3
  #endif
  
  // <q> NRF_LOG_DEFERRED  - Enable deffered logger.
   
  
  // <i> Log data is buffered and can be processed in idle.
  
  #ifndef NRF_LOG_DEFERRED
  #define NRF_LOG_DEFERRED 1
  #endif
  
  // <o> NRF_LOG_BUFSIZE  - Size of the buffer for storing logs (in bytes).
   
  
  // <i> Must be power of 2 and multiple of 4.
  // <i> If NRF_LOG_DEFERRED = 0 then buffer size can be reduced to minimum.
  // <128=> 128 
  // <256=> 256 
  // <512=> 512 
  // <1024=> 1024 
  // <2048=> 2048 
  // <4096=> 4096 
  // <8192=> 8192 
  // <16384=> 16384 
  
  #ifndef NRF_LOG_BUFSIZE
  #define NRF_LOG_BUFSIZE 1024
  #endif
  
  // <q> NRF_LOG_ALLOW_OVERFLOW  - Configures behavior when circular buffer is full.
   
  
  // <i> If set then oldest logs are overwritten. Otherwise a 
  // <i> marker is injected informing about overflow.
  
  #ifndef NRF_LOG_ALLOW_OVERFLOW
  #define NRF_LOG_ALLOW_OVERFLOW 1
  #endif
  
  // <q> NRF_LOG_USES_TIMESTAMP  - Enable timestamping
   
  
  // <i> Function for getting the timestamp is provided by the user
  
  #ifndef NRF_LOG_USES_TIMESTAMP
  #define NRF_LOG_USES_TIMESTAMP 0
  #endif
  
  // <q> NRF_LOG_FILTERS_ENABLED  - Enable dynamic filtering of logs.
   
  
  #ifndef NRF_LOG_FILTERS_ENABLED
  #define NRF_LOG_FILTERS_ENABLED 0
  #endif
  
  // <q> NRF_LOG_CLI_CMDS  - Enable CLI commands for the module.
   
  
  #ifndef NRF_LOG_CLI_CMDS
  #define NRF_LOG_CLI_CMDS 0
  #endif
  
  // <h> Log message pool - Configuration of log message pool
  
  //==========================================================
  // <o> NRF_LOG_MSGPOOL_ELEMENT_SIZE - Size of a single element in the pool of memory objects. 
  // <i> If a small value is set, then performance of logs processing
  // <i> is degraded because data is fragmented. Bigger value impacts
  // <i> RAM memory utilization. The size is set to fit a message with
  // <i> a timestamp and up to 2 arguments in a single memory object.
  
  #ifndef NRF_LOG_MSGPOOL_ELEMENT_SIZE
  #define NRF_LOG_MSGPOOL_ELEMENT_SIZE 20
  #endif
  
  // <o> NRF_LOG_MSGPOOL_ELEMENT_COUNT - Number of elements in the pool of memory objects 
  // <i> If a small value is set, then it may lead to a deadlock
  // <i> in certain cases if backend has high latency and holds
  // <i> multiple messages for long time. Bigger value impacts
  // <i> RAM memory usage.
  
  #ifndef NRF_LOG_MSGPOOL_ELEMENT_COUNT
  #define NRF_LOG_MSGPOOL_ELEMENT_COUNT 8
  #endif
  
  // </h> 
  //==========================================================
  
  // </e>
  
  // <h> nrf_log module configuration 
  
  //==========================================================
  // <h> nrf_log in nRF_Core 
  
  //==========================================================
  // <e> NRF_MPU_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef NRF_MPU_CONFIG_LOG_ENABLED
  #define NRF_MPU_CONFIG_LOG_ENABLED 0
  #endif
  // <o> NRF_MPU_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef NRF_MPU_CONFIG_LOG_LEVEL
  #define NRF_MPU_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> NRF_MPU_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_MPU_CONFIG_INFO_COLOR
  #define NRF_MPU_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> NRF_MPU_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_MPU_CONFIG_DEBUG_COLOR
  #define NRF_MPU_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> NRF_STACK_GUARD_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef NRF_STACK_GUARD_CONFIG_LOG_ENABLED
  #define NRF_STACK_GUARD_CONFIG_LOG_ENABLED 0
  #endif
  // <o> NRF_STACK_GUARD_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef NRF_STACK_GUARD_CONFIG_LOG_LEVEL
  #define NRF_STACK_GUARD_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> NRF_STACK_GUARD_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_STACK_GUARD_CONFIG_INFO_COLOR
  #define NRF_STACK_GUARD_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> NRF_STACK_GUARD_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_STACK_GUARD_CONFIG_DEBUG_COLOR
  #define NRF_STACK_GUARD_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> TASK_MANAGER_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef TASK_MANAGER_CONFIG_LOG_ENABLED
  #define TASK_MANAGER_CONFIG_LOG_ENABLED 0
  #endif
  // <o> TASK_MANAGER_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef TASK_MANAGER_CONFIG_LOG_LEVEL
  #define TASK_MANAGER_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> TASK_MANAGER_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef TASK_MANAGER_CONFIG_INFO_COLOR
  #define TASK_MANAGER_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> TASK_MANAGER_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef TASK_MANAGER_CONFIG_DEBUG_COLOR
  #define TASK_MANAGER_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // </h> 
  //==========================================================
  
  // <h> nrf_log in nRF_Drivers 
  
  //==========================================================
  // <e> CLOCK_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef CLOCK_CONFIG_LOG_ENABLED
  #define CLOCK_CONFIG_LOG_ENABLED 0
  #endif
  // <o> CLOCK_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef CLOCK_CONFIG_LOG_LEVEL
  #define CLOCK_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> CLOCK_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef CLOCK_CONFIG_INFO_COLOR
  #define CLOCK_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> CLOCK_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef CLOCK_CONFIG_DEBUG_COLOR
  #define CLOCK_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> COMMON_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef COMMON_CONFIG_LOG_ENABLED
  #define COMMON_CONFIG_LOG_ENABLED 0
  #endif
  // <o> COMMON_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef COMMON_CONFIG_LOG_LEVEL
  #define COMMON_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> COMMON_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef COMMON_CONFIG_INFO_COLOR
  #define COMMON_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> COMMON_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef COMMON_CONFIG_DEBUG_COLOR
  #define COMMON_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> COMP_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef COMP_CONFIG_LOG_ENABLED
  #define COMP_CONFIG_LOG_ENABLED 0
  #endif
  // <o> COMP_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef COMP_CONFIG_LOG_LEVEL
  #define COMP_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> COMP_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef COMP_CONFIG_INFO_COLOR
  #define COMP_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> COMP_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef COMP_CONFIG_DEBUG_COLOR
  #define COMP_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> GPIOTE_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef GPIOTE_CONFIG_LOG_ENABLED
  #define GPIOTE_CONFIG_LOG_ENABLED 0
  #endif
  // <o> GPIOTE_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef GPIOTE_CONFIG_LOG_LEVEL
  #define GPIOTE_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> GPIOTE_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef GPIOTE_CONFIG_INFO_COLOR
  #define GPIOTE_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> GPIOTE_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef GPIOTE_CONFIG_DEBUG_COLOR
  #define GPIOTE_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> I2S_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef I2S_CONFIG_LOG_ENABLED
  #define I2S_CONFIG_LOG_ENABLED 0
  #endif
  // <o> I2S_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef I2S_CONFIG_LOG_LEVEL
  #define I2S_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> I2S_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef I2S_CONFIG_INFO_COLOR
  #define I2S_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> I2S_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef I2S_CONFIG_DEBUG_COLOR
  #define I2S_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> LPCOMP_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef LPCOMP_CONFIG_LOG_ENABLED
  #define LPCOMP_CONFIG_LOG_ENABLED 0
  #endif
  // <o> LPCOMP_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef LPCOMP_CONFIG_LOG_LEVEL
  #define LPCOMP_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> LPCOMP_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef LPCOMP_CONFIG_INFO_COLOR
  #define LPCOMP_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> LPCOMP_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef LPCOMP_CONFIG_DEBUG_COLOR
  #define LPCOMP_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> PDM_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef PDM_CONFIG_LOG_ENABLED
  #define PDM_CONFIG_LOG_ENABLED 0
  #endif
  // <o> PDM_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef PDM_CONFIG_LOG_LEVEL
  #define PDM_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> PDM_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef PDM_CONFIG_INFO_COLOR
  #define PDM_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> PDM_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef PDM_CONFIG_DEBUG_COLOR
  #define PDM_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> PPI_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef PPI_CONFIG_LOG_ENABLED
  #define PPI_CONFIG_LOG_ENABLED 0
  #endif
  // <o> PPI_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef PPI_CONFIG_LOG_LEVEL
  #define PPI_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> PPI_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef PPI_CONFIG_INFO_COLOR
  #define PPI_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> PPI_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef PPI_CONFIG_DEBUG_COLOR
  #define PPI_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> PWM_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef PWM_CONFIG_LOG_ENABLED
  #define PWM_CONFIG_LOG_ENABLED 0
  #endif
  // <o> PWM_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef PWM_CONFIG_LOG_LEVEL
  #define PWM_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> PWM_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef PWM_CONFIG_INFO_COLOR
  #define PWM_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> PWM_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef PWM_CONFIG_DEBUG_COLOR
  #define PWM_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> QDEC_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef QDEC_CONFIG_LOG_ENABLED
  #define QDEC_CONFIG_LOG_ENABLED 0
  #endif
  // <o> QDEC_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef QDEC_CONFIG_LOG_LEVEL
  #define QDEC_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> QDEC_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef QDEC_CONFIG_INFO_COLOR
  #define QDEC_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> QDEC_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef QDEC_CONFIG_DEBUG_COLOR
  #define QDEC_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> RNG_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef RNG_CONFIG_LOG_ENABLED
  #define RNG_CONFIG_LOG_ENABLED 0
  #endif
  // <o> RNG_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef RNG_CONFIG_LOG_LEVEL
  #define RNG_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> RNG_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef RNG_CONFIG_INFO_COLOR
  #define RNG_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> RNG_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef RNG_CONFIG_DEBUG_COLOR
  #define RNG_CONFIG_DEBUG_COLOR 0
  #endif
  
  // <q> RNG_CONFIG_RANDOM_NUMBER_LOG_ENABLED  - Enables logging of random numbers.
   
  
  #ifndef RNG_CONFIG_RANDOM_NUMBER_LOG_ENABLED
  #define RNG_CONFIG_RANDOM_NUMBER_LOG_ENABLED 0
  #endif
  
  // </e>
  
  // <e> RTC_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef RTC_CONFIG_LOG_ENABLED
  #define RTC_CONFIG_LOG_ENABLED 0
  #endif
  // <o> RTC_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef RTC_CONFIG_LOG_LEVEL
  #define RTC_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> RTC_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef RTC_CONFIG_INFO_COLOR
  #define RTC_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> RTC_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef RTC_CONFIG_DEBUG_COLOR
  #define RTC_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> SAADC_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef SAADC_CONFIG_LOG_ENABLED
  #define SAADC_CONFIG_LOG_ENABLED 0
  #endif
  // <o> SAADC_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef SAADC_CONFIG_LOG_LEVEL
  #define SAADC_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> SAADC_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef SAADC_CONFIG_INFO_COLOR
  #define SAADC_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> SAADC_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef SAADC_CONFIG_DEBUG_COLOR
  #define SAADC_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> SPIS_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef SPIS_CONFIG_LOG_ENABLED
  #define SPIS_CONFIG_LOG_ENABLED 0
  #endif
  // <o> SPIS_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef SPIS_CONFIG_LOG_LEVEL
  #define SPIS_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> SPIS_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef SPIS_CONFIG_INFO_COLOR
  #define SPIS_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> SPIS_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef SPIS_CONFIG_DEBUG_COLOR
  #define SPIS_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> SPI_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef SPI_CONFIG_LOG_ENABLED
  #define SPI_CONFIG_LOG_ENABLED 0
  #endif
  // <o> SPI_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef SPI_CONFIG_LOG_LEVEL
  #define SPI_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> SPI_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef SPI_CONFIG_INFO_COLOR
  #define SPI_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> SPI_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef SPI_CONFIG_DEBUG_COLOR
  #define SPI_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> SWI_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef SWI_CONFIG_LOG_ENABLED
  #define SWI_CONFIG_LOG_ENABLED 0
  #endif
  // <o> SWI_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef SWI_CONFIG_LOG_LEVEL
  #define SWI_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> SWI_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef SWI_CONFIG_INFO_COLOR
  #define SWI_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> SWI_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef SWI_CONFIG_DEBUG_COLOR
  #define SWI_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> TIMER_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef TIMER_CONFIG_LOG_ENABLED
  #define TIMER_CONFIG_LOG_ENABLED 0
  #endif
  // <o> TIMER_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef TIMER_CONFIG_LOG_LEVEL
  #define TIMER_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> TIMER_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef TIMER_CONFIG_INFO_COLOR
  #define TIMER_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> TIMER_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef TIMER_CONFIG_DEBUG_COLOR
  #define TIMER_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> TWIS_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef TWIS_CONFIG_LOG_ENABLED
  #define TWIS_CONFIG_LOG_ENABLED 0
  #endif
  // <o> TWIS_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef TWIS_CONFIG_LOG_LEVEL
  #define TWIS_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> TWIS_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef TWIS_CONFIG_INFO_COLOR
  #define TWIS_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> TWIS_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef TWIS_CONFIG_DEBUG_COLOR
  #define TWIS_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> TWI_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef TWI_CONFIG_LOG_ENABLED
  #define TWI_CONFIG_LOG_ENABLED 0
  #endif
  // <o> TWI_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef TWI_CONFIG_LOG_LEVEL
  #define TWI_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> TWI_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef TWI_CONFIG_INFO_COLOR
  #define TWI_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> TWI_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef TWI_CONFIG_DEBUG_COLOR
  #define TWI_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> UART_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef UART_CONFIG_LOG_ENABLED
  #define UART_CONFIG_LOG_ENABLED 0
  #endif
  // <o> UART_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef UART_CONFIG_LOG_LEVEL
  #define UART_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> UART_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef UART_CONFIG_INFO_COLOR
  #define UART_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> UART_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef UART_CONFIG_DEBUG_COLOR
  #define UART_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> USBD_CONFIG_LOG_ENABLED - Enable logging in the module
  //==========================================================
  #ifndef USBD_CONFIG_LOG_ENABLED
  #define USBD_CONFIG_LOG_ENABLED 0
  #endif
  // <o> USBD_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef USBD_CONFIG_LOG_LEVEL
  #define USBD_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> USBD_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef USBD_CONFIG_INFO_COLOR
  #define USBD_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> USBD_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef USBD_CONFIG_DEBUG_COLOR
  #define USBD_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> WDT_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef WDT_CONFIG_LOG_ENABLED
  #define WDT_CONFIG_LOG_ENABLED 0
  #endif
  // <o> WDT_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef WDT_CONFIG_LOG_LEVEL
  #define WDT_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> WDT_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef WDT_CONFIG_INFO_COLOR
  #define WDT_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> WDT_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef WDT_CONFIG_DEBUG_COLOR
  #define WDT_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // </h> 
  //==========================================================
  
  // <h> nrf_log in nRF_Libraries 
  
  //==========================================================
  // <e> APP_USBD_CDC_ACM_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef APP_USBD_CDC_ACM_CONFIG_LOG_ENABLED
  #define APP_USBD_CDC_ACM_CONFIG_LOG_ENABLED 0
  #endif
  // <o> APP_USBD_CDC_ACM_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef APP_USBD_CDC_ACM_CONFIG_LOG_LEVEL
  #define APP_USBD_CDC_ACM_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> APP_USBD_CDC_ACM_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef APP_USBD_CDC_ACM_CONFIG_INFO_COLOR
  #define APP_USBD_CDC_ACM_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> APP_USBD_CDC_ACM_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef APP_USBD_CDC_ACM_CONFIG_DEBUG_COLOR
  #define APP_USBD_CDC_ACM_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> APP_USBD_MSC_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef APP_USBD_MSC_CONFIG_LOG_ENABLED
  #define APP_USBD_MSC_CONFIG_LOG_ENABLED 0
  #endif
  // <o> APP_USBD_MSC_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef APP_USBD_MSC_CONFIG_LOG_LEVEL
  #define APP_USBD_MSC_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> APP_USBD_MSC_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef APP_USBD_MSC_CONFIG_INFO_COLOR
  #define APP_USBD_MSC_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> APP_USBD_MSC_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef APP_USBD_MSC_CONFIG_DEBUG_COLOR
  #define APP_USBD_MSC_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> NRF_BALLOC_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef NRF_BALLOC_CONFIG_LOG_ENABLED
  #define NRF_BALLOC_CONFIG_LOG_ENABLED 0
  #endif
  // <o> NRF_BALLOC_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef NRF_BALLOC_CONFIG_LOG_LEVEL
  #define NRF_BALLOC_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> NRF_BALLOC_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_BALLOC_CONFIG_INFO_COLOR
  #define NRF_BALLOC_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> NRF_BALLOC_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_BALLOC_CONFIG_DEBUG_COLOR
  #define NRF_BALLOC_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> NRF_CLI_BLE_UART_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef NRF_CLI_BLE_UART_CONFIG_LOG_ENABLED
  #define NRF_CLI_BLE_UART_CONFIG_LOG_ENABLED 0
  #endif
  // <o> NRF_CLI_BLE_UART_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef NRF_CLI_BLE_UART_CONFIG_LOG_LEVEL
  #define NRF_CLI_BLE_UART_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> NRF_CLI_BLE_UART_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_CLI_BLE_UART_CONFIG_INFO_COLOR
  #define NRF_CLI_BLE_UART_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> NRF_CLI_BLE_UART_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_CLI_BLE_UART_CONFIG_DEBUG_COLOR
  #define NRF_CLI_BLE_UART_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> NRF_CLI_UART_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef NRF_CLI_UART_CONFIG_LOG_ENABLED
  #define NRF_CLI_UART_CONFIG_LOG_ENABLED 0
  #endif
  // <o> NRF_CLI_UART_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef NRF_CLI_UART_CONFIG_LOG_LEVEL
  #define NRF_CLI_UART_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> NRF_CLI_UART_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_CLI_UART_CONFIG_INFO_COLOR
  #define NRF_CLI_UART_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> NRF_CLI_UART_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_CLI_UART_CONFIG_DEBUG_COLOR
  #define NRF_CLI_UART_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> NRF_MEMOBJ_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef NRF_MEMOBJ_CONFIG_LOG_ENABLED
  #define NRF_MEMOBJ_CONFIG_LOG_ENABLED 0
  #endif
  // <o> NRF_MEMOBJ_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef NRF_MEMOBJ_CONFIG_LOG_LEVEL
  #define NRF_MEMOBJ_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> NRF_MEMOBJ_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_MEMOBJ_CONFIG_INFO_COLOR
  #define NRF_MEMOBJ_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> NRF_MEMOBJ_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_MEMOBJ_CONFIG_DEBUG_COLOR
  #define NRF_MEMOBJ_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> NRF_PWR_MGMT_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef NRF_PWR_MGMT_CONFIG_LOG_ENABLED
  #define NRF_PWR_MGMT_CONFIG_LOG_ENABLED 0
  #endif
  // <o> NRF_PWR_MGMT_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef NRF_PWR_MGMT_CONFIG_LOG_LEVEL
  #define NRF_PWR_MGMT_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> NRF_PWR_MGMT_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_PWR_MGMT_CONFIG_INFO_COLOR
  #define NRF_PWR_MGMT_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> NRF_PWR_MGMT_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_PWR_MGMT_CONFIG_DEBUG_COLOR
  #define NRF_PWR_MGMT_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> NRF_SDH_ANT_LOG_ENABLED - Enable logging in SoftDevice handler (ANT) module.
  //==========================================================
  #ifndef NRF_SDH_ANT_LOG_ENABLED
  #define NRF_SDH_ANT_LOG_ENABLED 0
  #endif
  // <o> NRF_SDH_ANT_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef NRF_SDH_ANT_LOG_LEVEL
  #define NRF_SDH_ANT_LOG_LEVEL 3
  #endif
  
  // <o> NRF_SDH_ANT_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_SDH_ANT_INFO_COLOR
  #define NRF_SDH_ANT_INFO_COLOR 0
  #endif
  
  // <o> NRF_SDH_ANT_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_SDH_ANT_DEBUG_COLOR
  #define NRF_SDH_ANT_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> NRF_SDH_BLE_LOG_ENABLED - Enable logging in SoftDevice handler (BLE) module.
  //==========================================================
  #ifndef NRF_SDH_BLE_LOG_ENABLED
  #define NRF_SDH_BLE_LOG_ENABLED 1
  #endif
  // <o> NRF_SDH_BLE_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef NRF_SDH_BLE_LOG_LEVEL
  #define NRF_SDH_BLE_LOG_LEVEL 3
  #endif
  
  // <o> NRF_SDH_BLE_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_SDH_BLE_INFO_COLOR
  #define NRF_SDH_BLE_INFO_COLOR 0
  #endif
  
  // <o> NRF_SDH_BLE_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_SDH_BLE_DEBUG_COLOR
  #define NRF_SDH_BLE_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> NRF_SDH_LOG_ENABLED - Enable logging in SoftDevice handler module.
  //==========================================================
  #ifndef NRF_SDH_LOG_ENABLED
  #define NRF_SDH_LOG_ENABLED 1
  #endif
  // <o> NRF_SDH_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef NRF_SDH_LOG_LEVEL
  #define NRF_SDH_LOG_LEVEL 3
  #endif
  
  // <o> NRF_SDH_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_SDH_INFO_COLOR
  #define NRF_SDH_INFO_COLOR 0
  #endif
  
  // <o> NRF_SDH_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_SDH_DEBUG_COLOR
  #define NRF_SDH_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> NRF_SDH_SOC_LOG_ENABLED - Enable logging in SoftDevice handler (SoC) module.
  //==========================================================
  #ifndef NRF_SDH_SOC_LOG_ENABLED
  #define NRF_SDH_SOC_LOG_ENABLED 1
  #endif
  // <o> NRF_SDH_SOC_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef NRF_SDH_SOC_LOG_LEVEL
  #define NRF_SDH_SOC_LOG_LEVEL 3
  #endif
  
  // <o> NRF_SDH_SOC_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_SDH_SOC_INFO_COLOR
  #define NRF_SDH_SOC_INFO_COLOR 0
  #endif
  
  // <o> NRF_SDH_SOC_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_SDH_SOC_DEBUG_COLOR
  #define NRF_SDH_SOC_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // <e> NRF_SORTLIST_CONFIG_LOG_ENABLED - Enables logging in the module.
  //==========================================================
  #ifndef NRF_SORTLIST_CONFIG_LOG_ENABLED
  #define NRF_SORTLIST_CONFIG_LOG_ENABLED 0
  #endif
  // <o> NRF_SORTLIST_CONFIG_LOG_LEVEL  - Default Severity level
   
  // <0=> Off 
  // <1=> Error 
  // <2=> Warning 
  // <3=> Info 
  // <4=> Debug 
  
  #ifndef NRF_SORTLIST_CONFIG_LOG_LEVEL
  #define NRF_SORTLIST_CONFIG_LOG_LEVEL 3
  #endif
  
  // <o> NRF_SORTLIST_CONFIG_INFO_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_SORTLIST_CONFIG_INFO_COLOR
  #define NRF_SORTLIST_CONFIG_INFO_COLOR 0
  #endif
  
  // <o> NRF_SORTLIST_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
   
  // <0=> Default 
  // <1=> Black 
  // <2=> Red 
  // <3=> Green 
  // <4=> Yellow 
  // <5=> Blue 
  // <6=> Magenta 
  // <7=> Cyan 
  // <8=> White 
  
  #ifndef NRF_SORTLIST_CONFIG_DEBUG_COLOR
  #define NRF_SORTLIST_CONFIG_DEBUG_COLOR 0
  #endif
  
  // </e>
  
  // </h> 
  //==========================================================
  
  // </h> 
  //==========================================================
  
  // </h> 
  //==========================================================
  
  // </h> 
  //==========================================================
  
  // <h> nRF_Segger_RTT 
  
  //==========================================================
  // <h> segger_rtt - SEGGER RTT
  
  //==========================================================
  // <o> SEGGER_RTT_CONFIG_BUFFER_SIZE_UP - Size of upstream buffer. 
  // <i> Note that either @ref NRF_LOG_BACKEND_RTT_OUTPUT_BUFFER_SIZE
  // <i> or this value is actually used. It depends on which one is bigger.
  
  #ifndef SEGGER_RTT_CONFIG_BUFFER_SIZE_UP
  #define SEGGER_RTT_CONFIG_BUFFER_SIZE_UP 512
  #endif
  
  // <o> SEGGER_RTT_CONFIG_MAX_NUM_UP_BUFFERS - Size of upstream buffer. 
  #ifndef SEGGER_RTT_CONFIG_MAX_NUM_UP_BUFFERS
  #define SEGGER_RTT_CONFIG_MAX_NUM_UP_BUFFERS 2
  #endif
  
  // <o> SEGGER_RTT_CONFIG_BUFFER_SIZE_DOWN - Size of upstream buffer. 
  #ifndef SEGGER_RTT_CONFIG_BUFFER_SIZE_DOWN
  #define SEGGER_RTT_CONFIG_BUFFER_SIZE_DOWN 16
  #endif
  
  // <o> SEGGER_RTT_CONFIG_MAX_NUM_DOWN_BUFFERS - Size of upstream buffer. 
  #ifndef SEGGER_RTT_CONFIG_MAX_NUM_DOWN_BUFFERS
  #define SEGGER_RTT_CONFIG_MAX_NUM_DOWN_BUFFERS 2
  #endif
  
  // <o> SEGGER_RTT_CONFIG_DEFAULT_MODE  - RTT behavior if the buffer is full.
   
  
  // <i> The following modes are supported:
  // <i> - SKIP  - Do not block, output nothing.
  // <i> - TRIM  - Do not block, output as much as fits.
  // <i> - BLOCK - Wait until there is space in the buffer.
  // <0=> SKIP 
  // <1=> TRIM 
  // <2=> BLOCK_IF_FIFO_FULL 
  
  #ifndef SEGGER_RTT_CONFIG_DEFAULT_MODE
  #define SEGGER_RTT_CONFIG_DEFAULT_MODE 0
  #endif
  
  // </h> 
  //==========================================================
  
  // </h> 
  //==========================================================
  
  // <h> nRF_SoftDevice 
  
  //==========================================================
  // <e> NRF_SDH_BLE_ENABLED - nrf_sdh_ble - SoftDevice BLE event handler
  //==========================================================
  #ifndef NRF_SDH_BLE_ENABLED
  #define NRF_SDH_BLE_ENABLED 1
  #endif
  // <h> BLE Stack configuration - Stack configuration parameters
  
  // <i> These values are not used directly by the SoftDevice handler but the application or other libraries might depend on them.
  // <i> Keep them up-to-date with the desired configuration.
  //==========================================================
  // <o> NRF_SDH_BLE_PERIPHERAL_LINK_COUNT - Maximum number of peripheral links. 
  #ifndef NRF_SDH_BLE_PERIPHERAL_LINK_COUNT
  #define NRF_SDH_BLE_PERIPHERAL_LINK_COUNT 0
  #endif
  
  // <o> NRF_SDH_BLE_CENTRAL_LINK_COUNT - Maximum number of central links. 
  #ifndef NRF_SDH_BLE_CENTRAL_LINK_COUNT
  #define NRF_SDH_BLE_CENTRAL_LINK_COUNT 0
  #endif
  
  // <o> NRF_SDH_BLE_TOTAL_LINK_COUNT - Maximum number of total concurrent connections using the default configuration. 
  #ifndef NRF_SDH_BLE_TOTAL_LINK_COUNT
  #define NRF_SDH_BLE_TOTAL_LINK_COUNT 1
  #endif
  
  // <o> NRF_SDH_BLE_GAP_EVENT_LENGTH - The time set aside for this connection on every connection interval in 1.25 ms units. 
  #ifndef NRF_SDH_BLE_GAP_EVENT_LENGTH
  #define NRF_SDH_BLE_GAP_EVENT_LENGTH 3
  #endif
  
  // <o> NRF_SDH_BLE_GATT_MAX_MTU_SIZE - Static maximum MTU size. 
  #ifndef NRF_SDH_BLE_GATT_MAX_MTU_SIZE
  #define NRF_SDH_BLE_GATT_MAX_MTU_SIZE 23
  #endif
  
  // <o> NRF_SDH_BLE_GATTS_ATTR_TAB_SIZE - Attribute Table size in bytes. The size must be a multiple of 4. 
  #ifndef NRF_SDH_BLE_GATTS_ATTR_TAB_SIZE
  #define NRF_SDH_BLE_GATTS_ATTR_TAB_SIZE 1408
  #endif
  
  // <o> NRF_SDH_BLE_VS_UUID_COUNT - The number of vendor-specific UUIDs. 
  #ifndef NRF_SDH_BLE_VS_UUID_COUNT
  #define NRF_SDH_BLE_VS_UUID_COUNT 0
  #endif
  
  // <q> NRF_SDH_BLE_SERVICE_CHANGED  - Include the Service Changed characteristic in the Attribute Table.
   
  
  #ifndef NRF_SDH_BLE_SERVICE_CHANGED
  #define NRF_SDH_BLE_SERVICE_CHANGED 0
  #endif
  
  // </h> 
  //==========================================================
  
  // <h> BLE Observers - Observers and priority levels
  
  //==========================================================
  // <o> NRF_SDH_BLE_OBSERVER_PRIO_LEVELS - Total number of priority levels for BLE observers. 
  // <i> This setting configures the number of priority levels available for BLE event handlers.
  // <i> The priority level of a handler determines the order in which it receives events, with respect to other handlers.
  
  #ifndef NRF_SDH_BLE_OBSERVER_PRIO_LEVELS
  #define NRF_SDH_BLE_OBSERVER_PRIO_LEVELS 4
  #endif
  
  // <h> BLE Observers priorities - Invididual priorities
  
  //==========================================================
  // <o> BLE_ADV_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Advertising module.
  
  #ifndef BLE_ADV_BLE_OBSERVER_PRIO
  #define BLE_ADV_BLE_OBSERVER_PRIO 1
  #endif
  
  // <o> BLE_ANCS_C_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Apple Notification Service Client.
  
  #ifndef BLE_ANCS_C_BLE_OBSERVER_PRIO
  #define BLE_ANCS_C_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BLE_ANS_C_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Alert Notification Service Client.
  
  #ifndef BLE_ANS_C_BLE_OBSERVER_PRIO
  #define BLE_ANS_C_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BLE_BAS_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Battery Service.
  
  #ifndef BLE_BAS_BLE_OBSERVER_PRIO
  #define BLE_BAS_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BLE_BAS_C_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Battery Service Client.
  
  #ifndef BLE_BAS_C_BLE_OBSERVER_PRIO
  #define BLE_BAS_C_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BLE_BPS_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Blood Pressure Service.
  
  #ifndef BLE_BPS_BLE_OBSERVER_PRIO
  #define BLE_BPS_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BLE_CONN_PARAMS_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Connection parameters module.
  
  #ifndef BLE_CONN_PARAMS_BLE_OBSERVER_PRIO
  #define BLE_CONN_PARAMS_BLE_OBSERVER_PRIO 1
  #endif
  
  // <o> BLE_CONN_STATE_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Connection State module.
  
  #ifndef BLE_CONN_STATE_BLE_OBSERVER_PRIO
  #define BLE_CONN_STATE_BLE_OBSERVER_PRIO 0
  #endif
  
  // <o> BLE_CSCS_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Cycling Speed and Cadence Service.
  
  #ifndef BLE_CSCS_BLE_OBSERVER_PRIO
  #define BLE_CSCS_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BLE_CTS_C_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Current Time Service Client.
  
  #ifndef BLE_CTS_C_BLE_OBSERVER_PRIO
  #define BLE_CTS_C_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BLE_DB_DISC_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Database Discovery module.
  
  #ifndef BLE_DB_DISC_BLE_OBSERVER_PRIO
  #define BLE_DB_DISC_BLE_OBSERVER_PRIO 1
  #endif
  
  // <o> BLE_DFU_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the DFU Service.
  
  #ifndef BLE_DFU_BLE_OBSERVER_PRIO
  #define BLE_DFU_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BLE_GLS_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Glucose Service.
  
  #ifndef BLE_GLS_BLE_OBSERVER_PRIO
  #define BLE_GLS_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BLE_HIDS_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Human Interface Device Service.
  
  #ifndef BLE_HIDS_BLE_OBSERVER_PRIO
  #define BLE_HIDS_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BLE_HRS_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Heart Rate Service.
  
  #ifndef BLE_HRS_BLE_OBSERVER_PRIO
  #define BLE_HRS_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BLE_HRS_C_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Heart Rate Service Client.
  
  #ifndef BLE_HRS_C_BLE_OBSERVER_PRIO
  #define BLE_HRS_C_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BLE_HTS_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Health Thermometer Service.
  
  #ifndef BLE_HTS_BLE_OBSERVER_PRIO
  #define BLE_HTS_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BLE_IAS_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Immediate Alert Service.
  
  #ifndef BLE_IAS_BLE_OBSERVER_PRIO
  #define BLE_IAS_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BLE_IAS_C_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Immediate Alert Service Client.
  
  #ifndef BLE_IAS_C_BLE_OBSERVER_PRIO
  #define BLE_IAS_C_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BLE_LBS_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the LED Button Service.
  
  #ifndef BLE_LBS_BLE_OBSERVER_PRIO
  #define BLE_LBS_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BLE_LBS_C_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the LED Button Service Client.
  
  #ifndef BLE_LBS_C_BLE_OBSERVER_PRIO
  #define BLE_LBS_C_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BLE_LLS_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Link Loss Service.
  
  #ifndef BLE_LLS_BLE_OBSERVER_PRIO
  #define BLE_LLS_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BLE_LNS_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Location Navigation Service.
  
  #ifndef BLE_LNS_BLE_OBSERVER_PRIO
  #define BLE_LNS_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BLE_NUS_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the UART Service.
  
  #ifndef BLE_NUS_BLE_OBSERVER_PRIO
  #define BLE_NUS_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BLE_NUS_C_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the UART Central Service.
  
  #ifndef BLE_NUS_C_BLE_OBSERVER_PRIO
  #define BLE_NUS_C_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BLE_OTS_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Object transfer service.
  
  #ifndef BLE_OTS_BLE_OBSERVER_PRIO
  #define BLE_OTS_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BLE_OTS_C_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Object transfer service client.
  
  #ifndef BLE_OTS_C_BLE_OBSERVER_PRIO
  #define BLE_OTS_C_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BLE_RSCS_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Running Speed and Cadence Service.
  
  #ifndef BLE_RSCS_BLE_OBSERVER_PRIO
  #define BLE_RSCS_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BLE_RSCS_C_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Running Speed and Cadence Client.
  
  #ifndef BLE_RSCS_C_BLE_OBSERVER_PRIO
  #define BLE_RSCS_C_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BLE_TPS_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the TX Power Service.
  
  #ifndef BLE_TPS_BLE_OBSERVER_PRIO
  #define BLE_TPS_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> BSP_BTN_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Button Control module.
  
  #ifndef BSP_BTN_BLE_OBSERVER_PRIO
  #define BSP_BTN_BLE_OBSERVER_PRIO 1
  #endif
  
  // <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the NFC pairing library.
  
  #ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
  #define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
  #endif
  
  // <o> NRF_BLE_BMS_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Bond Management Service.
  
  #ifndef NRF_BLE_BMS_BLE_OBSERVER_PRIO
  #define NRF_BLE_BMS_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> NRF_BLE_CGMS_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Contiuon Glucose Monitoring Service.
  
  #ifndef NRF_BLE_CGMS_BLE_OBSERVER_PRIO
  #define NRF_BLE_CGMS_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> NRF_BLE_ES_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Eddystone module.
  
  #ifndef NRF_BLE_ES_BLE_OBSERVER_PRIO
  #define NRF_BLE_ES_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> NRF_BLE_GATTS_C_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the GATT Service Client.
  
  #ifndef NRF_BLE_GATTS_C_BLE_OBSERVER_PRIO
  #define NRF_BLE_GATTS_C_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> NRF_BLE_GATT_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the GATT module.
  
  #ifndef NRF_BLE_GATT_BLE_OBSERVER_PRIO
  #define NRF_BLE_GATT_BLE_OBSERVER_PRIO 1
  #endif
  
  // <o> NRF_BLE_QWR_BLE_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the Queued writes module.
  
  #ifndef NRF_BLE_QWR_BLE_OBSERVER_PRIO
  #define NRF_BLE_QWR_BLE_OBSERVER_PRIO 2
  #endif
  
  // <o> PM_BLE_OBSERVER_PRIO - Priority with which BLE events are dispatched to the Peer Manager module. 
  #ifndef PM_BLE_OBSERVER_PRIO
  #define PM_BLE_OBSERVER_PRIO 1
  #endif
  
  // </h> 
  //==========================================================
  
  // </h> 
  //==========================================================
  
  
  // </e>
  
  // <e> NRF_SDH_ENABLED - nrf_sdh - SoftDevice handler
  //==========================================================
  #ifndef NRF_SDH_ENABLED
  #define NRF_SDH_ENABLED 1
  #endif
  // <h> Dispatch model 
  
  // <i> This setting configures how Stack events are dispatched to the application.
  //==========================================================
  // <o> NRF_SDH_DISPATCH_MODEL
   
  
  // <i> NRF_SDH_DISPATCH_MODEL_INTERRUPT: SoftDevice events are passed to the application from the interrupt context.
  // <i> NRF_SDH_DISPATCH_MODEL_APPSH: SoftDevice events are scheduled using @ref app_scheduler.
  // <i> NRF_SDH_DISPATCH_MODEL_POLLING: SoftDevice events are to be fetched manually.
  // <0=> NRF_SDH_DISPATCH_MODEL_INTERRUPT 
  // <1=> NRF_SDH_DISPATCH_MODEL_APPSH 
  // <2=> NRF_SDH_DISPATCH_MODEL_POLLING 
  
  #ifndef NRF_SDH_DISPATCH_MODEL
  #define NRF_SDH_DISPATCH_MODEL 1
  #endif
  
  // </h> 
  //==========================================================
  
  // <h> Clock - SoftDevice clock configuration
  
  //==========================================================
  // <o> NRF_SDH_CLOCK_LF_SRC  - SoftDevice clock source.
   
  // <0=> NRF_CLOCK_LF_SRC_RC 
  // <1=> NRF_CLOCK_LF_SRC_XTAL 
  // <2=> NRF_CLOCK_LF_SRC_SYNTH 
  
  #ifndef NRF_SDH_CLOCK_LF_SRC
  #define NRF_SDH_CLOCK_LF_SRC 1
  #endif
  
  // <o> NRF_SDH_CLOCK_LF_RC_CTIV - SoftDevice calibration timer interval. 
  #ifndef NRF_SDH_CLOCK_LF_RC_CTIV
  #define NRF_SDH_CLOCK_LF_RC_CTIV 0
  #endif
  
  // <o> NRF_SDH_CLOCK_LF_RC_TEMP_CTIV - SoftDevice calibration timer interval under constant temperature. 
  // <i> How often (in number of calibration intervals) the RC oscillator shall be calibrated
  // <i>  if the temperature has not changed.
  
  #ifndef NRF_SDH_CLOCK_LF_RC_TEMP_CTIV
  #define NRF_SDH_CLOCK_LF_RC_TEMP_CTIV 0
  #endif
  
  // <o> NRF_SDH_CLOCK_LF_XTAL_ACCURACY  - External crystal clock accuracy used in the LL to compute timing windows.
   
  // <0=> NRF_CLOCK_LF_XTAL_ACCURACY_250_PPM 
  // <1=> NRF_CLOCK_LF_XTAL_ACCURACY_500_PPM 
  // <2=> NRF_CLOCK_LF_XTAL_ACCURACY_150_PPM 
  // <3=> NRF_CLOCK_LF_XTAL_ACCURACY_100_PPM 
  // <4=> NRF_CLOCK_LF_XTAL_ACCURACY_75_PPM 
  // <5=> NRF_CLOCK_LF_XTAL_ACCURACY_50_PPM 
  // <6=> NRF_CLOCK_LF_XTAL_ACCURACY_30_PPM 
  // <7=> NRF_CLOCK_LF_XTAL_ACCURACY_20_PPM 
  
  #ifndef NRF_SDH_CLOCK_LF_XTAL_ACCURACY
  #define NRF_SDH_CLOCK_LF_XTAL_ACCURACY 7
  #endif
  
  // </h> 
  //==========================================================
  
  // <h> SDH Observers - Observers and priority levels
  
  //==========================================================
  // <o> NRF_SDH_REQ_OBSERVER_PRIO_LEVELS - Total number of priority levels for request observers. 
  // <i> This setting configures the number of priority levels available for the SoftDevice request event handlers.
  // <i> The priority level of a handler determines the order in which it receives events, with respect to other handlers.
  
  #ifndef NRF_SDH_REQ_OBSERVER_PRIO_LEVELS
  #define NRF_SDH_REQ_OBSERVER_PRIO_LEVELS 2
  #endif
  
  // <o> NRF_SDH_STATE_OBSERVER_PRIO_LEVELS - Total number of priority levels for state observers. 
  // <i> This setting configures the number of priority levels available for the SoftDevice state event handlers.
  // <i> The priority level of a handler determines the order in which it receives events, with respect to other handlers.
  
  #ifndef NRF_SDH_STATE_OBSERVER_PRIO_LEVELS
  #define NRF_SDH_STATE_OBSERVER_PRIO_LEVELS 2
  #endif
  
  // <o> NRF_SDH_STACK_OBSERVER_PRIO_LEVELS - Total number of priority levels for stack event observers. 
  // <i> This setting configures the number of priority levels available for the SoftDevice stack event handlers (ANT, BLE, SoC).
  // <i> The priority level of a handler determines the order in which it receives events, with respect to other handlers.
  
  #ifndef NRF_SDH_STACK_OBSERVER_PRIO_LEVELS
  #define NRF_SDH_STACK_OBSERVER_PRIO_LEVELS 2
  #endif
  
  
  // <h> State Observers priorities - Invididual priorities
  
  //==========================================================
  // <o> CLOCK_CONFIG_STATE_OBSERVER_PRIO  
  // <i> Priority with which state events are dispatched to the Clock driver.
  
  #ifndef CLOCK_CONFIG_STATE_OBSERVER_PRIO
  #define CLOCK_CONFIG_STATE_OBSERVER_PRIO 0
  #endif
  
  // <o> POWER_CONFIG_STATE_OBSERVER_PRIO  
  // <i> Priority with which state events are dispatched to the Power driver.
  
  #ifndef POWER_CONFIG_STATE_OBSERVER_PRIO
  #define POWER_CONFIG_STATE_OBSERVER_PRIO 0
  #endif
  
  // <o> RNG_CONFIG_STATE_OBSERVER_PRIO  
  // <i> Priority with which state events are dispatched to this module.
  
  #ifndef RNG_CONFIG_STATE_OBSERVER_PRIO
  #define RNG_CONFIG_STATE_OBSERVER_PRIO 0
  #endif
  
  // </h> 
  //==========================================================
  
  // <h> Stack Event Observers priorities - Invididual priorities
  
  //==========================================================
  // <o> NRF_SDH_ANT_STACK_OBSERVER_PRIO  
  // <i> This setting configures the priority with which ANT events are processed with respect to other events coming from the stack.
  // <i> Modify this setting if you need to have ANT events dispatched before or after other stack events, such as BLE or SoC.
  // <i> Zero is the highest priority.
  
  #ifndef NRF_SDH_ANT_STACK_OBSERVER_PRIO
  #define NRF_SDH_ANT_STACK_OBSERVER_PRIO 0
  #endif
  
  // <o> NRF_SDH_BLE_STACK_OBSERVER_PRIO  
  // <i> This setting configures the priority with which BLE events are processed with respect to other events coming from the stack.
  // <i> Modify this setting if you need to have BLE events dispatched before or after other stack events, such as ANT or SoC.
  // <i> Zero is the highest priority.
  
  #ifndef NRF_SDH_BLE_STACK_OBSERVER_PRIO
  #define NRF_SDH_BLE_STACK_OBSERVER_PRIO 0
  #endif
  
  // <o> NRF_SDH_SOC_STACK_OBSERVER_PRIO  
  // <i> This setting configures the priority with which SoC events are processed with respect to other events coming from the stack.
  // <i> Modify this setting if you need to have SoC events dispatched before or after other stack events, such as ANT or BLE.
  // <i> Zero is the highest priority.
  
  #ifndef NRF_SDH_SOC_STACK_OBSERVER_PRIO
  #define NRF_SDH_SOC_STACK_OBSERVER_PRIO 0
  #endif
  
  // </h> 
  //==========================================================
  
  // </h> 
  //==========================================================
  
  
  // </e>
  
  // <e> NRF_SDH_SOC_ENABLED - nrf_sdh_soc - SoftDevice SoC event handler
  //==========================================================
  #ifndef NRF_SDH_SOC_ENABLED
  #define NRF_SDH_SOC_ENABLED 1
  #endif
  // <h> SoC Observers - Observers and priority levels
  
  //==========================================================
  // <o> NRF_SDH_SOC_OBSERVER_PRIO_LEVELS - Total number of priority levels for SoC observers. 
  // <i> This setting configures the number of priority levels available for the SoC event handlers.
  // <i> The priority level of a handler determines the order in which it receives events, with respect to other handlers.
  
  #ifndef NRF_SDH_SOC_OBSERVER_PRIO_LEVELS
  #define NRF_SDH_SOC_OBSERVER_PRIO_LEVELS 2
  #endif
  
  // <h> SoC Observers priorities - Invididual priorities
  
  //==========================================================
  // <o> BLE_ADV_SOC_OBSERVER_PRIO  
  // <i> Priority with which SoC events are dispatched to the Advertising module.
  
  #ifndef BLE_ADV_SOC_OBSERVER_PRIO
  #define BLE_ADV_SOC_OBSERVER_PRIO 1
  #endif
  
  // <o> BLE_DFU_SOC_OBSERVER_PRIO  
  // <i> Priority with which BLE events are dispatched to the DFU Service.
  
  #ifndef BLE_DFU_SOC_OBSERVER_PRIO
  #define BLE_DFU_SOC_OBSERVER_PRIO 1
  #endif
  
  // <o> CLOCK_CONFIG_SOC_OBSERVER_PRIO  
  // <i> Priority with which SoC events are dispatched to the Clock driver.
  
  #ifndef CLOCK_CONFIG_SOC_OBSERVER_PRIO
  #define CLOCK_CONFIG_SOC_OBSERVER_PRIO 0
  #endif
  
  // <o> POWER_CONFIG_SOC_OBSERVER_PRIO  
  // <i> Priority with which SoC events are dispatched to the Power driver.
  
  #ifndef POWER_CONFIG_SOC_OBSERVER_PRIO
  #define POWER_CONFIG_SOC_OBSERVER_PRIO 0
  #endif
  
  // </h> 
  //==========================================================
  
  // </h> 
  //==========================================================
  
  
  // </e>
  
  // </h> 
  //==========================================================
  
  // <<< end of configuration section >>>
  #endif //SDK_CONFIG_H
  
  