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

CLI over UART Unresponsive

I developed a FreeRTOS application which uses NRF_LOG and CLI enabled.  The CLI is used to accept user input, and I used NRF_LOG for system logging.  Everything works great over RTT, however the UART only prints out the welcome message then basically freezes.  Occasionally after running for a minute it will seem to response to user input, but usually by that point the user input history has just buffered up.  I enabled logging on the CLI UART and see a ton of activity.  To the point where logs are dropped.  Its curious how this is happening, when there is no issues on RTT.

The parameter I enable for UART logging is NRF_CLI_UART_CONFIG_LOG_ENABLED 

Anyone seen this issue on SDK 15.2?

Parents
  • I think this is likely because the CLI mode doesn't like to run along side freeRTOS.  It only response to Received user input when the RX ring buffer size number of characters is received.  Once this is exceeded a second time the module ASSERTs

Reply
  • I think this is likely because the CLI mode doesn't like to run along side freeRTOS.  It only response to Received user input when the RX ring buffer size number of characters is received.  Once this is exceeded a second time the module ASSERTs

Children
  • Is the CLI module known to be incompatible running in freeRTOS?

  • CLI mode doesn't like to run along side freeRTOS
    the CLI module known to be incompatible running in freeRTOS

    Yes, CLI UART with FreeRTOS is not fully compatible, as indicated in your other case a couple of months ago(id 220382). Some issues was fixed in SDK 15.3, e.g. app_timer_start() implementation for freertos (app_timer_freertos.c) asserting when called in UART interrupt. But there could also be other issues.