zephyr/samples/subsys/tracing
Gerard Marull-Paretas 93b63df762 samples, tests: convert string-based twister lists to YAML lists
Twister now supports using YAML lists for all fields that were written
as space-separated lists. Used twister_to_list.py script. Some artifacts
on string length are due to how ruamel dumps content.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2023-05-10 09:52:37 +02:00
..
boards samples: tracing: Replace prj_<board> files with overlays 2023-03-20 10:18:32 +01:00
src includes: prefer <zephyr/kernel.h> over <zephyr/zephyr.h> 2022-09-05 16:31:47 +02:00
CMakeLists.txt
prj_native_posix_ctf.conf
prj_percepio.conf sample: tracing: add a configuration for percepio 2022-11-04 10:00:48 +01:00
prj_sysview.conf
prj_uart_ctf.conf
prj_uart.conf
prj_usb_ctf.conf samples: Explicitly disable boot USB device support init at boot 2023-01-10 12:21:10 +01:00
prj_usb.conf samples: Explicitly disable boot USB device support init at boot 2023-01-10 12:21:10 +01:00
prj_user.conf
prj.conf samples: move to using CONFIG_MP_MAX_NUM_CPUS=1 2022-10-20 22:04:10 +09:00
README.rst samples: Updated README for tracing application sample 2023-03-22 11:41:56 +01:00
sample.yaml samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00

.. _tracing_sample:

Send Tracing Formatted Packet To The Host With Supported Backends
#################################################################

Overview
********

This application can be used to demonstrate the tracing feature. The tracing
formatted packet will be sent to the host with the currently supported tracing
backend under tracing generic infrastructure.

Requirements
************

Depends of the boards which you are using, choose one of .conf files for use tracing subsys.

Usage for UART Tracing Backend
******************************

Build a UART-tracing image with:

.. zephyr-app-commands::
	:zephyr-app: samples/subsys/tracing
	:board: mps2_an521
	:conf: "prj_uart.conf"
	:goals: build
	:compact:

or:

.. zephyr-app-commands::
	:zephyr-app: samples/subsys/tracing
	:board: mps2_an521
	:conf: "prj_uart_ctf.conf"
	:goals: build
	:compact:

.. note:: You may need to set "zephyr,tracing-uart" property under the chosen node in your devicetree. See :zephyr_file:`boards/mps2_an521.overlay` for an example.

After the application has run for a while, check the trace output file.

Usage for USB Tracing Backend
*****************************

Build a USB-tracing image with:

.. zephyr-app-commands::
	:zephyr-app: samples/subsys/tracing
	:board: sam_e70_xplained
	:conf: "prj_usb.conf"
	:goals: build
	:compact:

or:

.. zephyr-app-commands::
	:zephyr-app: samples/subsys/tracing
	:board: sam_e70_xplained
	:conf: "prj_usb_ctf.conf"
	:goals: build
	:compact:

After the serial console has stable output like this:

.. code-block:: console

	threadA: Hello World!
	threadB: Hello World!
	threadA: Hello World!
	threadB: Hello World!

Connect the board's USB port to the host device and
run the :zephyr_file:`trace_capture_usb.py` script on the host:

.. code-block:: console

	sudo python3 trace_capture_usb.py -v 0x2FE9 -p 0x100 -o channel0_0

The VID and PID of USB device can be configured, just adjusting it accordingly.

Usage for POSIX Tracing Backend
*******************************

Build a POSIX-tracing image with:

.. zephyr-app-commands::
	:zephyr-app: samples/subsys/tracing
	:board: native_posix
	:conf: "prj_native_posix.conf"
	:goals: build
	:compact:

or:

.. zephyr-app-commands::
	:zephyr-app: samples/subsys/tracing
	:board: native_posix
	:conf: "prj_native_posix_ctf.conf"
	:goals: build
	:compact:

After the application has run for a while, check the trace output file.