explaingit

gusmanb/logicanalyzer

4,757PythonAudience · developerComplexity · 4/5Setup · hard

TLDR

An open-source 24-channel logic analyzer you can build yourself using a Raspberry Pi Pico. Includes PCB design files, firmware, a desktop analysis app, and Sigrok protocol decoder support.

Mindmap

mindmap
  root((LogicAnalyzer))
    Hardware
      Raspberry Pi Pico
      PCB design files
      24 channels
    Software
      Desktop analysis app
      Terminal capture tool
      Sigrok decoders
    Features
      100M samples per sec
      Burst mode
      Voltage reference switch
    Use Cases
      Debug digital signals
      Protocol decoding
      Embedded firmware testing
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Build a 24-channel logic analyzer by ordering the PCB from the provided Gerber files and pairing it with a Raspberry Pi Pico.

USE CASE 2

Capture and decode digital signals from a circuit board using Sigrok protocol decoders in the desktop app.

USE CASE 3

Use the terminal capture tool with a settings file to automate signal capture sessions without a GUI.

Tech stack

PythonCRaspberry Pi PicoSigrok

Getting it running

Difficulty · hard Time to first run · 1day+

Requires ordering or assembling the PCB hardware and flashing firmware to a Raspberry Pi Pico before any software can be used.

In plain English

LogicAnalyzer is a hardware and software project that lets you build your own 24-channel logic analyzer. A logic analyzer is a piece of test equipment used by electronics engineers and hobbyists to capture and inspect digital signals on a circuit board. It records the on/off state of multiple signal lines over time, which helps with debugging communication between chips, verifying timing, and tracing bugs in embedded firmware. The hardware is built around the Raspberry Pi Pico or Pico 2 microcontroller board. The project provides PCB design files, parts lists, and Gerber files that you can send to a board manufacturer to produce the physical device. Pre-assembled boards can also be ordered directly from the project creator or through PCBWay. The latest version, 6.0, redesigned the board to use smaller surface-mount components and added a voltage reference switch that lets you measure at 3.3V, 5V, or an external reference level. The software side includes a desktop analysis application and a terminal-based capture tool. The analysis application can decode captured data using Sigrok protocol decoders, a widely used open-source collection of decoders for common digital communication standards. The terminal tool lets you configure a capture session using a settings file rather than a long command line. The firmware supports sampling at up to 100 million samples per second in normal mode, with a higher-speed burst mode available in recent releases. This is an individual open-source project that attracted enough interest for the creator to start taking orders for completed boards. The README is written as a development log with release notes and progress updates throughout rather than as a clean getting-started guide. The full README is longer than what was shown.

Copy-paste prompts

Prompt 1
Using the LogicAnalyzer terminal tool, write a settings file to capture 8 channels at 50MHz for 1 second and save the output for Sigrok analysis.
Prompt 2
I have a LogicAnalyzer board connected via Raspberry Pi Pico. Walk me through installing the firmware and connecting the desktop analysis app for the first time.
Prompt 3
Using the LogicAnalyzer desktop app with Sigrok decoders, how do I set up decoding for an I2C signal captured on channels 1 and 2?
Prompt 4
What are the Gerber files in the LogicAnalyzer repo and how do I order a PCB from a manufacturer like PCBWay using them?
Open on GitHub → Explain another repo

← gusmanb on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.