Report Generator¶
The Siglent Report Generator is a powerful standalone application for creating professional test reports from oscilloscope waveform data. Generate beautiful PDF and Markdown reports with AI-powered insights, all running completely offline.

Key Features¶
📊 Professional Reports¶
- PDF Reports - Publication-ready PDFs with company branding, logos, and custom headers/footers
- Markdown Reports - Version-control friendly documentation with embedded plots
- Multiple Sections - Organize your reports with customizable sections
- Automatic Plots - Beautiful waveform graphs, FFT analysis, and measurement tables
🔬 Data Import¶
- Multi-Format Support - Import NPZ, CSV, MATLAB (.mat), and HDF5 files
- Batch Import - Load multiple waveform files at once
- Image Support - Add screenshots, setup photos, and diagrams
- Live Capture - Ready for future real-time oscilloscope integration
🤖 AI-Powered Analysis¶
- Executive Summaries - Auto-generate professional report summaries
- Signal Analysis - AI analyzes waveform quality and identifies issues
- Pass/Fail Interpretation - Explains why tests failed and suggests solutions
- Interactive Chat - Ask questions about your test data in natural language
- 100% Private - Uses local LLMs (Ollama/LM Studio) - no cloud, no data sharing
✅ Pass/Fail Testing¶
- Measurement Criteria - Define acceptable ranges for all measurements
- Multiple Comparison Types - Range, min/max only, equals, not-equals
- Template System - Save and reuse test procedures
- Visual Indicators - Color-coded pass/fail status in reports
Quick Start¶
Installation¶
Install the Report Generator with all required dependencies:
Or install everything:
Launch the Application¶
# Using the installed command
siglent-report-generator
# Or using Python module
python -m scpi_control.report_generator.app
Your First Report¶
- Import Data - Click "Import Waveforms..." and select saved waveform files
- Add Metadata - Fill in technician name, test date, and equipment details
- Generate - Click "Generate PDF Report" or "Generate Markdown Report"
- Done! - Your professional report is ready
Documentation Sections¶
Getting Started¶
- Installation & Setup - Install and configure the Report Generator
- Creating Your First Report - Step-by-step tutorial
- GUI Overview - Tour of the interface
AI Features¶
- LLM Setup - Configure Ollama or LM Studio for AI features
- Using AI Analysis - Generate summaries and insights
- Chat Assistant - Ask questions about your data
Advanced Usage¶
- Template System - Save and reuse report configurations
- Pass/Fail Criteria - Define test criteria
- Programmatic API - Use Python API for automation
- Building Executables - Create standalone apps
Example Use Cases¶
Quality Assurance¶
Generate automated test reports for production testing with pass/fail criteria and audit trails.
# Automated QA report generation
report = create_qa_report(waveforms, criteria_set)
if not report.calculate_overall_result() == "PASS":
send_alert(report)
Research & Development¶
Create publication-ready figures and comprehensive analysis reports.
# Research report with AI insights
report = create_research_report(experiment_data)
add_ai_analysis(report, llm_client)
export_pdf(report, "research_findings.pdf")
Field Service¶
Generate quick reports for customers on-site, completely offline.
# On-site service report
report = create_service_report(measurements)
add_technician_notes(report, notes)
export_pdf(report, f"service_{customer_id}.pdf")
System Requirements¶
Minimum:
- Python 3.8 or later
- 4 GB RAM
- 500 MB disk space
Recommended:
- Python 3.10 or later
- 8 GB RAM (16 GB for AI features)
- 2 GB disk space
For AI features:
- 8 GB RAM minimum (16 GB recommended)
- Multi-core CPU (GPU optional but helpful)
- Ollama or LM Studio installed
Need Help?¶
- Getting Started - See the Getting Started Guide
- AI Setup - See the LLM Setup Tutorial
- Templates - See the Template Guide
- API - See the API Reference
- Issues - Report bugs on GitHub Issues
What's Next?¶
- Get Started → - Install and create your first report
- Setup AI → - Enable AI-powered features
- Learn Templates → - Save time with reusable templates