The editor

The logic analyzer tab

Capture the digital edges on four probes, trigger on an edge or a pattern, decode UART, I2C, SPI, 1-Wire and WS2812, and export the capture.

The logic analyzer part on the canvas is the instrument: four probes, D0 to D3, and a ground clip. Its face shows the newest few milliseconds. The Logic tab is the bench analyzer behind it, full size, with a trigger, protocol decoders and files you can open in PulseView, GTKWave or a spreadsheet. The part itself, its face and its properties are in the logic analyzer.

Capture a signal

  1. Add a logic analyzer from the parts panel and clip D0 to D3 to the nets you want to watch. Wire its ground clip to the circuit's ground.
  2. Press Run.
  3. Press Logic in the bar above the serial monitor. On a phone it is under More in the bottom sheet.
  4. Press Start. With no trigger set, the capture starts at once. Press Stop to end it.

With more than one analyzer in the circuit, a list at the top picks which one the tab reads.

Channels

One row per probe: a box to show or hide the trace, its color, a name of your own (SCL reads better than D0), and the net it is wired to, or not connected. The names carry through to the trigger, the decoders and the exported files.

Trigger

Trigger chooses when a capture starts:

  • None (start now): as soon as you press Start.
  • Rising edge, Falling edge or Either edge on the channel you pick under On.
  • Pattern: each channel set to X (any), 0 or 1, and the capture starts when all four match.

Before, ms keeps that much from before the trigger, and After, ms how much to capture after it. Mode is Repeat, which arms again as soon as a capture ends, or Single, which stops after one. Edge limit fixes the memory when the capture is armed: 64 k, 256 k or 1 M edges. It never grows however long the circuit runs, and a capture that hits it says it was cut short.

The status line under the screen says what the analyzer is doing: waiting for the trigger, capturing, or stopped, with how much time and how many edges the capture holds.

Decoders

Add a decoder offers UART, I2C, SPI, 1-Wire and WS2812 (NeoPixel). Each one is drawn as rows of labels under the traces and listed in a Decoded table of time, row and value.

Decoder You set
UART RX and TX channels, Auto baud or a Baud, Inverted, a Spike filter
I2C SCL and SDA, a Spike filter
SPI SCK, MOSI, MISO, CS, the Mode (0 to 3), bit Order, Word bits, CS active high
1-Wire the Line
WS2812 the Data in channel and its timing

Remove takes a decoder off. The table shows the first rows of a long capture; the Decoded (CSV) file has them all.

Reading the screen

Wheel or pinch to zoom and drag to pan, or use the -, + and Fit buttons. From the keyboard, with the screen focused:

Key Does
Arrow keys pan
+ and - zoom
Home show the whole capture
T go to the trigger
[ and ] step the cursor from edge to edge
, and . step through the decoded rows

The screen is drawn a pixel column at a time, so a capture of a million edges costs no more to look at than one of a hundred. A column with several edges in it shows as a block of activity until you zoom in.

Export

Four buttons take the capture out:

  • VCD, for GTKWave and most waveform viewers;
  • sigrok (.sr), a session for PulseView;
  • Edges (CSV), one row per change;
  • Decoded (CSV), every decoded row.

The same files are in the editor's Export menu while the tab holds a capture.

What is saved

Nothing in this tab is saved with the circuit: a trigger is how you look, not part of what you built. Your setup for each analyzer is remembered in this browser for the next visit. The window and the decode setting on the part's face are properties, and those are saved with the circuit.

If it does not work

  • No logic analyzer in this circuit. The tab says so until one is on the canvas.
  • Start is grayed out. There is no analyzer in the circuit to read.
  • The capture never starts. The trigger has not happened. Check the channel under On, or set the trigger to None (start now).
  • A channel is drawn down the middle. Its probe is on a net nothing drives, or on nothing at all.
  • A decoder shows nothing. Check that its channels match the probes, and for UART that the baud rate is right, or tick Auto baud.