Skip to main content

ESP Viewer Framework

A generic, profile-driven debugging and visualization framework for serial-based devices.

PyPI version License: Apache 2.0

🚀 Overview

ESP Viewer is a modular tool designed to help developers visualize real-time data and control devices without writing custom GUI code. It bridges the gap between raw firmware development and sophisticated desktop monitoring.

Why ESP Viewer?

  • Zero-Code GUI: Define your interface in JSON. Rendering is handled automatically by either the Desktop or Web UI parsers.
  • Dual UI Paradigms: Run natively as a PySide6 Desktop App, or launch the built-in Vue 3 Web UI (--web flag) for browser-based monitoring.
  • High Performance: Optimized Qt/pyqtgraph backend for desktop, and hardware-accelerated Canvas for the browser.
  • Flexible Protocols: Supports JSON-RPC, simple string templates, and custom CSV/Regex streams.
  • Hardware-Aware: Specialized perspectives for deep ESP32 hardware inspection and firmware management.

✨ Core Features

  • Real-time Visualization: Plot multiple channels, markers, and events with high-frequency updates.
  • Chip Info Diagnostics: Deep inspection of ESP32 hardware including Model, Revision, Flash Identity, ADC Calibration, and eFuse dumps.
  • Firmware Management: Integrated esptool.py support for subprocess flashing and dynamic firmware binary downloads.
  • Security Audit: Real-time monitoring of Flash Encryption and Secure Boot status.
  • Dynamic Controls: Auto-generate sliders, combo boxes, and buttons from JSON profiles.
  • Simulation Support: Advanced Mock devices with persistent hardware data simulation (mock_chip_info.json).
  • Data Logging: Record raw IO or parsed streams to CSV/Log files.

📂 Directory Structure

  • esp_viewer/core/: Backend engine, protocol handling, and device drivers.
  • esp_viewer/ui/: PySide6-based Desktop UI and dynamic widget generation.
  • esp_viewer/web/: FastAPI-powered Web UI Alternative (Vue 3 + Vite).
  • assets/profiles/: Example configuration profiles for various use cases.
  • core/mock_chip_info.json: Persistent mock data for offline development.
  • docs/: Detailed technical specifications and Architecture.

🛠 Getting Started

Installation

# Clone the repository
git clone https://github.com/espressif/esp_viewer.git
cd esp_viewer

# Install in editable mode
pip install -e .

Usage

Desktop Launcher (PySide6):

python3 -m esp_viewer

Web UI Dashboard (Vue 3):

python3 -m esp_viewer --web --profile assets/examples/multi_plot_demo.json
# Access at http://localhost:8080

📖 Documentation

Release files for esp-viewer 0.5.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for esp-viewer 0.5.5
File Size Uploaded
esp_viewer-0.5.5.tar.gz 4.4 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for esp-viewer 0.5.5
File Interpreter ABI Platform
esp_viewer-0.5.5-py3-none-any.whl Python 3 none any Details

Total release size: 8.9 MB

Release files / esp_viewer-0.5.5.tar.gz

Download URL esp_viewer-0.5.5.tar.gz
Size 4.4 MB
Tags Source
SHA-256 checksum
How to use checksums
da2e25303bcf540454fe9707a507fcf025d1fd0cf0c297ebc4bb5162fa3509b3
BLAKE2b-256 checksum
How to use checksums
2164318e7db658d2f3083ab80be6fa941b577e4d8ed026ed3d0fa480f2d2e9ce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release files / esp_viewer-0.5.5-py3-none-any.whl

Download URL esp_viewer-0.5.5-py3-none-any.whl
Size 4.5 MB
Tags Python 3
SHA-256 checksum
How to use checksums
cb86ed2dcafa0d5d603151e68f12f494159164b378b47211119895382edd8e51
BLAKE2b-256 checksum
How to use checksums
817663df2bfafb18b1d3f08928640eebdb3ef0f56d0313135f643b2d288fe2ce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

0.5.5 This release

2 release files

0.5.4

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page