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

52840 SPI MISO Buffer empty

Hallo,

I'm using a 52840dongle.

Uart ( PC-Terminal Debugging)

Radio ( reading 51822)

I2C Display

is working well

 No i need to write and read data to/from a spi eeprom.

I am able to write data to the EEprom and read these data from the EEprom ( I can see the correct read out data on the oscilloscope). 

But the receive Buffer m_rx_buf[0],  m_rx_buf[1],  m_rx_buf[2],  m_rx_buf[3],  m_rx_buf[4],  m_rx_buf[5],  m_rx_buf[6],  m_rx_buf[7],  m_rx_buf[8] ... is always 0.

The spim_event_handler  is working well.

maybe the mosi gpi port is not properly set to input ?

I assume that  nrf_gpio_cfg_input(miso_pin, (nrf_gpio_pin_pull_t)NRFX_SPIM_MISO_PULL_CFG); is correct too.

Do you have any idea ?

Best regards Wenne

  

  • Hi,

    Can you post the code used for configuring SPIM, the GPIOs, the RX buffer, and how you start the transfer and read data?

    Best regards,
    Jørgen

  • Hallo Mr. Holmefjord

    thank you very much ...

    here are the code snippets I assume my Problem is somewhere within my sdk_config.h

    void spim_event_handler(nrfx_spim_evt_t const * p_event,
    void * p_context)
    {
    spi_xfer_done = true;
    // NRF_LOG_INFO("Transfer completed.");

    app_uart_put('S');
    app_uart_put('P');
    app_uart_put('I');

    app_uart_put(m_rx_buf[0]);
    app_uart_put(m_rx_buf[1]);
    app_uart_put(m_rx_buf[2]);
    app_uart_put(m_rx_buf[3]);
    app_uart_put(m_rx_buf[4]);
    app_uart_put(m_rx_buf[5]);
    app_uart_put(m_rx_buf[6]);

    if (m_rx_buf[0] != 0)
    {
    app_uart_put('R');
    app_uart_put('E');
    app_uart_put('C');
    app_uart_put(m_rx_buf[0]);
    app_uart_put(m_rx_buf[1]);
    app_uart_put(m_rx_buf[2]);
    app_uart_put(m_rx_buf[3]);

    }
    }

    EEProm_read_2(uint16_t Addresse)
    {

    m_tx_buf[0] = 0x3; // Befehl Read
    m_tx_buf[1] = Addresse>>8; //Highbyte
    m_tx_buf[2] = Addresse; //Lowbyte

    nrf_gpio_pin_clear(32); //CS

    nrf_delay_us(5);
    spi_xfer_done = false;
    err_code = (nrf_drv_spi_transfer(&spi, m_tx_buf, 3, m_rx_buf, 4));

    APP_ERROR_CHECK(err_code);
    while(spi_xfer_done == false)
    {
    __WFE();
    }

    nrf_gpio_pin_set(32); //CS
    }

    int main(void)
    {

    nrf_gpio_cfg_output(32);//CS
    nrf_gpio_cfg_output(20);//WP
    nrf_gpio_cfg_output(10);//HOLD
    nrf_gpio_pin_set(10);//WP
    nrf_gpio_pin_set(20);//HOLD

    ret_code_t err_code;

    nrf_drv_spi_config_t spi_config = NRF_DRV_SPI_DEFAULT_CONFIG;
    //spi_config.ss_pin = SPI_SS_PIN;
    spi_config.miso_pin = SPI_MISO_PIN;
    spi_config.mosi_pin = SPI_MOSI_PIN;
    spi_config.sck_pin = SPI_SCK_PIN;
    spi_config.mode = NRF_DRV_SPI_MODE_0;
    spi_config.bit_order = NRF_DRV_SPI_BIT_ORDER_MSB_FIRST;
    spi_config.frequency = NRF_SPIM_FREQ_125K;
    APP_ERROR_CHECK(nrf_drv_spi_init(&spi, &spi_config, spim_event_handler, NULL));

    /**
    * Copyright (c) 2017 - 2020, 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_Drivers

    //==========================================================
    // <h> SPI_CONFIGURATION - Spi configuration

    //==========================================================
    // <o> SPI_SCK_PIN - Pin number

    // <0=> 0 (P0.0)
    // <1=> 1 (P0.1)
    // <2=> 2 (P0.2)
    // <3=> 3 (P0.3)
    // <4=> 4 (P0.4)
    // <5=> 5 (P0.5)
    // <6=> 6 (P0.6)
    // <7=> 7 (P0.7)
    // <8=> 8 (P0.8)
    // <9=> 9 (P0.9)
    // <10=> 10 (P0.10)
    // <11=> 11 (P0.11)
    // <12=> 12 (P0.12)
    // <13=> 13 (P0.13)
    // <14=> 14 (P0.14)
    // <15=> 15 (P0.15)
    // <16=> 16 (P0.16)
    // <17=> 17 (P0.17)
    // <18=> 18 (P0.18)
    // <19=> 19 (P0.19)
    // <20=> 20 (P0.20)
    // <21=> 21 (P0.21)
    // <22=> 22 (P0.22)
    // <23=> 23 (P0.23)
    // <24=> 24 (P0.24)
    // <25=> 25 (P0.25)
    // <26=> 26 (P0.26)
    // <27=> 27 (P0.27)
    // <28=> 28 (P0.28)
    // <29=> 29 (P0.29)
    // <30=> 30 (P0.30)
    // <31=> 31 (P0.31)
    // <4294967295=> Not connected

    #ifndef SPI_SCK_PIN
    #define SPI_SCK_PIN 22
    #endif

    // <o> SPI_MISO_PIN - Pin number

    // <0=> 0 (P0.0)
    // <1=> 1 (P0.1)
    // <2=> 2 (P0.2)
    // <3=> 3 (P0.3)
    // <4=> 4 (P0.4)
    // <5=> 5 (P0.5)
    // <6=> 6 (P0.6)
    // <7=> 7 (P0.7)
    // <8=> 8 (P0.8)
    // <9=> 9 (P0.9)
    // <10=> 10 (P0.10)
    // <11=> 11 (P0.11)
    // <12=> 12 (P0.12)
    // <13=> 13 (P0.13)
    // <14=> 14 (P0.14)
    // <15=> 15 (P0.15)
    // <16=> 16 (P0.16)
    // <17=> 17 (P0.17)
    // <18=> 18 (P0.18)
    // <19=> 19 (P0.19)
    // <20=> 20 (P0.20)
    // <21=> 21 (P0.21)
    // <22=> 22 (P0.22)
    // <23=> 23 (P0.23)
    // <24=> 24 (P0.24)
    // <25=> 25 (P0.25)
    // <26=> 26 (P0.26)
    // <27=> 27 (P0.27)
    // <28=> 28 (P0.28)
    // <29=> 29 (P0.29)
    // <30=> 30 (P0.30)
    // <31=> 31 (P0.31)
    // <4294967295=> Not connected

    #ifndef SPI_MISO_PIN
    #define SPI_MISO_PIN 9
    #endif

    // <o> SPI_MOSI_PIN - Pin number

    // <0=> 0 (P0.0)
    // <1=> 1 (P0.1)
    // <2=> 2 (P0.2)
    // <3=> 3 (P0.3)
    // <4=> 4 (P0.4)
    // <5=> 5 (P0.5)
    // <6=> 6 (P0.6)
    // <7=> 7 (P0.7)
    // <8=> 8 (P0.8)
    // <9=> 9 (P0.9)
    // <10=> 10 (P0.10)
    // <11=> 11 (P0.11)
    // <12=> 12 (P0.12)
    // <13=> 13 (P0.13)
    // <14=> 14 (P0.14)
    // <15=> 15 (P0.15)
    // <16=> 16 (P0.16)
    // <17=> 17 (P0.17)
    // <18=> 18 (P0.18)
    // <19=> 19 (P0.19)
    // <20=> 20 (P0.20)
    // <21=> 21 (P0.21)
    // <22=> 22 (P0.22)
    // <23=> 23 (P0.23)
    // <24=> 24 (P0.24)
    // <25=> 25 (P0.25)
    // <26=> 26 (P0.26)
    // <27=> 27 (P0.27)
    // <28=> 28 (P0.28)
    // <29=> 29 (P0.29)
    // <30=> 30 (P0.30)
    // <31=> 31 (P0.31)
    // <4294967295=> Not connected

    #ifndef SPI_MOSI_PIN
    #define SPI_MOSI_PIN 24
    #endif

    // <o> SPI_SS_PIN - Pin number

    // <0=> 0 (P0.0)
    // <1=> 1 (P0.1)
    // <2=> 2 (P0.2)
    // <3=> 3 (P0.3)
    // <4=> 4 (P0.4)
    // <5=> 5 (P0.5)
    // <6=> 6 (P0.6)
    // <7=> 7 (P0.7)
    // <8=> 8 (P0.8)
    // <9=> 9 (P0.9)
    // <10=> 10 (P0.10)
    // <11=> 11 (P0.11)
    // <12=> 12 (P0.12)
    // <13=> 13 (P0.13)
    // <14=> 14 (P0.14)
    // <15=> 15 (P0.15)
    // <16=> 16 (P0.16)
    // <17=> 17 (P0.17)
    // <18=> 18 (P0.18)
    // <19=> 19 (P0.19)
    // <20=> 20 (P0.20)
    // <21=> 21 (P0.21)
    // <22=> 22 (P0.22)
    // <23=> 23 (P0.23)
    // <24=> 24 (P0.24)
    // <25=> 25 (P0.25)
    // <26=> 26 (P0.26)
    // <27=> 27 (P0.27)
    // <28=> 28 (P0.28)
    // <29=> 29 (P0.29)
    // <30=> 30 (P0.30)
    // <31=> 31 (P0.31)
    // <4294967295=> Not connected

    //#ifndef SPI_SS_PIN
    //#define SPI_SS_PIN 00
    //#endif

    // <o> SPI_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_IRQ_PRIORITY
    #define SPI_IRQ_PRIORITY 4
    #endif

    //==========================================================
    // <e> NRFX_PRS_ENABLED - nrfx_prs - Peripheral Resource Sharing module
    //==========================================================
    #ifndef NRFX_PRS_ENABLED
    #define NRFX_PRS_ENABLED 1
    #endif
    // <q> NRFX_PRS_BOX_0_ENABLED - Enables box 0 in the module.

    #ifndef NRFX_PRS_BOX_0_ENABLED
    #define NRFX_PRS_BOX_0_ENABLED 0
    #endif

    // <q> NRFX_PRS_BOX_1_ENABLED - Enables box 1 in the module.

    #ifndef NRFX_PRS_BOX_1_ENABLED
    #define NRFX_PRS_BOX_1_ENABLED 0
    #endif

    // <q> NRFX_PRS_BOX_2_ENABLED - Enables box 2 in the module.

    #ifndef NRFX_PRS_BOX_2_ENABLED
    #define NRFX_PRS_BOX_2_ENABLED 0
    #endif

    // <q> NRFX_PRS_BOX_3_ENABLED - Enables box 3 in the module.

    #ifndef NRFX_PRS_BOX_3_ENABLED
    #define NRFX_PRS_BOX_3_ENABLED 0
    #endif

    // <q> NRFX_PRS_BOX_4_ENABLED - Enables box 4 in the module.

    #ifndef NRFX_PRS_BOX_4_ENABLED
    #define NRFX_PRS_BOX_4_ENABLED 1
    #endif

    // <e> NRFX_PRS_CONFIG_LOG_ENABLED - Enables logging in the module.
    //==========================================================
    #ifndef NRFX_PRS_CONFIG_LOG_ENABLED
    #define NRFX_PRS_CONFIG_LOG_ENABLED 0
    #endif
    // <o> NRFX_PRS_CONFIG_LOG_LEVEL - Default Severity level

    // <0=> Off
    // <1=> Error
    // <2=> Warning
    // <3=> Info
    // <4=> Debug

    #ifndef NRFX_PRS_CONFIG_LOG_LEVEL
    #define NRFX_PRS_CONFIG_LOG_LEVEL 3
    #endif

    // <o> NRFX_PRS_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 NRFX_PRS_CONFIG_INFO_COLOR
    #define NRFX_PRS_CONFIG_INFO_COLOR 0
    #endif

    // <o> NRFX_PRS_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 NRFX_PRS_CONFIG_DEBUG_COLOR
    #define NRFX_PRS_CONFIG_DEBUG_COLOR 0
    #endif

    // </e>

    // </e>

    //WENNE


    #define TWI_ENABLED 1
    #define TWI0_ENABLED 1


    // <e> NRFX_TWIM_ENABLED - nrfx_twim - TWIM peripheral driver
    //==========================================================
    #ifndef NRFX_TWIM_ENABLED
    #define NRFX_TWIM_ENABLED 1
    #endif
    // <q> NRFX_TWIM0_ENABLED - Enable TWIM0 instance

    #ifndef NRFX_TWIM0_ENABLED
    #define NRFX_TWIM0_ENABLED 0
    #endif

    // <q> NRFX_TWIM1_ENABLED - Enable TWIM1 instance

    #ifndef NRFX_TWIM1_ENABLED
    #define NRFX_TWIM1_ENABLED 0
    #endif

    // <o> NRFX_TWIM_DEFAULT_CONFIG_FREQUENCY - Frequency

    // <26738688=> 100k
    // <67108864=> 250k
    // <104857600=> 400k

    #ifndef NRFX_TWIM_DEFAULT_CONFIG_FREQUENCY
    #define NRFX_TWIM_DEFAULT_CONFIG_FREQUENCY 26738688
    #endif

    // <q> NRFX_TWIM_DEFAULT_CONFIG_HOLD_BUS_UNINIT - Enables bus holding after uninit

    #ifndef NRFX_TWIM_DEFAULT_CONFIG_HOLD_BUS_UNINIT
    #define NRFX_TWIM_DEFAULT_CONFIG_HOLD_BUS_UNINIT 0
    #endif

    // <o> NRFX_TWIM_DEFAULT_CONFIG_IRQ_PRIORITY - Interrupt priority

    // <0=> 0 (highest)
    // <1=> 1
    // <2=> 2
    // <3=> 3
    // <4=> 4
    // <5=> 5
    // <6=> 6
    // <7=> 7

    #ifndef NRFX_TWIM_DEFAULT_CONFIG_IRQ_PRIORITY
    #define NRFX_TWIM_DEFAULT_CONFIG_IRQ_PRIORITY 6
    #endif

    // <e> NRFX_TWIM_CONFIG_LOG_ENABLED - Enables logging in the module.
    //==========================================================
    #ifndef NRFX_TWIM_CONFIG_LOG_ENABLED
    #define NRFX_TWIM_CONFIG_LOG_ENABLED 0
    #endif
    // <o> NRFX_TWIM_CONFIG_LOG_LEVEL - Default Severity level

    // <0=> Off
    // <1=> Error
    // <2=> Warning
    // <3=> Info
    // <4=> Debug

    #ifndef NRFX_TWIM_CONFIG_LOG_LEVEL
    #define NRFX_TWIM_CONFIG_LOG_LEVEL 3
    #endif

    // <o> NRFX_TWIM_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 NRFX_TWIM_CONFIG_INFO_COLOR
    #define NRFX_TWIM_CONFIG_INFO_COLOR 0
    #endif

    // <o> NRFX_TWIM_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 NRFX_TWIM_CONFIG_DEBUG_COLOR
    #define NRFX_TWIM_CONFIG_DEBUG_COLOR 0
    #endif

    // </e>

    // </e>

    // <e> NRFX_TWI_ENABLED - nrfx_twi - TWI peripheral driver
    //==========================================================
    #ifndef NRFX_TWI_ENABLED
    #define NRFX_TWI_ENABLED 1
    #endif
    // <q> NRFX_TWI0_ENABLED - Enable TWI0 instance

    #ifndef NRFX_TWI0_ENABLED
    #define NRFX_TWI0_ENABLED 1
    #endif

    // <q> NRFX_TWI1_ENABLED - Enable TWI1 instance

    #ifndef NRFX_TWI1_ENABLED
    #define NRFX_TWI1_ENABLED 0
    #endif

    // <o> NRFX_TWI_DEFAULT_CONFIG_FREQUENCY - Frequency

    // <26738688=> 100k
    // <67108864=> 250k
    // <104857600=> 400k

    #ifndef NRFX_TWI_DEFAULT_CONFIG_FREQUENCY
    #define NRFX_TWI_DEFAULT_CONFIG_FREQUENCY 26738688
    #endif

    // <q> NRFX_TWI_DEFAULT_CONFIG_HOLD_BUS_UNINIT - Enables bus holding after uninit

    #ifndef NRFX_TWI_DEFAULT_CONFIG_HOLD_BUS_UNINIT
    #define NRFX_TWI_DEFAULT_CONFIG_HOLD_BUS_UNINIT 0
    #endif

    // <o> NRFX_TWI_DEFAULT_CONFIG_IRQ_PRIORITY - Interrupt priority

    // <0=> 0 (highest)
    // <1=> 1
    // <2=> 2
    // <3=> 3
    // <4=> 4
    // <5=> 5
    // <6=> 6
    // <7=> 7

    #ifndef NRFX_TWI_DEFAULT_CONFIG_IRQ_PRIORITY
    #define NRFX_TWI_DEFAULT_CONFIG_IRQ_PRIORITY 6
    #endif

    // <e> NRFX_TWI_CONFIG_LOG_ENABLED - Enables logging in the module.
    //==========================================================
    #ifndef NRFX_TWI_CONFIG_LOG_ENABLED
    #define NRFX_TWI_CONFIG_LOG_ENABLED 0
    #endif
    // <o> NRFX_TWI_CONFIG_LOG_LEVEL - Default Severity level

    // <0=> Off
    // <1=> Error
    // <2=> Warning
    // <3=> Info
    // <4=> Debug

    #ifndef NRFX_TWI_CONFIG_LOG_LEVEL
    #define NRFX_TWI_CONFIG_LOG_LEVEL 3
    #endif

    // <o> NRFX_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 NRFX_TWI_CONFIG_INFO_COLOR
    #define NRFX_TWI_CONFIG_INFO_COLOR 0
    #endif

    // <o> NRFX_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 NRFX_TWI_CONFIG_DEBUG_COLOR
    #define NRFX_TWI_CONFIG_DEBUG_COLOR 0
    #endif

    // </e>

    // </e>

    //WENNE


    // <e> NRFX_SPIM_ENABLED - nrfx_spim - SPIM peripheral driver
    //==========================================================
    #ifndef NRFX_SPIM_ENABLED
    #define NRFX_SPIM_ENABLED 1
    #endif
    // <q> NRFX_SPIM0_ENABLED - Enable SPIM0 instance

    #ifndef NRFX_SPIM0_ENABLED
    #define NRFX_SPIM0_ENABLED 0
    #endif

    // <q> NRFX_SPIM1_ENABLED - Enable SPIM1 instance

    #ifndef NRFX_SPIM1_ENABLED
    #define NRFX_SPIM1_ENABLED 1
    #endif

    // <q> NRFX_SPIM2_ENABLED - Enable SPIM2 instance

    #ifndef NRFX_SPIM2_ENABLED
    #define NRFX_SPIM2_ENABLED 0
    #endif

    // <q> NRFX_SPIM3_ENABLED - Enable SPIM3 instance

    #ifndef NRFX_SPIM3_ENABLED
    #define NRFX_SPIM3_ENABLED 0
    #endif

    // <q> NRFX_SPIM_EXTENDED_ENABLED - Enable extended SPIM features

    #ifndef NRFX_SPIM_EXTENDED_ENABLED
    #define NRFX_SPIM_EXTENDED_ENABLED 0
    #endif

    // <o> NRFX_SPIM_MISO_PULL_CFG - MISO pin pull configuration.

    // <0=> NRF_GPIO_PIN_NOPULL
    // <1=> NRF_GPIO_PIN_PULLDOWN
    // <3=> NRF_GPIO_PIN_PULLUP

    #ifndef NRFX_SPIM_MISO_PULL_CFG
    #define NRFX_SPIM_MISO_PULL_CFG 1
    #endif

    // <o> NRFX_SPIM_DEFAULT_CONFIG_IRQ_PRIORITY - Interrupt priority

    // <0=> 0 (highest)
    // <1=> 1
    // <2=> 2
    // <3=> 3
    // <4=> 4
    // <5=> 5
    // <6=> 6
    // <7=> 7

    #ifndef NRFX_SPIM_DEFAULT_CONFIG_IRQ_PRIORITY
    #define NRFX_SPIM_DEFAULT_CONFIG_IRQ_PRIORITY 4
    #endif

    // <e> NRFX_SPIM_CONFIG_LOG_ENABLED - Enables logging in the module.
    //==========================================================
    #ifndef NRFX_SPIM_CONFIG_LOG_ENABLED
    #define NRFX_SPIM_CONFIG_LOG_ENABLED 0
    #endif
    // <o> NRFX_SPIM_CONFIG_LOG_LEVEL - Default Severity level

    // <0=> Off
    // <1=> Error
    // <2=> Warning
    // <3=> Info
    // <4=> Debug

    #ifndef NRFX_SPIM_CONFIG_LOG_LEVEL
    #define NRFX_SPIM_CONFIG_LOG_LEVEL 3
    #endif

    // <o> NRFX_SPIM_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 NRFX_SPIM_CONFIG_INFO_COLOR
    #define NRFX_SPIM_CONFIG_INFO_COLOR 0
    #endif

    // <o> NRFX_SPIM_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 NRFX_SPIM_CONFIG_DEBUG_COLOR
    #define NRFX_SPIM_CONFIG_DEBUG_COLOR 0
    #endif

    // </e>

    // <e> NRFX_SPI_ENABLED - nrfx_spi - SPI peripheral driver
    //==========================================================
    #ifndef NRFX_SPI_ENABLED
    #define NRFX_SPI_ENABLED 1
    #endif
    // <q> NRFX_SPI0_ENABLED - Enable SPI0 instance

    #ifndef NRFX_SPI0_ENABLED
    #define NRFX_SPI0_ENABLED 0
    #endif

    // <q> NRFX_SPI1_ENABLED - Enable SPI1 instance

    #ifndef NRFX_SPI1_ENABLED
    #define NRFX_SPI1_ENABLED 1
    #endif

    // <q> NRFX_SPI2_ENABLED - Enable SPI2 instance

    #ifndef NRFX_SPI2_ENABLED
    #define NRFX_SPI2_ENABLED 0
    #endif

    // <o> NRFX_SPI_MISO_PULL_CFG - MISO pin pull configuration.

    // <0=> NRF_GPIO_PIN_NOPULL
    // <1=> NRF_GPIO_PIN_PULLDOWN
    // <3=> NRF_GPIO_PIN_PULLUP

    #ifndef NRFX_SPI_MISO_PULL_CFG
    #define NRFX_SPI_MISO_PULL_CFG 1
    #endif

    // <o> NRFX_SPI_DEFAULT_CONFIG_IRQ_PRIORITY - Interrupt priority

    // <0=> 0 (highest)
    // <1=> 1
    // <2=> 2
    // <3=> 3
    // <4=> 4
    // <5=> 5
    // <6=> 6
    // <7=> 7

    #ifndef NRFX_SPI_DEFAULT_CONFIG_IRQ_PRIORITY
    #define NRFX_SPI_DEFAULT_CONFIG_IRQ_PRIORITY 4
    #endif

    // <e> NRFX_SPI_CONFIG_LOG_ENABLED - Enables logging in the module.
    //==========================================================
    #ifndef NRFX_SPI_CONFIG_LOG_ENABLED
    #define NRFX_SPI_CONFIG_LOG_ENABLED 0
    #endif
    // <o> NRFX_SPI_CONFIG_LOG_LEVEL - Default Severity level

    // <0=> Off
    // <1=> Error
    // <2=> Warning
    // <3=> Info
    // <4=> Debug

    #ifndef NRFX_SPI_CONFIG_LOG_LEVEL
    #define NRFX_SPI_CONFIG_LOG_LEVEL 3
    #endif

    // <o> NRFX_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 NRFX_SPI_CONFIG_INFO_COLOR
    #define NRFX_SPI_CONFIG_INFO_COLOR 0
    #endif

    // <o> NRFX_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 NRFX_SPI_CONFIG_DEBUG_COLOR
    #define NRFX_SPI_CONFIG_DEBUG_COLOR 0
    #endif

    #ifndef SPI_ENABLED
    #define SPI_ENABLED 1
    #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 4
    #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 1
    #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> NRFX_UARTE_ENABLED - nrfx_uarte - UARTE peripheral driver
    //==========================================================
    #ifndef NRFX_UARTE_ENABLED
    #define NRFX_UARTE_ENABLED 1
    #endif
    // <o> NRFX_UARTE0_ENABLED - Enable UARTE0 instance
    #ifndef NRFX_UARTE0_ENABLED
    #define NRFX_UARTE0_ENABLED 0
    #endif

    // <o> NRFX_UARTE1_ENABLED - Enable UARTE1 instance
    #ifndef NRFX_UARTE1_ENABLED
    #define NRFX_UARTE1_ENABLED 0
    #endif

    // <o> NRFX_UARTE_DEFAULT_CONFIG_HWFC - Hardware Flow Control

    // <0=> Disabled
    // <1=> Enabled

    #ifndef NRFX_UARTE_DEFAULT_CONFIG_HWFC
    #define NRFX_UARTE_DEFAULT_CONFIG_HWFC 0
    #endif

    // <o> NRFX_UARTE_DEFAULT_CONFIG_PARITY - Parity

    // <0=> Excluded
    // <14=> Included

    #ifndef NRFX_UARTE_DEFAULT_CONFIG_PARITY
    #define NRFX_UARTE_DEFAULT_CONFIG_PARITY 0
    #endif

    // <o> NRFX_UARTE_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
    // <8388608=> 31250 baud
    // <10289152=> 38400 baud
    // <15007744=> 56000 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 NRFX_UARTE_DEFAULT_CONFIG_BAUDRATE
    #define NRFX_UARTE_DEFAULT_CONFIG_BAUDRATE 30801920
    #endif

    // <o> NRFX_UARTE_DEFAULT_CONFIG_IRQ_PRIORITY - Interrupt priority

    // <0=> 0 (highest)
    // <1=> 1
    // <2=> 2
    // <3=> 3
    // <4=> 4
    // <5=> 5
    // <6=> 6
    // <7=> 7

    #ifndef NRFX_UARTE_DEFAULT_CONFIG_IRQ_PRIORITY
    #define NRFX_UARTE_DEFAULT_CONFIG_IRQ_PRIORITY 6
    #endif

    // <e> NRFX_UARTE_CONFIG_LOG_ENABLED - Enables logging in the module.
    //==========================================================
    #ifndef NRFX_UARTE_CONFIG_LOG_ENABLED
    #define NRFX_UARTE_CONFIG_LOG_ENABLED 0
    #endif
    // <o> NRFX_UARTE_CONFIG_LOG_LEVEL - Default Severity level

    // <0=> Off
    // <1=> Error
    // <2=> Warning
    // <3=> Info
    // <4=> Debug

    #ifndef NRFX_UARTE_CONFIG_LOG_LEVEL
    #define NRFX_UARTE_CONFIG_LOG_LEVEL 3
    #endif

    // <o> NRFX_UARTE_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 NRFX_UARTE_CONFIG_INFO_COLOR
    #define NRFX_UARTE_CONFIG_INFO_COLOR 0
    #endif

    // <o> NRFX_UARTE_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 NRFX_UARTE_CONFIG_DEBUG_COLOR
    #define NRFX_UARTE_CONFIG_DEBUG_COLOR 0
    #endif

    // </e>

    // </e>

    // <e> NRFX_UART_ENABLED - nrfx_uart - UART peripheral driver
    //==========================================================
    #ifndef NRFX_UART_ENABLED
    #define NRFX_UART_ENABLED 1
    #endif
    // <o> NRFX_UART0_ENABLED - Enable UART0 instance
    #ifndef NRFX_UART0_ENABLED
    #define NRFX_UART0_ENABLED 0
    #endif

    // <o> NRFX_UART_DEFAULT_CONFIG_HWFC - Hardware Flow Control

    // <0=> Disabled
    // <1=> Enabled

    #ifndef NRFX_UART_DEFAULT_CONFIG_HWFC
    #define NRFX_UART_DEFAULT_CONFIG_HWFC 0
    #endif

    // <o> NRFX_UART_DEFAULT_CONFIG_PARITY - Parity

    // <0=> Excluded
    // <14=> Included

    #ifndef NRFX_UART_DEFAULT_CONFIG_PARITY
    #define NRFX_UART_DEFAULT_CONFIG_PARITY 0
    #endif

    // <o> NRFX_UART_DEFAULT_CONFIG_BAUDRATE - Default Baudrate

    // <323584=> 1200 baud
    // <643072=> 2400 baud
    // <1290240=> 4800 baud
    // <2576384=> 9600 baud
    // <3866624=> 14400 baud
    // <5152768=> 19200 baud
    // <7729152=> 28800 baud
    // <8388608=> 31250 baud
    // <10309632=> 38400 baud
    // <15007744=> 56000 baud
    // <15462400=> 57600 baud
    // <20615168=> 76800 baud
    // <30924800=> 115200 baud
    // <61845504=> 230400 baud
    // <67108864=> 250000 baud
    // <123695104=> 460800 baud
    // <247386112=> 921600 baud
    // <268435456=> 1000000 baud

    #ifndef NRFX_UART_DEFAULT_CONFIG_BAUDRATE
    #define NRFX_UART_DEFAULT_CONFIG_BAUDRATE 30924800
    #endif

    // <o> NRFX_UART_DEFAULT_CONFIG_IRQ_PRIORITY - Interrupt priority

    // <0=> 0 (highest)
    // <1=> 1
    // <2=> 2
    // <3=> 3
    // <4=> 4
    // <5=> 5
    // <6=> 6
    // <7=> 7

    #ifndef NRFX_UART_DEFAULT_CONFIG_IRQ_PRIORITY
    #define NRFX_UART_DEFAULT_CONFIG_IRQ_PRIORITY 6
    #endif

    // <e> NRFX_UART_CONFIG_LOG_ENABLED - Enables logging in the module.
    //==========================================================
    #ifndef NRFX_UART_CONFIG_LOG_ENABLED
    #define NRFX_UART_CONFIG_LOG_ENABLED 0
    #endif
    // <o> NRFX_UART_CONFIG_LOG_LEVEL - Default Severity level

    // <0=> Off
    // <1=> Error
    // <2=> Warning
    // <3=> Info
    // <4=> Debug

    #ifndef NRFX_UART_CONFIG_LOG_LEVEL
    #define NRFX_UART_CONFIG_LOG_LEVEL 3
    #endif

    // <o> NRFX_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 NRFX_UART_CONFIG_INFO_COLOR
    #define NRFX_UART_CONFIG_INFO_COLOR 0
    #endif

    // <o> NRFX_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 NRFX_UART_CONFIG_DEBUG_COLOR
    #define NRFX_UART_CONFIG_DEBUG_COLOR 0
    #endif

    // </e>

    // </e>

    // <e> UART_ENABLED - nrf_drv_uart - UART/UARTE peripheral driver - legacy layer
    //==========================================================
    #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 6
    #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> UART1_ENABLED - Enable UART1 instance
    //==========================================================
    #ifndef UART1_ENABLED
    #define UART1_ENABLED 0
    #endif
    // </e>

    // </e>

    // </h>
    //==========================================================

    // <h> nRF_Libraries

    //==========================================================
    // <q> APP_FIFO_ENABLED - app_fifo - Software FIFO implementation

    #ifndef APP_FIFO_ENABLED
    #define APP_FIFO_ENABLED 1
    #endif

    // <e> APP_UART_ENABLED - app_uart - UART driver
    //==========================================================
    #ifndef APP_UART_ENABLED
    #define APP_UART_ENABLED 1
    #endif
    // <o> APP_UART_DRIVER_INSTANCE - UART instance used

    // <0=> 0

    #ifndef APP_UART_DRIVER_INSTANCE
    #define APP_UART_DRIVER_INSTANCE 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

    // <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 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> RETARGET_ENABLED - retarget - Retargeting stdio functions

    #ifndef RETARGET_ENABLED
    #define RETARGET_ENABLED 1
    #endif

    // <h> nrf_fprintf - fprintf function.

    //==========================================================
    // <q> NRF_FPRINTF_ENABLED - Enable/disable fprintf module.

    #ifndef NRF_FPRINTF_ENABLED
    #define NRF_FPRINTF_ENABLED 1
    #endif

    // <q> NRF_FPRINTF_FLAG_AUTOMATIC_CR_ON_LF_ENABLED - For each printed LF, function will add CR.

    #ifndef NRF_FPRINTF_FLAG_AUTOMATIC_CR_ON_LF_ENABLED
    #define NRF_FPRINTF_FLAG_AUTOMATIC_CR_ON_LF_ENABLED 1
    #endif

    // <q> NRF_FPRINTF_DOUBLE_ENABLED - Enable IEEE-754 double precision formatting.

    #ifndef NRF_FPRINTF_DOUBLE_ENABLED
    #define NRF_FPRINTF_DOUBLE_ENABLED 0
    #endif

    // </h>
    //==========================================================

    // </h>
    //==========================================================

    // <h> nRF_Log

    //==========================================================
    // <e> NRF_LOG_ENABLED - nrf_log - Logger
    //==========================================================
    #ifndef NRF_LOG_ENABLED
    #define NRF_LOG_ENABLED 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>
    //==========================================================

    // <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

    // <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_CLI_CMDS - Enable CLI commands for the module.

    #ifndef NRF_LOG_CLI_CMDS
    #define NRF_LOG_CLI_CMDS 0
    #endif

    // <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

    // <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_NON_DEFFERED_CRITICAL_REGION_ENABLED - Enable use of critical region for non deffered mode when flushing logs.

    // <i> When enabled NRF_LOG_FLUSH is called from critical section when non deffered mode is used.
    // <i> Log output will never be corrupted as access to the log backend is exclusive
    // <i> but system will spend significant amount of time in critical section

    #ifndef NRF_LOG_NON_DEFFERED_CRITICAL_REGION_ENABLED
    #define NRF_LOG_NON_DEFFERED_CRITICAL_REGION_ENABLED 0
    #endif

    // <o> NRF_LOG_STR_PUSH_BUFFER_SIZE - Size of the buffer dedicated for strings stored using @ref NRF_LOG_PUSH.

    // <16=> 16
    // <32=> 32
    // <64=> 64
    // <128=> 128
    // <256=> 256
    // <512=> 512
    // <1024=> 1024

    #ifndef NRF_LOG_STR_PUSH_BUFFER_SIZE
    #define NRF_LOG_STR_PUSH_BUFFER_SIZE 128
    #endif

    // <o> NRF_LOG_STR_PUSH_BUFFER_SIZE - Size of the buffer dedicated for strings stored using @ref NRF_LOG_PUSH.

    // <16=> 16
    // <32=> 32
    // <64=> 64
    // <128=> 128
    // <256=> 256
    // <512=> 512
    // <1024=> 1024

    #ifndef NRF_LOG_STR_PUSH_BUFFER_SIZE
    #define NRF_LOG_STR_PUSH_BUFFER_SIZE 128
    #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>

    // <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) or 0 to use app_timer frequency.
    #ifndef NRF_LOG_TIMESTAMP_DEFAULT_FREQUENCY
    #define NRF_LOG_TIMESTAMP_DEFAULT_FREQUENCY 0
    #endif

    // </e>

    // <h> nrf_log module configuration

    //==========================================================
    // <h> nrf_log in nRF_Core

    //==========================================================
    // <e> NRF_MPU_LIB_CONFIG_LOG_ENABLED - Enables logging in the module.
    //==========================================================
    #ifndef NRF_MPU_LIB_CONFIG_LOG_ENABLED
    #define NRF_MPU_LIB_CONFIG_LOG_ENABLED 0
    #endif
    // <o> NRF_MPU_LIB_CONFIG_LOG_LEVEL - Default Severity level

    // <0=> Off
    // <1=> Error
    // <2=> Warning
    // <3=> Info
    // <4=> Debug

    #ifndef NRF_MPU_LIB_CONFIG_LOG_LEVEL
    #define NRF_MPU_LIB_CONFIG_LOG_LEVEL 3
    #endif

    // <o> NRF_MPU_LIB_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_LIB_CONFIG_INFO_COLOR
    #define NRF_MPU_LIB_CONFIG_INFO_COLOR 0
    #endif

    // <o> NRF_MPU_LIB_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_LIB_CONFIG_DEBUG_COLOR
    #define NRF_MPU_LIB_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> MAX3421E_HOST_CONFIG_LOG_ENABLED - Enable logging in the module
    //==========================================================
    #ifndef MAX3421E_HOST_CONFIG_LOG_ENABLED
    #define MAX3421E_HOST_CONFIG_LOG_ENABLED 0
    #endif
    // <o> MAX3421E_HOST_CONFIG_LOG_LEVEL - Default Severity level

    // <0=> Off
    // <1=> Error
    // <2=> Warning
    // <3=> Info
    // <4=> Debug

    #ifndef MAX3421E_HOST_CONFIG_LOG_LEVEL
    #define MAX3421E_HOST_CONFIG_LOG_LEVEL 3
    #endif

    // <o> MAX3421E_HOST_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 MAX3421E_HOST_CONFIG_INFO_COLOR
    #define MAX3421E_HOST_CONFIG_INFO_COLOR 0
    #endif

    // <o> MAX3421E_HOST_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 MAX3421E_HOST_CONFIG_DEBUG_COLOR
    #define MAX3421E_HOST_CONFIG_DEBUG_COLOR 0
    #endif

    // </e>

    // <e> NRFX_USBD_CONFIG_LOG_ENABLED - Enable logging in the module
    //==========================================================
    #ifndef NRFX_USBD_CONFIG_LOG_ENABLED
    #define NRFX_USBD_CONFIG_LOG_ENABLED 0
    #endif
    // <o> NRFX_USBD_CONFIG_LOG_LEVEL - Default Severity level

    // <0=> Off
    // <1=> Error
    // <2=> Warning
    // <3=> Info
    // <4=> Debug

    #ifndef NRFX_USBD_CONFIG_LOG_LEVEL
    #define NRFX_USBD_CONFIG_LOG_LEVEL 3
    #endif

    // <o> NRFX_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 NRFX_USBD_CONFIG_INFO_COLOR
    #define NRFX_USBD_CONFIG_INFO_COLOR 0
    #endif

    // <o> NRFX_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 NRFX_USBD_CONFIG_DEBUG_COLOR
    #define NRFX_USBD_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_BUTTON_CONFIG_LOG_ENABLED - Enables logging in the module.
    //==========================================================
    #ifndef APP_BUTTON_CONFIG_LOG_ENABLED
    #define APP_BUTTON_CONFIG_LOG_ENABLED 0
    #endif
    // <o> APP_BUTTON_CONFIG_LOG_LEVEL - Default Severity level

    // <0=> Off
    // <1=> Error
    // <2=> Warning
    // <3=> Info
    // <4=> Debug

    #ifndef APP_BUTTON_CONFIG_LOG_LEVEL
    #define APP_BUTTON_CONFIG_LOG_LEVEL 3
    #endif

    // <o> APP_BUTTON_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_BUTTON_CONFIG_INITIAL_LOG_LEVEL
    #define APP_BUTTON_CONFIG_INITIAL_LOG_LEVEL 3
    #endif

    // <o> APP_BUTTON_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_BUTTON_CONFIG_INFO_COLOR
    #define APP_BUTTON_CONFIG_INFO_COLOR 0
    #endif

    // <o> APP_BUTTON_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_BUTTON_CONFIG_DEBUG_COLOR
    #define APP_BUTTON_CONFIG_DEBUG_COLOR 0
    #endif

    // </e>

    // <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_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> 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_BLOCK_DEV_EMPTY_CONFIG_LOG_ENABLED - Enables logging in the module.
    //==========================================================
    #ifndef NRF_BLOCK_DEV_EMPTY_CONFIG_LOG_ENABLED
    #define NRF_BLOCK_DEV_EMPTY_CONFIG_LOG_ENABLED 0
    #endif
    // <o> NRF_BLOCK_DEV_EMPTY_CONFIG_LOG_LEVEL - Default Severity level

    // <0=> Off
    // <1=> Error
    // <2=> Warning
    // <3=> Info
    // <4=> Debug

    #ifndef NRF_BLOCK_DEV_EMPTY_CONFIG_LOG_LEVEL
    #define NRF_BLOCK_DEV_EMPTY_CONFIG_LOG_LEVEL 3
    #endif

    // <o> NRF_BLOCK_DEV_EMPTY_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_BLOCK_DEV_EMPTY_CONFIG_LOG_INIT_FILTER_LEVEL
    #define NRF_BLOCK_DEV_EMPTY_CONFIG_LOG_INIT_FILTER_LEVEL 3
    #endif

    // <o> NRF_BLOCK_DEV_EMPTY_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_BLOCK_DEV_EMPTY_CONFIG_INFO_COLOR
    #define NRF_BLOCK_DEV_EMPTY_CONFIG_INFO_COLOR 0
    #endif

    // <o> NRF_BLOCK_DEV_EMPTY_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_BLOCK_DEV_EMPTY_CONFIG_DEBUG_COLOR
    #define NRF_BLOCK_DEV_EMPTY_CONFIG_DEBUG_COLOR 0
    #endif

    // </e>

    // <e> NRF_BLOCK_DEV_QSPI_CONFIG_LOG_ENABLED - Enables logging in the module.
    //==========================================================
    #ifndef NRF_BLOCK_DEV_QSPI_CONFIG_LOG_ENABLED
    #define NRF_BLOCK_DEV_QSPI_CONFIG_LOG_ENABLED 0
    #endif
    // <o> NRF_BLOCK_DEV_QSPI_CONFIG_LOG_LEVEL - Default Severity level

    // <0=> Off
    // <1=> Error
    // <2=> Warning
    // <3=> Info
    // <4=> Debug

    #ifndef NRF_BLOCK_DEV_QSPI_CONFIG_LOG_LEVEL
    #define NRF_BLOCK_DEV_QSPI_CONFIG_LOG_LEVEL 3
    #endif

    // <o> NRF_BLOCK_DEV_QSPI_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_BLOCK_DEV_QSPI_CONFIG_LOG_INIT_FILTER_LEVEL
    #define NRF_BLOCK_DEV_QSPI_CONFIG_LOG_INIT_FILTER_LEVEL 3
    #endif

    // <o> NRF_BLOCK_DEV_QSPI_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_BLOCK_DEV_QSPI_CONFIG_INFO_COLOR
    #define NRF_BLOCK_DEV_QSPI_CONFIG_INFO_COLOR 0
    #endif

    // <o> NRF_BLOCK_DEV_QSPI_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_BLOCK_DEV_QSPI_CONFIG_DEBUG_COLOR
    #define NRF_BLOCK_DEV_QSPI_CONFIG_DEBUG_COLOR 0
    #endif

    // </e>

    // <e> NRF_BLOCK_DEV_RAM_CONFIG_LOG_ENABLED - Enables logging in the module.
    //==========================================================
    #ifndef NRF_BLOCK_DEV_RAM_CONFIG_LOG_ENABLED
    #define NRF_BLOCK_DEV_RAM_CONFIG_LOG_ENABLED 0
    #endif
    // <o> NRF_BLOCK_DEV_RAM_CONFIG_LOG_LEVEL - Default Severity level

    // <0=> Off
    // <1=> Error
    // <2=> Warning
    // <3=> Info
    // <4=> Debug

    #ifndef NRF_BLOCK_DEV_RAM_CONFIG_LOG_LEVEL
    #define NRF_BLOCK_DEV_RAM_CONFIG_LOG_LEVEL 3
    #endif

    // <o> NRF_BLOCK_DEV_RAM_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_BLOCK_DEV_RAM_CONFIG_LOG_INIT_FILTER_LEVEL
    #define NRF_BLOCK_DEV_RAM_CONFIG_LOG_INIT_FILTER_LEVEL 3
    #endif

    // <o> NRF_BLOCK_DEV_RAM_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_BLOCK_DEV_RAM_CONFIG_INFO_COLOR
    #define NRF_BLOCK_DEV_RAM_CONFIG_INFO_COLOR 0
    #endif

    // <o> NRF_BLOCK_DEV_RAM_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_BLOCK_DEV_RAM_CONFIG_DEBUG_COLOR
    #define NRF_BLOCK_DEV_RAM_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>

    // <e> PM_LOG_ENABLED - Enable logging in Peer Manager and its submodules.
    //==========================================================
    #ifndef PM_LOG_ENABLED
    #define PM_LOG_ENABLED 1
    #endif
    // <o> PM_LOG_LEVEL - Default Severity level

    // <0=> Off
    // <1=> Error
    // <2=> Warning
    // <3=> Info
    // <4=> Debug

    #ifndef PM_LOG_LEVEL
    #define PM_LOG_LEVEL 3
    #endif

    // <o> PM_LOG_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 PM_LOG_INFO_COLOR
    #define PM_LOG_INFO_COLOR 0
    #endif

    // <o> PM_LOG_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 PM_LOG_DEBUG_COLOR
    #define PM_LOG_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>
    //==========================================================

    // </e>

    // <q> NRF_LOG_STR_FORMATTER_TIMESTAMP_FORMAT_ENABLED - nrf_log_str_formatter - Log string formatter

    #ifndef NRF_LOG_STR_FORMATTER_TIMESTAMP_FORMAT_ENABLED
    #define NRF_LOG_STR_FORMATTER_TIMESTAMP_FORMAT_ENABLED 1
    #endif

    // </h>
    //==========================================================

    // <<< end of configuration section >>>
    #endif //SDK_CONFIG_H

  • Have you tried with a different pin for MISO? I see you have set it to 9 now, which by default is one of the pins used for the NFC antenna interface. To use this pin as GPIO, you need to set the preprocessor symbol CONFIG_NFCT_PINS_AS_GPIOS.

    Also, I see that you have set the rx_length to 4, while tx_length is set to 3. The RX buffer will be filled while the bytes in the TX buffer is clocked out. This means that you will only receive a single byte after the TX transfer is completed. Typically, SPI slave devices will only give a correct response after the command is successfully written. If you want to receive 4 bytes after the 3 byte TX is done, you need to set the rx_length to 7, and ignore the first 3 bytes in the buffer.

  • Oh really !!! - in the electrical sheet of the 52840 dongle it seems that pin 0.09 is free to use - i will check that on Monday !

    Yes i need to read 1 byte of data only - it's a "old" 8bit eeprom  ( 25LC640 )

    i have tried several different numbers of data, just to see the differencies on the oscilloscope ...

    Thank you very much !!!

     

  • Yes, the pin is not connected to other peripherals on the dongle, but the firmware still needs to configure the pin for use as GPIO and not NFCT interface by setting the mentioned preprocessor symbol.

Related