BKPT LabsDOCS/BKPT DEBUG/LIVE WATCH BKPT DEBUG · VS CODE
BKPT DEBUG · USER GUIDE

Live watch

The Symbols tile works on any firmware, no recorder library, no code change. Pick variables from your ELF and each one shows its live value in the row or draws as a graph, while the target runs and at every step.

Two globals watched during a session: their live values in the Symbols tile and their graphs in the Traces tile, updating while the target runs.
TWO GLOBALS WATCHED DURING A SESSION: THEIR LIVE VALUES IN THE SYMBOLS TILE AND THEIR GRAPHS IN THE TRACES TILE, UPDATING WHILE THE TARGET RUNS

Needs: the ELF. A session for live values; without one, the same watch set records into a capture (see Recording a trace).

Picking symbols

Type in the search box to filter the ELF's data symbols; + on a row activates it as a watch row. Each row has a type dropdown (the width and signedness the bytes are read as) and two switches:

  • table: the live value in the row;
  • graph: the value streams into the Traces tile as a channel. The track follows the live edge; a zoom or drag parks it on history and a live chip appears to bring it back, and fit Y refits the value axis whenever the window looks wrong.

The watch set is kept per workspace.

While a session runs

The rows update while the target runs and after every step, read over the probe's live memory channel at about 30 updates per second; graphs freeze at a halt and resume on continue, so a stepped section does not draw as a flat line. Values are read whole (one 32-bit read for a 32-bit variable), so a value the firmware writes atomically is read atomically.

Hardware data watch

Where the Target scan found DWT comparators, a row's acq dropdown offers one slot per comparator (dwt:1..dwt:N, each usable by one row). On a session running on-chip trace over SWO, the chip then emits the value on every write with no probe traffic, and the values land on the row and its graph exactly like polled samples; the Hardware Trace tile lists every slot with the variable it traces. The same slot polls when the session cannot carry it. A slot can be armed while the target runs; it takes effect at the next halt.

Tips

  • Only whole symbols can be watched; to follow one member of a struct, give it a global of its own in the firmware.
  • A watch on a symbol the flashed firmware does not have is reported in the Output channel and skipped; the session goes on.