Convert LTspice SPICE netlists to WireViz wiring diagrams
Project description
spice2wireviz
Convert LTspice SPICE netlists to WireViz wiring diagrams.
What it does
spice2wireviz reads SPICE netlist files (.net, .cir, .sp) and LTspice schematics (.asc) and generates WireViz YAML that documents the physical wiring: connectors, test points, and inter-module cables.
Two operating modes:
- Single module -- External interface of one subcircuit (its connectors, test points, port interface)
- Inter-module -- How multiple subcircuits/boards connect to each other
Install
uv tool install spice2wireviz
# or
pip install spice2wireviz
For .asc file metadata extraction (optional):
pip install spice2wireviz[asc]
Usage
From netlist files
# Inter-module wiring (auto-detected from top-level X instances)
spice2wireviz top_level.net -o wiring.yml --render
# Single module external interface
spice2wireviz design.net -s amplifier_board -o amp.yml
# Only connectors and test points, no ground
spice2wireviz design.net --include-prefixes J,TP --no-ground
# Inspect before converting
spice2wireviz design.net --list-subcircuits
spice2wireviz design.net --list-components
spice2wireviz design.net --dry-run
From .asc schematics
LTspice .asc files are supported with tiered netlist resolution:
- Companion netlist (automatic) -- If a
.net,.cir, or.spfile exists alongside the.asc(same basename), it's used for full connectivity. LTspice generates these automatically when you run a simulation. - LTspice generation (opt-in) -- Pass
--generate-netlistto invoke LTspice and produce a.netfile. - Metadata only -- Without a netlist, only component refs/values are available. Diagram generation is blocked, but
--list-componentsstill works.
# .asc with companion .net in the same directory -- works like .net input
spice2wireviz schematic.asc -s amplifier_board -o amp.yml
# No companion .net -- invoke LTspice to generate one
spice2wireviz schematic.asc --generate-netlist -o wiring.yml
# Inspect component metadata (no .net required)
spice2wireviz schematic.asc --list-components
Filtering
Cherry-pick what appears in the diagram:
--include-prefixes J,TP # Only these component types
--exclude-refs X3,J_DEBUG # Hide specific references
--include-nets "SIG_*" # Glob patterns for net names
--no-ground # Hide GND connections
--no-power # Hide VCC/VDD connections
Development
uv sync --extra dev --extra asc
uv run pytest
uv run ruff check src/ tests/
Repository
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file spice2wireviz-2026.2.14.tar.gz.
File metadata
- Download URL: spice2wireviz-2026.2.14.tar.gz
- Upload date:
- Size: 125.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"EndeavourOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
df97390ae855ff8ea24b7e18e94b344f69df6b71e90792798dae8c018cc92c97
|
|
| MD5 |
02edcec27e6c8e2566c5d5042c36b120
|
|
| BLAKE2b-256 |
517d9151f42c7f823b13ad6096c91f44338cf48398477c4080215c036c6a8a10
|
File details
Details for the file spice2wireviz-2026.2.14-py3-none-any.whl.
File metadata
- Download URL: spice2wireviz-2026.2.14-py3-none-any.whl
- Upload date:
- Size: 31.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"EndeavourOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1f9558adcdc81ac6d47a9de4259fb7159a578684d888f84db8a8fee0df19d379
|
|
| MD5 |
469396d7ad1ee1b9d39cc1f28ed30d3f
|
|
| BLAKE2b-256 |
328eab7e76683b1bf545a807dfb338c2a056c79fe3069369fc9bddbfcde10ad6
|