With SEGGER's SystemView you can "record data from the target system while it is running. The recorded data is analyzed and the system behavior is visualized in different views."
You'll need a SEGGER J-Link programmer in order to use this advanced functionality. You might have an external J-Link programmer you're already using, or maybe your board has a dedicated J-Link onboard as some development kits do. Another possibilty is J-Link OB firmware available for some devices like the micro:bit.
- Download SEGGER's SystemView app.
- Copy the description file from sys/sysview/SYSVIEW_Mynewt.txt to the /Description/ directory of SystemView
Setup the target
We'll assume you have an existing example we're enabling SystemView on, in this case blinky on nrf52. We can do so with the newt target amend command:
newt target amend blink_nordic syscfg=OS_SYSVIEW=1
Run the target executables
Now 'run' the newt target as you'll need an active debugger process to attach to:
$ newt run blink_nordic 0 App image succesfully generated: ~/Downloads/myproj/bin/targets/blink_nordic/app/apps/bleprph/bleprph.img Loading app image into slot 1 [~/Downloads/myproj/repos/apache-mynewt-core/hw/bsp/nrf52-thingy/nrf52-thingy_debug.sh ~/Downloads/myproj/repos/apache-mynewt-core/hw/bsp/nrf52-thingy ~/Downloads/myproj/bin/targets/blink_nordic/app/apps/bleprph/bleprph] Debugging ~/Downloads/myproj/bin/targets/blink_nordic/app/apps/bleprph/bleprph.elf GNU gdb (GNU Tools for ARM Embedded Processors) 220.127.116.1150604-cvs Copyright (C) 2014 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "--host=x86_64-apple-darwin10 --target=arm-none-eabi". Type "show configuration" for configuration details. For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>. Find the GDB manual and other documentation resources online at: <http://www.gnu.org/software/gdb/documentation/>. For help, type "help". Type "apropos word" to search for commands related to "word"... Reading symbols from ~/Downloads/myproj/bin/targets/blink_nordic/app/apps/bleprph/bleprph.elf...done. 0x000000d8 in ?? () Resetting target 0x000000dc in ?? ()
Launch the app
Launch the app and press OK in the System Information dialog box.
Select Target > Start Recording and press OK in the Configuration dialog box.
You should see the recording for your Mynewt application.