ppauto_layout - print a real schematic’s own breadboard placement, as plain text
ppauto_layout
[--kicad-cli CMD] [--debug]
[--quiet] SCHEMATIC
ppauto_layout {--help|--version}
ppauto_layout reads a real KiCad schematic (SCHEMATIC), runs it through this project’s own breadboard placement engine (classify() then layout()), and prints exactly where every real anchor and passive landed and why — a plain-text diagnostic dump of the placement decision itself, not a rendered diagram. For an actual breadboard-style SVG of the same placement, see pprender(1) instead; this program is the tool for inspecting the underlying decision when a rendered diagram alone doesn’t explain it (which column a given passive shares, which already-placed member it attached to, whether it needed relocating for room — see FutureResearch.org ’s own row-assignment item history — or, honestly, why it ended up unplaced at all).
--kicad-cli CMD
The kicad-cli(1) command to invoke for netlist export. Defaults to $KICAD_CLI if set, otherwise plain kicad-cli on $PATH, the same convention this project’s own other real command-line tools already use.
--max-components N
Override this project’s own real, default component-count limit ( breadboard_config.py’s own DEFAULT_MAX_COMPONENTS constant, currently 150) — see that constant’s own docstring for the full, real rationale. Raising it above the real, existing default prints a real, direct warning to standard error, but still proceeds.
--version
Show this project’s own current version (read from VERSION) and exit.
--debug
Also print every anchor’s own real pin-to-column mapping, one line per pin, not just its own starting column.
--quiet
Print only the placement lines themselves (one per anchor and one per passive) and the final unplaced summary; suppress the leading anchor/passive/rail counts and the section labels.
|
0 |
The schematic was loaded and its placement printed successfully (this is independent of whether every component actually got placed — an honestly-reported UNPLACED component is not, by itself, a program failure; see FutureResearch.org ’s own row-assignment and far-leg items for real, known cases where this can happen). | ||
|
1 |
The schematic could not be loaded (missing file, or a kicad-cli(1) failure), or the circuit’s own real component count exceeds whichever --max-components limit is in effect (see above). | ||
|
2 |
Invalid command-line usage. |
Print the full placement decision for a real schematic:
ppauto_layout power.kicad_sch
Just the placement lines, with every anchor pin’s own column shown:
ppauto_layout --quiet --debug power.kicad_sch
pprender(1), ppnetlist(1), FutureResearch.org in packpay’s own documentation set (see Index.org).
Péter Felecan <pfelecan@gmail.com>, with development assistance from Claude (Anthropic).
Copyright © 2026 Péter Felecan. License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.