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

"SEGGER_RTT_CONFIG" problem

Hey! I was trying to modify s132 ble_beacon example to s140 for my nRF52840 DK but I couldn't build it in Segger Embeded Studio. What is the problem with "SEGGER_RTT_CONFIG"?

image description

  • Hi,

    These should be defined in sdk_config.h. Add the following lines to the end of the file:

    // <h> nRF_Segger_RTT 
    
    //==========================================================
    // <h> segger_rtt - SEGGER RTT
    
    //==========================================================
    // <o> SEGGER_RTT_CONFIG_BUFFER_SIZE_UP - Size of upstream buffer. 
    // <i> Note that either @ref NRF_LOG_BACKEND_RTT_OUTPUT_BUFFER_SIZE
    // <i> or this value is actually used. It depends on which one is bigger.
    
    #ifndef SEGGER_RTT_CONFIG_BUFFER_SIZE_UP
    #define SEGGER_RTT_CONFIG_BUFFER_SIZE_UP 64
    #endif
    
    // <o> SEGGER_RTT_CONFIG_MAX_NUM_UP_BUFFERS - Size of upstream buffer. 
    #ifndef SEGGER_RTT_CONFIG_MAX_NUM_UP_BUFFERS
    #define SEGGER_RTT_CONFIG_MAX_NUM_UP_BUFFERS 2
    #endif
    
    // <o> SEGGER_RTT_CONFIG_BUFFER_SIZE_DOWN - Size of upstream buffer. 
    #ifndef SEGGER_RTT_CONFIG_BUFFER_SIZE_DOWN
    #define SEGGER_RTT_CONFIG_BUFFER_SIZE_DOWN 16
    #endif
    
    // <o> SEGGER_RTT_CONFIG_MAX_NUM_DOWN_BUFFERS - Size of upstream buffer. 
    #ifndef SEGGER_RTT_CONFIG_MAX_NUM_DOWN_BUFFERS
    #define SEGGER_RTT_CONFIG_MAX_NUM_DOWN_BUFFERS 2
    #endif
    
    // <o> SEGGER_RTT_CONFIG_DEFAULT_MODE  - RTT behavior if the buffer is full.
     
    
    // <i> The following modes are supported:
    // <i> - SKIP  - Do not block, output nothing.
    // <i> - TRIM  - Do not block, output as much as fits.
    // <i> - BLOCK - Wait until there is space in the buffer.
    // <0=> SKIP 
    // <1=> TRIM 
    // <2=> BLOCK_IF_FIFO_FULL 
    
    #ifndef SEGGER_RTT_CONFIG_DEFAULT_MODE
    #define SEGGER_RTT_CONFIG_DEFAULT_MODE 0
    #endif
    
    // </h> 
    //==========================================================
    
    // </h> 
    //==========================================================
    

    Best regards,

    Jørgen

  • There is one more "SEGGER_RTT_CONFIG_DEFAULT_MODE" to define.

  • I updated my above answer for SDK 13. I initially posted the defines for SDK 12.2.

  • I managed to build the project and successfully download to DK but it didn't work. I suspect something wrong with softdevice. I don't know which one SES includes the project.

  • Segger Embedded Studio will not flash any softdevice with the application unless you specify in the settings that it should. You also need to make room for the softdevice in RAM and FLASH. Please see sections "Building" and "Flashing the SoftDevice with our application" in the SES tutorial blog post.

Related