Skip to the content
2 layers48 × 53.3 mmESP32 LogicAnalyzer, the printed circuit board in 3D

Low-cost logic analyzer using ESP32 for fast digital signal debugging

Size
48 × 53.3 mm
Copper layers
2
Thickness
1.6 mm
Parts
12
Nets
48
Pads
105
Tracks, vias
184, 17
Pours
1
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
30 Jan 2025
Updated
10 Jul 2026

Overview

ESP32 LogicAnalyzer is an open-source printed circuit board by lmcapacho, from the lmcapacho/ESP32_LogicAnalyzer repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 48 × 53.3 mm with 12 parts on 48 nets, routed with 184 tracks and 17 vias.

It is built around the SN74LVC245APW. Its parts include 4 resistors, 4 connectors, 2 capacitors and 2 ICs. It belongs with the sensors and measurement boards and the ESP32 boards of this library.

Main components

1

README

README.md

ESP32 LogicAnalyzer

Status License

A SUMP compatible 16Bit Logic Analyzer for ESP32 MCUs.

PulseView

Specifications

  • Uses ESP32 I2S DMA and can capture speeds up to 20 MHz.
  • Supports 8-bit and 16-bit operations.
  • Maximum 128k samples (even in 8-bit capturing mode).
  • RLE compression supported.
  • Default OLS port is UART0 with a default baud rate of 912600.
  • You can configure UART ports and high-speed baud rates for OLS communication by editing the definitions in LogicAnalyzerConfig.h.

Supported Environments

EnvironmentStatusDetails
PlatformIO✅Tested with platform-espressif32@6.11.0
Arduino IDE✅Tested with Arduino-ESP32 core 3.3.7

Under Development

  • WROOVER modules support 2M samples but only up to 2 MHz due to bandwidth limits on PSRAM access.
  • Analog input support.

Quick Start Guide

Environments

PlatformIO
  1. Install PlatformIO in VS Code.
  2. Open the project folder in PlatformIO.
  3. Build the project and flash it to your ESP32.
Arduino IDE
  1. Install the ESP32 board support via the Boards Manager (esp32 by Espressif Systems).
  2. Open the sketch in ESP32_LogicAnalyzer/ESP32_LogicAnalyzer.ino.
  3. Select the board you're using (e.g. ESP32 Dev Module).
  4. Use ESP32 Arduino core version 3.3.7.
  5. Click Upload.

Important: If you're using UART0 for OLS communication, set Core Debug Level = None in the Arduino IDE before compiling, especially for captures above 10 MHz.

PulseView

Open PulseView with:

bash
pulseview -D -d ols:conn=/dev/ttyUSB0::serialcomm=921600/8n1

Or from the GUI, connect the device and select Openbench Logic Sniffer & SUMP compatibles (ols).

PulseView

RLE can be enabled in Device configuration dialog:

RLE

For more details, see the PulseView documentation.

Connections

PinConnection
clk_inGPIO23 (connect to clk_out)
clk_outGPIO22 (connect to clk_in)
GroundConnect the target device's GND to the ESP32 GND
ChannelsCH15 - CH0 (connect your signals here)
ESP32LA Connection

⚠️ Warning: GPIO23 is used for I2S input clock and GPIO22 for LEDC output clock.
Do not use these pins for general I/O. If needed, change them in the code and rewire accordingly.

Hardware Design (KiCad)

This project includes a custom PCB designed in KiCad 9 to connect the ESP32 DevKitC V1 with logic analyzer channels and level shifters.

All hardware-related files are located in the hardware/ folder and include:

  • Complete KiCad project (.kicad_pro, .kicad_sch, .kicad_pcb)
  • BOM (BOM.xlsx) and CPL (CPL1.xlsx) for assembly
  • Gerber files (hardware/gerbers/) for PCB fabrication
  • Optional UART2 debug port
  • Level shifter ICs (SN74LVC245A) for 5V input compatibility

⚠️ The design is currently under validation. Use at your own risk until physical tests are completed.

