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

Use of Segger SystemView with FreeRTOS, SDK 17

I'm using SDK 17 with the nRF52840-DK.

As a starting point for my application, I'm using the .../examples/ble_peripheral/ble_app_hrs_freertos project since shows the proper setup for using BLE (s140 softdevice) with FreeRTOS.

I have this working, but would now like to use Segger's SystemView to instrument/measure some things.

Their instructions and patch files don't seem to match FreeRTOS code included in SDK 17 (even though both claim to be FreeRTOS v10).   It looks like Segger might be using "standard" FreeRTOS files and the Nordic SDK v17 seems to have nrf52 specific modifications.

I did see a similar question from about 4 years ago, but both SystemView and FreeRTOS have changed since then.

Is there an "updated" example that combines the needs of BLE, FreeRTOS, and SystemView?

Thanks!

Parents
  • Is there an "updated" example that combines the needs of BLE, FreeRTOS, and SystemView?

    I thought that the segger system view plugs into the freertos trace macros. I have not tried to make it work with FreeRTOSv10. I do not think that you can get a systemview plugged into the BLE stack but it should be possible to get a view on application specific activity.

    Can you tell me what happens when you follow the instructions provided by the segger ? you do not get any activity at all?

  • Segger provides instructions that includes a patch file to modify "stock" FreeRTOS files.    Nordic provides its FreeRTOS port for nrf52 in the SDK (external/freertos), but has modified the file structure moving some code from port.c and portmacro.h to port_cmsis_systick.c and portmacro_cmsis.h and a couple other files.    This causes the patch file to not work.

    I applied the changes manually and got things to work. 

    I can provide the modified files.   It might be nice to use #ifdef's to make the changes available to others.

  • Glad to hear that you made it work. If you can provide the patch file then it will be very helpful for others trying to do the same. I can then make an internal ticket to integrate it into the sdk

Reply Children
Related