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

RTT overflow??

I've been instrumenting my Nordic app with RTT logging, which has been working great up until now. I use the deferred mode and use nrf_log_push() to queue all dynamic strings. These dynamic strings usually contain strings of hex numbers (e.g. "01 45 fe 23" etc.). Again everything has been working great until now.

But now I need to test with a much larger amount of data being delivered during a connection interval, and I get the crash shown in the screen shot. I've increased SEGGER_RTT_CONFIG_BUFFER_SIZE_UP to 1024 and NRF_LOG_DEFERRED_BUFSIZE to 1024 in sdk_config.h and it doesn't seem to help. These should be large enough to handle the RTT output occurring during one connection interval.

I don't have any idea how to debug the error shown in the attached image. Can you help?

Parents Reply
  • Sorry for the delay. I was working on another deadline. I can't find any real documentation on NRF_LOG_HEXDUMP_INFO. What does the output look like? If I want out like "Tx out: 0f 04 34 ..." do I do one NRF_LOG_INFO for "Tx out: " and follow it with a call to NRF_LOG_INFO? Does NRF_LOG_HEXDUMP_INFO work well with deferred processing?

    Also, I've been wondering whether I even need to used deferred log processing. My entire app runs at interrupt low priority, meaning that any important SoftDevice activity will preempt it. If I weren't doing deferred processing I wouldn't need to use NRF_LOG_PUSH

Children
Related