Level 3 · Tools

Using PulseView

Your analyzer captures raw voltage transitions. PulseView is what turns that into something you can actually read — set the right sample rate, decode the protocol, and get the bytes out.

Installing PulseView

PulseView is the graphical front end for the open-source sigrok project — free, cross-platform, and what we recommend for every protocol on the sniffer board. Grab it from sigrok.org/wiki/Downloads.

Install before you plug in, on Windows. The Windows installer bundles the fx2lafw driver your analyzer needs — plugging in first can leave Windows treating it as an unrecognized device. See the Logic Analyzer page for the Zadig fallback if that happens.
Screenshot coming soon
PulseView main window A first-launch screenshot, annotated, will go here.

Connecting Your Device

  1. Plug in, then open PulseView

    Your analyzer should appear in the device selector at the top of the window — typically listed as "Cypress FX2" or "sigrok FX2 based LA."

  2. Nothing showing up?

    On Windows, check Device Manager for a missing or unrecognized driver. On Linux, you likely need the udev rule described on the Logic Analyzer page. On any OS, try unplugging, closing PulseView, and reopening it after reconnecting.

Setting Up a Capture

Two settings matter before you hit Run: sample rate and duration. Get the sample rate too low and you'll miss transitions entirely or misread the signal — get it needlessly high and you'll fill your buffer with a few milliseconds of data. The rule of thumb: sample at least 10–40× faster than the signal you're capturing, so every transition gets several samples around it, not just one right on the edge.

Recommended settings per bus
ProtocolSample rateDuration
Quadrature (practice)1 MHz200 ms
UART1 MHz5 s
I²C4 MHz2 s
SPI4 MHz2 s
8-bit parallel100 kHz10 s

These fields sit at the top of the PulseView window, next to the device selector — sample rate on the left, capture length on the right. Click Run (or the red circle icon) once both are set.

Screenshot coming soon
Sample rate & duration controls Annotated toolbar screenshot coming soon.

Adding Protocol Decoders

A raw capture just shows voltage levels — a decoder is what turns that into bytes and readable annotations. After capturing, click the + button in the decode bar (or Decode → Add a protocol decoder) and search by name.

  1. Pick the decoder

    Search for UART, I²C, or SPI by name in the decoder list.

  2. Assign channels

    Each decoder asks which captured channel maps to which signal (e.g. RX, or SCL/SDA, or CLK/MOSI/MISO/CS#) — the exact assignments for each protocol are on that protocol's own page.

  3. Set protocol-specific options

    Baud rate for UART; CS# polarity and clock mode (CPOL/CPHA) for SPI. Wrong settings here usually show up as garbled or empty decoded output — if that happens, double check these before assuming your capture itself is bad.

Screenshot coming soon
Decoder channel assignment panel Screenshot of a configured decoder coming soon.

Getting Data Out

Once a decoder's running, its output appears as a labeled track under the raw waveform — hover over any decoded frame to see its value, or zoom in until individual bytes are readable directly. A few ways to get that data out of PulseView and into whatever you're using to work with it:

  • Zoom and read by hand. For a short capture, this is often the fastest option — zoom into the decoded track and transcribe values directly.
  • File → Export. PulseView can export a capture to several formats (CSV among them) for further processing outside the app.
  • Screenshot the decoded track. Sometimes the simplest reliable method, especially for a short, one-time capture — the annotation text is what actually matters, not the raw waveform under it.
The raw waveform matters less than the annotations. Once a decoder confirms your channel assignments and settings are correct, the actual values are what you're after — the voltage trace underneath is there to sanity-check the decode, not something you need to hand-read for every byte.

Next: Pick a Protocol

With PulseView talking to your analyzer, head to whichever protocol you're ready to capture: UART, I²C, SPI, or 8-bit parallel.