Skip to main content

ZView, a Zephyr RTOS runtime visualizer

Real-time system observability for Zephyr RTOS, delivered over SWD.

Stop guessing your stack margins and heap health. ZView provides a zero-footprint, high-fidelity visualization of your Zephyr application’s runtime, delivered over SWD with zero instrumentation.

No UART, no RTT, and no manual code changes. Just Kconfig and your probe.

This page covers the standalone pip installation. If you are using ZView inside a west workspace (the most common setup), see the main documentation instead.

Prerequisites

To properly analyze your Zephyr app, your ELF binary must be compiled with specific Kconfig options enabled:

## prj.conf
CONFIG_INIT_STACKS=y            # Required for stack watermarks
CONFIG_THREAD_MONITOR=y         # Required for thread discovery
CONFIG_THREAD_STACK_INFO=y      # Required for thread metadata

# Optional Features
CONFIG_THREAD_NAME=y            # Enables thread name display
CONFIG_THREAD_RUNTIME_STATS=y   # Enables CPU usage tracking
CONFIG_SYS_HEAP_RUNTIME_STATS=y # Enables heap runtime stats and fragmentation map

Installation

Install ZView in your Python virtual environment:

pip install zview

Or from the root of the repository:

pip install .

How to Use

# Example: nRF5340 DK via JLink
zview -e build/zephyr/zephyr.elf -r jlink -t nRF5340_xxAA

Commands

ZView is invoked through one of four commands. Bare zview ... is a shortcut for zview live ....

Command Purpose TUI
live Attach to a probe and render the TUI. Default when no command is given. yes
record Capture a live session to a .ndjson.gz recording file and exit. no
replay Render the TUI from a previously captured recording. yes
dump Emit a single polling frame and exit. no

Common arguments

Argument Used by Description
-e, --elf-file all Path to the firmware .elf file.
-r, --runner live, record, dump Debug runner: jlink, nrfutil, pyocd, or gdb.
-t, --runner-target live, record, dump MCU descriptor for the chosen runner (see below).
--period live, record, dump Polling period in seconds (default: 0.10).

Command-specific arguments

Argument Command Description
-o, --output record Recording target path (.ndjson.gz).
--duration record Recording upper bound, in seconds.
--frames record Recording upper bound, in data frames.
-i, --input replay, dump Recording source path (.ndjson.gz).
--no-pacing replay Drain the recording as fast as possible instead of honoring its wall-clock cadence.
--frame dump Which polling frame to emit (1-indexed; default: 1).
--json dump Emit the frame as JSON on stdout.
Finding the right value for -t

The -t argument is the MCU descriptor name as expected by your chosen runner. How to find it depends on the runner:

JLink (-r jlink) Use the device name from the J-Link Supported Devices list.

# Example: Nordic nRF5340 DK
zview -e build/zephyr/zephyr.elf -r jlink -t nRF5340_xxAA

nrfutil (-r nrfutil)

zview -e build/zephyr/zephyr.elf -r nrfutil -t 001057722700

pyOCD (-r pyocd) Run pyocd list --targets to see the available target names for your installed packs.

pyocd list --targets          # find your target name

# Example: STM32F401 Nucleo
zview -e build/zephyr/zephyr.elf -r pyocd -t stm32f401xe

GDB server (-r gdb) Pass the host:port of your GDB server instead of a device name.

zview -e build/zephyr/zephyr.elf -r gdb -t localhost:1234

For navigation, offline recording/replay workflows, advanced usage, and QEMU/GDB targets, refer to the main documentation.

Metadata

Release files for zview 0.21.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for zview 0.21.0
File Size Uploaded
zview-0.21.0.tar.gz 103.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for zview 0.21.0
File Interpreter ABI Platform
zview-0.21.0-py3-none-any.whl Python 3 none any Details

Total release size: 156.9 kB

Release files / zview-0.21.0.tar.gz

Download URL zview-0.21.0.tar.gz
Size 103.0 kB
Tags Source
SHA-256 checksum
How to use checksums
21ae5febb04254b4d42a7a3acf896efd0395750639c871b3fd94878fc52dc2e8
BLAKE2b-256 checksum
How to use checksums
3ebad0b1503bcb351a322e0c5d8dbdc6e05dc920a09b7b05bc752d086fa33f4f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 28, 2026.

Transparency log

Release files / zview-0.21.0-py3-none-any.whl

Download URL zview-0.21.0-py3-none-any.whl
Size 53.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
153de5664a3fc131746fd08bd8cca3144b729a84b08b872519c42184e53ad531
BLAKE2b-256 checksum
How to use checksums
02c5fd303d9b15a3966c6924b19eba0bbf43d0dc4f1ad9457384d806b602f366
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 28, 2026.

Transparency log

Release history Release notifications | RSS feed

0.22.4

2 release files

0.22.0

2 release files

This release

0.21.0 This release

2 release files

0.20.2

2 release files

0.20.1

2 release files

0.20.0

2 release files

0.19.3

2 release files

0.19.2

2 release files

0.19.1

2 release files

0.19.0

2 release files

0.18.0

2 release files

0.17.0

2 release files

0.16.0

2 release files

0.15.0

2 release files

0.14.0

2 release files

0.13.1

2 release files

0.13.0

2 release files

0.12.0

2 release files

0.11.0

2 release files

0.10.0

2 release files

0.9.0

2 release files

0.8.2

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.3

2 release files

0.7.2

2 release files

0.7.1

2 release files

0.7.0

2 release files

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.5

2 release files

0.5.4

2 release files

0.5.3

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page