PCB Preview

3D View of PCB

Attributions

This project is a fork of ESP32_LogicAnalyzer, created by Erdem U. Altinyurt.

This project uses code from:

License

This project is licensed under the GPL 3.0 License. See the LICENSE file for details.

Parts

12
QtyValueFootprintReferences
410KResistor_SMD:R_0603_1608MetricR1, R2, R3, R4
2100nCapacitor_SMD:C_0603_1608MetricC1, C2
2Conn_01x15Connector_PinSocket_2.54mm:PinSocket_1x15_P2.54mm_VerticalJ1, J2
2SN74LVC245APWPackage_SO:TSSOP-20_4.4x6.5mm_P0.65mmU1, U2
1CHANNELSConnector_PinHeader_2.54mm:PinHeader_2x10_P2.54mm_VerticalJ3
1DEBUGConnector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ4

Similar boards

  • 4 layers56.1 × 57.1 mmMCL86jr, the printed circuit board in 3D

    MCL86jr

    MicroCoreLabs/Projects

    Ted Fried's MicroCore Labs Projects - FPGA CPU cores and emulators for the 8088, 8086, 8051, 6502, 68000, Z80, Risc-V, and also Typewriter and EPROM Emulator projects.

    66 parts534
  • 2 layers70 × 73.1 mmNeopico hd, the printed circuit board in 3D

    Neopico hd

    fliperama86/neopico-hd

    Digital video and audio capture with HDMI output for Neo Geo MVS arcade hardware using Raspberry Pi Pico 2

    37 parts90Unlicense
  • 4 layers98.5 × 82 mmPico2lvds, the printed circuit board in 3D

    Pico2lvds

    ceteras/PicoLVDS

    Tested with B089AW01-V.0 and HSD089IFW1-A00-V1.0 on a breadboard. I'm sure it will work with other displays from old netbooks.

    43 parts7GPL-3.0
  • 4 layers219 × 108.5 mmZ80DevBoard, the printed circuit board in 3D

    Z80DevBoard

    gianluca-rainis/Z80DevBoard

    An advanced development board for the Z80 microprocessor, powered by an RP2040.

    182 parts7CERN-OHL-S-2.0
  • 4 layers358 × 40 mmLongboi, the printed circuit board in 3D

    Longboi

    KungfuPancake/longboi

    Possibly the longest controller board to control the BoxTurtle AFC

    297 parts7Apache-2.0
  • 2 layers75 × 100 mm2xpetdisk esp32, the printed circuit board in 3D

    2xpetdisk esp32

    yo5ptd/petdisk-esp32

    CBM PETDISK based on Esp32 and MicroSD

    191 parts6GPL-3.0
  • 4 layers55.2 × 24.4 mmLogic analyzer, the printed circuit board in 3D

    Logic analyzer

    BlackPancakes/RP2040-Logic-Analyzer

    An open-source, high-speed, multi-channel logic analyzer based on the popular Raspberry Pi RP2040 microcontroller. The board was designed in KiCad with a strong focus on signal integrity and miniaturization.

    54 parts3
  • 4 layers86 × 79.5 mmRP2040QuadMotorController, the printed circuit board in 3D

    RP2040QuadMotorController

    DrJonEA/RP2040QuadMotorController

    RP2040Zero and AT8236 Based Quad Motor Controller

    35 parts3MIT

Questions

How big is the ESP32 LogicAnalyzer PCB?

It measures 48 × 53.3 mm and has 2 copper layers, 1.6 mm thick.

What parts does the ESP32 LogicAnalyzer use?

12 parts, built around the SN74LVC245APW. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the ESP32 LogicAnalyzer KiCad files?

From the lmcapacho/ESP32_LogicAnalyzer repository on GitHub, at the commit this page was made from: the board is hardware/ESP32_LogicAnalyzer.kicad_pcb and its schematic hardware/ESP32_LogicAnalyzer.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the ESP32 LogicAnalyzer design in my own project?

Its repository publishes it under the GPL-3.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).