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

Interfacing nRF52832 with ds18b20

Hello guys,

                 I'm trying to interface nrf52832 with ds18b20 temperature sensor and I'm using this code https://github.com/sigurdnev/Nordic-DS18B20 and I'm getting the output value but sometimes I'm getting temperature value as -0.063 and sometimes some random values I'm completely new to nRF so I don't know what I'm doing wrong

Parents
  • Hi,

    Are you running any BLE roles at the same time? (advertising,scanner,central/peripheral connection)?

  • And this is my ds18b20.c

    /**
     * Copyright (c) 2015 - 2018, 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.
     * 
     */
    
    #include "nrf_gpio.h"
    #include "nrf_delay.h"
    
    #include "ds18b20.h"
    
    #define DS_PIN 26
    
    // Commands
    #define STARTCONVO      0x44
    #define READSCRATCH     0xBE
    #define WRITESCRATCH    0x4E
    
    // Scratchpad locations
    #define TEMP_LSB        0
    #define TEMP_MSB        1
    
    // Device resolution
    #define TEMP_9_BIT  0x1F //  9 bit
    #define TEMP_10_BIT 0x3F // 10 bit
    #define TEMP_11_BIT 0x5F // 11 bit
    #define TEMP_12_BIT 0x7F // 12 bit
    
    typedef uint8_t ScratchPad[9];
    
    /**@brief Function for sending one bit to bus.
     */
    void ds18b20_send(char bit)
    {
        nrf_gpio_cfg_output(DS_PIN);
        nrf_gpio_pin_clear(DS_PIN);
    
        nrf_delay_us(5);
    
        if(bit==1)
        {
            nrf_gpio_pin_set(DS_PIN);
        }
        nrf_delay_us(80);
        nrf_gpio_pin_set(DS_PIN);
    }
    
    
    /**@brief Function for reading one bit from bus.
     */
    unsigned char ds18b20_read(void)
    {
        unsigned char presence=0;
        nrf_gpio_cfg_output(DS_PIN);
        nrf_gpio_pin_clear(DS_PIN);
    
        nrf_delay_us(2);
    
        nrf_gpio_pin_set(DS_PIN);;
        nrf_delay_us(15);
    
        nrf_gpio_cfg_input(DS_PIN,NRF_GPIO_PIN_NOPULL);
    
        if(nrf_gpio_pin_read(DS_PIN))
        {
            presence = 1;
        }
        else
        {
            presence = 0;
        }
        
        return presence;
    }
    
    
    /**@brief Function for sending one byte to bus.
     */
    void ds18b20_send_byte(char data)
    {
        unsigned char i;
        unsigned char x;
        for(i=0;i<8;i++)
        {
          x = data>>i;
          x &= 0x01;
          ds18b20_send(x);
        }
        nrf_delay_us(100);
    }
    
    
    /**@brief Function for reading one byte from bus.
     */
    unsigned char ds18b20_read_byte(void)
    {
        unsigned char i;
        unsigned char data = 0;
        for (i=0;i<8;i++)
        {
            if(ds18b20_read()) data|=0x01<<i;
            nrf_delay_us(15);
        }
        return(data);
    }
    
    
    /**@brief Function for sending reset pulse.
     */
    unsigned char ds18b20_reset(void)
    {
      unsigned char presence;
    
      nrf_gpio_cfg_output(DS_PIN);
      nrf_gpio_pin_clear(DS_PIN);
    
      nrf_delay_us(500);
      nrf_gpio_pin_set(DS_PIN);
    
      nrf_gpio_cfg_input(DS_PIN,NRF_GPIO_PIN_NOPULL); // usikkert p? pull her. m? sjekkes
      nrf_delay_us(30);
    
    
        if(nrf_gpio_pin_read(DS_PIN) == 0)
        {
            presence = 1;
        }
        else
        {
            presence = 0;
        }
    
        nrf_delay_us(470);
    
        if(nrf_gpio_pin_read(DS_PIN) == 1)
        {
            presence = 1;
        }
        else
        {
            presence = 0;
        }
    
      return presence;
    }
    
    
    /**@brief Function for reading temperature.
     */
    float ds18b20_get_temp(void)
    {
        unsigned char check;
        char temp1=0, temp2=0;
    
        check=ds18b20_reset();
        if(check)
        {
            ds18b20_send_byte(0xCC);
            ds18b20_send_byte(0x44);
            nrf_delay_ms(600UL);
            check=ds18b20_reset();
            ds18b20_send_byte(0xCC);
            ds18b20_send_byte(0xBE);
            temp1=ds18b20_read_byte();
            temp2=ds18b20_read_byte();
            check=ds18b20_reset();
            float temp=0;
            temp=(float)(temp1+(temp2*256))/16;
            return temp;
        }
          return 0;
    }
    
    
    /**@brief Function for reading bit.
     */
    uint8_t OneWire_read_bit(void)
    {
        uint8_t r;
        nrf_gpio_cfg_output(DS_PIN);
        nrf_gpio_pin_clear(DS_PIN);
        nrf_delay_us(3);
        nrf_gpio_cfg_input(DS_PIN,NRF_GPIO_PIN_NOPULL);
        nrf_delay_us(10);
        r =nrf_gpio_pin_read(DS_PIN);
        nrf_delay_us(53);
        return r;
    }
    
    
    /**@brief Function for reading.
     */
    uint8_t OneWire_read()
    {
        uint8_t bitMask;
        uint8_t r = 0;
    
        for (bitMask = 0x01; bitMask; bitMask <<= 1) {
    	if ( OneWire_read_bit()) r |= bitMask;
        }
        return r;
    }
    
    
    /**@brief Function for reading scratchpad value
     */
    void ds18b20_readScratchPad(uint8_t *scratchPad, uint8_t fields)
    {
        ds18b20_reset();
        ds18b20_send_byte(0xCC);
        ds18b20_send_byte(READSCRATCH);
    
        for(uint8_t i=0; i < fields; i++)
        {
            scratchPad[i] = OneWire_read();
        }
        ds18b20_reset();
    }
    
    
    /**@brief Function for request temperature reading
     */
    void ds18b20_requestTemperatures(void)
    {
        ds18b20_reset();
        ds18b20_send_byte(0xCC);
        ds18b20_send_byte(STARTCONVO);
    }
    
    
    /**@brief Function for reading temperature method 2
     */
    float ds18b20_get_temp_method_2(void)
    {
        ds18b20_requestTemperatures();
        unsigned char check;
    
        ScratchPad scratchPad;
        ds18b20_readScratchPad(scratchPad, 2);
        int16_t rawTemperature = (((int16_t)scratchPad[TEMP_MSB]) << 8) | scratchPad[TEMP_LSB];
        float temp = 0.0625 * rawTemperature;
        return temp;
        printf("Temperature: %.3f \r\n", temp);
    }
    
    
    /**@brief Function for setting temperature resolution
     */
    void ds18b20_setResolution(uint8_t resolution)
    {
        ds18b20_reset();
        ds18b20_send_byte(0xCC);
        ds18b20_send_byte(WRITESCRATCH);
        // two dummy values for LOW & HIGH ALARM
        ds18b20_send_byte(0);
        ds18b20_send_byte(100);
        switch (resolution)
        {
            case 12:
                ds18b20_send_byte(TEMP_12_BIT);
                break;
    
            case 11:
                ds18b20_send_byte(TEMP_11_BIT);
                break;
    
            case 10:
                ds18b20_send_byte(TEMP_10_BIT);
                break;
    
            case 9:
            default:
                ds18b20_send_byte(TEMP_9_BIT);
                break;
        }
        ds18b20_reset();
    }

  • /**
     * Copyright (c) 2017 - 2018, 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_Libraries 
    
    //==========================================================
    // <e> NRF_BALLOC_ENABLED - nrf_balloc - Block allocator module
    //==========================================================
    #ifndef NRF_BALLOC_ENABLED
    #define NRF_BALLOC_ENABLED 0
    #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
    
    // <q> NRF_BALLOC_CLI_CMDS  - Enable CLI commands specific to the module
     
    
    #ifndef NRF_BALLOC_CLI_CMDS
    #define NRF_BALLOC_CLI_CMDS 0
    #endif
    
    // </e>
    
    // </e>
    
    // <q> NRF_MEMOBJ_ENABLED  - nrf_memobj - Linked memory allocator module
     
    
    #ifndef NRF_MEMOBJ_ENABLED
    #define NRF_MEMOBJ_ENABLED 0
    #endif
    
    // <q> NRF_STRERROR_ENABLED  - nrf_strerror - Library for converting error code to string.
     
    
    #ifndef NRF_STRERROR_ENABLED
    #define NRF_STRERROR_ENABLED 1
    #endif
    
    // </h> 
    //==========================================================
    
    // <h> nRF_Log 
    
    //==========================================================
    // <h> nrf_log - Logger
    
    //==========================================================
    // <e> NRF_LOG_ENABLED - Logging module for nRF5 SDK
    //==========================================================
    #ifndef NRF_LOG_ENABLED
    #define NRF_LOG_ENABLED 0
    #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
    
    // <e> 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
    // <o> NRF_LOG_TIMESTAMP_DEFAULT_FREQUENCY - Default frequency of the timestamp (in Hz) 
    #ifndef NRF_LOG_TIMESTAMP_DEFAULT_FREQUENCY
    #define NRF_LOG_TIMESTAMP_DEFAULT_FREQUENCY 32768
    #endif
    
    // </e>
    
    // <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> 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> 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> 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_TIMER_CONFIG_LOG_ENABLED - Enables logging in the module.
    //==========================================================
    #ifndef APP_TIMER_CONFIG_LOG_ENABLED
    #define APP_TIMER_CONFIG_LOG_ENABLED 0
    #endif
    // <o> APP_TIMER_CONFIG_LOG_LEVEL  - Default Severity level
     
    // <0=> Off 
    // <1=> Error 
    // <2=> Warning 
    // <3=> Info 
    // <4=> Debug 
    
    #ifndef APP_TIMER_CONFIG_LOG_LEVEL
    #define APP_TIMER_CONFIG_LOG_LEVEL 3
    #endif
    
    // <o> APP_TIMER_CONFIG_INITIAL_LOG_LEVEL  - Initial severity level if dynamic filtering is enabled.
     
    
    // <i> If module generates a lot of logs, initial log level can
    // <i> be decreased to prevent flooding. Severity level can be
    // <i> increased on instance basis.
    // <0=> Off 
    // <1=> Error 
    // <2=> Warning 
    // <3=> Info 
    // <4=> Debug 
    
    #ifndef APP_TIMER_CONFIG_INITIAL_LOG_LEVEL
    #define APP_TIMER_CONFIG_INITIAL_LOG_LEVEL 3
    #endif
    
    // <o> APP_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 APP_TIMER_CONFIG_INFO_COLOR
    #define APP_TIMER_CONFIG_INFO_COLOR 0
    #endif
    
    // <o> APP_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 APP_TIMER_CONFIG_DEBUG_COLOR
    #define APP_TIMER_CONFIG_DEBUG_COLOR 0
    #endif
    
    // </e>
    
    // <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_DUMMY_CONFIG_LOG_ENABLED - Enables logging in the module.
    //==========================================================
    #ifndef APP_USBD_DUMMY_CONFIG_LOG_ENABLED
    #define APP_USBD_DUMMY_CONFIG_LOG_ENABLED 0
    #endif
    // <o> APP_USBD_DUMMY_CONFIG_LOG_LEVEL  - Default Severity level
     
    // <0=> Off 
    // <1=> Error 
    // <2=> Warning 
    // <3=> Info 
    // <4=> Debug 
    
    #ifndef APP_USBD_DUMMY_CONFIG_LOG_LEVEL
    #define APP_USBD_DUMMY_CONFIG_LOG_LEVEL 3
    #endif
    
    // <o> APP_USBD_DUMMY_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_DUMMY_CONFIG_INFO_COLOR
    #define APP_USBD_DUMMY_CONFIG_INFO_COLOR 0
    #endif
    
    // <o> APP_USBD_DUMMY_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_DUMMY_CONFIG_DEBUG_COLOR
    #define APP_USBD_DUMMY_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> APP_USBD_NRF_DFU_TRIGGER_CONFIG_LOG_ENABLED - Enables logging in the module.
    //==========================================================
    #ifndef APP_USBD_NRF_DFU_TRIGGER_CONFIG_LOG_ENABLED
    #define APP_USBD_NRF_DFU_TRIGGER_CONFIG_LOG_ENABLED 0
    #endif
    // <o> APP_USBD_NRF_DFU_TRIGGER_CONFIG_LOG_LEVEL  - Default Severity level
     
    // <0=> Off 
    // <1=> Error 
    // <2=> Warning 
    // <3=> Info 
    // <4=> Debug 
    
    #ifndef APP_USBD_NRF_DFU_TRIGGER_CONFIG_LOG_LEVEL
    #define APP_USBD_NRF_DFU_TRIGGER_CONFIG_LOG_LEVEL 3
    #endif
    
    // <o> APP_USBD_NRF_DFU_TRIGGER_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_NRF_DFU_TRIGGER_CONFIG_INFO_COLOR
    #define APP_USBD_NRF_DFU_TRIGGER_CONFIG_INFO_COLOR 0
    #endif
    
    // <o> APP_USBD_NRF_DFU_TRIGGER_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_NRF_DFU_TRIGGER_CONFIG_DEBUG_COLOR
    #define APP_USBD_NRF_DFU_TRIGGER_CONFIG_DEBUG_COLOR 0
    #endif
    
    // </e>
    
    // <e> NRF_ATFIFO_CONFIG_LOG_ENABLED - Enables logging in the module.
    //==========================================================
    #ifndef NRF_ATFIFO_CONFIG_LOG_ENABLED
    #define NRF_ATFIFO_CONFIG_LOG_ENABLED 0
    #endif
    // <o> NRF_ATFIFO_CONFIG_LOG_LEVEL  - Default Severity level
     
    // <0=> Off 
    // <1=> Error 
    // <2=> Warning 
    // <3=> Info 
    // <4=> Debug 
    
    #ifndef NRF_ATFIFO_CONFIG_LOG_LEVEL
    #define NRF_ATFIFO_CONFIG_LOG_LEVEL 3
    #endif
    
    // <o> NRF_ATFIFO_CONFIG_LOG_INIT_FILTER_LEVEL  - Initial severity level if dynamic filtering is enabled
     
    // <0=> Off 
    // <1=> Error 
    // <2=> Warning 
    // <3=> Info 
    // <4=> Debug 
    
    #ifndef NRF_ATFIFO_CONFIG_LOG_INIT_FILTER_LEVEL
    #define NRF_ATFIFO_CONFIG_LOG_INIT_FILTER_LEVEL 3
    #endif
    
    // <o> NRF_ATFIFO_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_ATFIFO_CONFIG_INFO_COLOR
    #define NRF_ATFIFO_CONFIG_INFO_COLOR 0
    #endif
    
    // <o> NRF_ATFIFO_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_ATFIFO_CONFIG_DEBUG_COLOR
    #define NRF_ATFIFO_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_INITIAL_LOG_LEVEL  - Initial severity level if dynamic filtering is enabled.
     
    
    // <i> If module generates a lot of logs, initial log level can
    // <i> be decreased to prevent flooding. Severity level can be
    // <i> increased on instance basis.
    // <0=> Off 
    // <1=> Error 
    // <2=> Warning 
    // <3=> Info 
    // <4=> Debug 
    
    #ifndef NRF_BALLOC_CONFIG_INITIAL_LOG_LEVEL
    #define NRF_BALLOC_CONFIG_INITIAL_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_LIBUARTE_CONFIG_LOG_ENABLED - Enables logging in the module.
    //==========================================================
    #ifndef NRF_CLI_LIBUARTE_CONFIG_LOG_ENABLED
    #define NRF_CLI_LIBUARTE_CONFIG_LOG_ENABLED 0
    #endif
    // <o> NRF_CLI_LIBUARTE_CONFIG_LOG_LEVEL  - Default Severity level
     
    // <0=> Off 
    // <1=> Error 
    // <2=> Warning 
    // <3=> Info 
    // <4=> Debug 
    
    #ifndef NRF_CLI_LIBUARTE_CONFIG_LOG_LEVEL
    #define NRF_CLI_LIBUARTE_CONFIG_LOG_LEVEL 3
    #endif
    
    // <o> NRF_CLI_LIBUARTE_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_LIBUARTE_CONFIG_INFO_COLOR
    #define NRF_CLI_LIBUARTE_CONFIG_INFO_COLOR 0
    #endif
    
    // <o> NRF_CLI_LIBUARTE_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_LIBUARTE_CONFIG_DEBUG_COLOR
    #define NRF_CLI_LIBUARTE_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_LIBUARTE_CONFIG_LOG_ENABLED - Enables logging in the module.
    //==========================================================
    #ifndef NRF_LIBUARTE_CONFIG_LOG_ENABLED
    #define NRF_LIBUARTE_CONFIG_LOG_ENABLED 0
    #endif
    // <o> NRF_LIBUARTE_CONFIG_LOG_LEVEL  - Default Severity level
     
    // <0=> Off 
    // <1=> Error 
    // <2=> Warning 
    // <3=> Info 
    // <4=> Debug 
    
    #ifndef NRF_LIBUARTE_CONFIG_LOG_LEVEL
    #define NRF_LIBUARTE_CONFIG_LOG_LEVEL 3
    #endif
    
    // <o> NRF_LIBUARTE_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_LIBUARTE_CONFIG_INFO_COLOR
    #define NRF_LIBUARTE_CONFIG_INFO_COLOR 0
    #endif
    
    // <o> NRF_LIBUARTE_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_LIBUARTE_CONFIG_DEBUG_COLOR
    #define NRF_LIBUARTE_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_QUEUE_CONFIG_LOG_ENABLED - Enables logging in the module.
    //==========================================================
    #ifndef NRF_QUEUE_CONFIG_LOG_ENABLED
    #define NRF_QUEUE_CONFIG_LOG_ENABLED 0
    #endif
    // <o> NRF_QUEUE_CONFIG_LOG_LEVEL  - Default Severity level
     
    // <0=> Off 
    // <1=> Error 
    // <2=> Warning 
    // <3=> Info 
    // <4=> Debug 
    
    #ifndef NRF_QUEUE_CONFIG_LOG_LEVEL
    #define NRF_QUEUE_CONFIG_LOG_LEVEL 3
    #endif
    
    // <o> NRF_QUEUE_CONFIG_LOG_INIT_FILTER_LEVEL  - Initial severity level if dynamic filtering is enabled
     
    // <0=> Off 
    // <1=> Error 
    // <2=> Warning 
    // <3=> Info 
    // <4=> Debug 
    
    #ifndef NRF_QUEUE_CONFIG_LOG_INIT_FILTER_LEVEL
    #define NRF_QUEUE_CONFIG_LOG_INIT_FILTER_LEVEL 3
    #endif
    
    // <o> NRF_QUEUE_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_QUEUE_CONFIG_INFO_COLOR
    #define NRF_QUEUE_CONFIG_INFO_COLOR 0
    #endif
    
    // <o> NRF_QUEUE_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_QUEUE_CONFIG_DEBUG_COLOR
    #define NRF_QUEUE_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 0
    #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 0
    #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 0
    #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>
    
    // <e> NRF_TWI_SENSOR_CONFIG_LOG_ENABLED - Enables logging in the module.
    //==========================================================
    #ifndef NRF_TWI_SENSOR_CONFIG_LOG_ENABLED
    #define NRF_TWI_SENSOR_CONFIG_LOG_ENABLED 0
    #endif
    // <o> NRF_TWI_SENSOR_CONFIG_LOG_LEVEL  - Default Severity level
     
    // <0=> Off 
    // <1=> Error 
    // <2=> Warning 
    // <3=> Info 
    // <4=> Debug 
    
    #ifndef NRF_TWI_SENSOR_CONFIG_LOG_LEVEL
    #define NRF_TWI_SENSOR_CONFIG_LOG_LEVEL 3
    #endif
    
    // <o> NRF_TWI_SENSOR_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_TWI_SENSOR_CONFIG_INFO_COLOR
    #define NRF_TWI_SENSOR_CONFIG_INFO_COLOR 0
    #endif
    
    // <o> NRF_TWI_SENSOR_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_TWI_SENSOR_CONFIG_DEBUG_COLOR
    #define NRF_TWI_SENSOR_CONFIG_DEBUG_COLOR 0
    #endif
    
    // </e>
    
    // </h> 
    //==========================================================
    
    // <h> nrf_log in nRF_Serialization 
    
    //==========================================================
    // <e> SER_HAL_TRANSPORT_CONFIG_LOG_ENABLED - Enables logging in the module.
    //==========================================================
    #ifndef SER_HAL_TRANSPORT_CONFIG_LOG_ENABLED
    #define SER_HAL_TRANSPORT_CONFIG_LOG_ENABLED 0
    #endif
    // <o> SER_HAL_TRANSPORT_CONFIG_LOG_LEVEL  - Default Severity level
     
    // <0=> Off 
    // <1=> Error 
    // <2=> Warning 
    // <3=> Info 
    // <4=> Debug 
    
    #ifndef SER_HAL_TRANSPORT_CONFIG_LOG_LEVEL
    #define SER_HAL_TRANSPORT_CONFIG_LOG_LEVEL 3
    #endif
    
    // <o> SER_HAL_TRANSPORT_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 SER_HAL_TRANSPORT_CONFIG_INFO_COLOR
    #define SER_HAL_TRANSPORT_CONFIG_INFO_COLOR 0
    #endif
    
    // <o> SER_HAL_TRANSPORT_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 SER_HAL_TRANSPORT_CONFIG_DEBUG_COLOR
    #define SER_HAL_TRANSPORT_CONFIG_DEBUG_COLOR 0
    #endif
    
    // </e>
    
    // </h> 
    //==========================================================
    
    // </h> 
    //==========================================================
    
    // </h> 
    //==========================================================
    
    // </h> 
    //==========================================================
    
    // <<< end of configuration section >>>
    #endif //SDK_CONFIG_H
    
    

    And this is my sdk.h 

  • Arun0498 said:
    Its not printing

     Over UART or Segger RTT debug terminal?

    Were you able to get it working with the original code ?

    If you are getting garbage values with the original code, then I suspect there is some HW issue with your setup. As previously mentioned, please check the wiring to the sensor, and make sure all wires are properly connected. If you have a spare sensor, then try to replace the one you are using now.

  • Hi 

    Its not printing in both Termite and debug terminal 

    I have also checked the wiring also as you suggested it same as this one https://github.com/sigurdnev/Nordic-DS18B20/blob/master/nordic-ds18b20.jpg and also tried with different temperature probe same output only coming and even the old temperature probe is working fine when I tried with Arduino 

Reply Children
  • Arun0498 said:

    Its not printing in both Termite and debug terminal 

     You had it printing in the first image you posted here, so I guess that you must have done some changes that somehow made the printing not working.

    I don't see anything that could cause this in the files you uploaded here. Could you instead zip the project, and upload it here as a .zip file?

Related