Skip to content

generate schematic for kicad9 (ref #188)#270

Closed
cyberhuman wants to merge 1 commit intodevbisme:developmentfrom
cyberhuman:gen-schematics
Closed

generate schematic for kicad9 (ref #188)#270
cyberhuman wants to merge 1 commit intodevbisme:developmentfrom
cyberhuman:gen-schematics

Conversation

@cyberhuman
Copy link
Copy Markdown

Mostly vibe-coded using Claude Code.

Works:

  • sheet hierarchy
  • part properties & fields

doesn't work:

  • part uuids in subsheets don't match paths in netlist

out of scope:

  • part arrangement and connections

@cyberhuman cyberhuman changed the title generate schematic for kicad9 generate schematic for kicad9 (ref #188) Oct 4, 2025
lachlanfysh pushed a commit to lachlanfysh/skidl that referenced this pull request Feb 17, 2026
Merges work from three separate branches into a single unified
implementation using SKiDL's existing placement/routing infrastructure:

- New shared module: schematics/sexp_schematic.py
  Recursive hierarchy walker (following kicad5 node_to_eeschema pattern),
  coordinate system correction (Y-flip), deterministic UUIDs, lib_symbol
  extraction from draw_cmds, wire/junction/net-label generation, custom
  field export, and hierarchical sheet references.

- kicad6/kicad8 gen_schematic.py: thin wrappers (~227 lines each)
  preprocess_circuit (with deg_to_orient pin normalization) -> SchNode ->
  place -> route -> write_top_schematic. Only difference is version number.

- kicad9 gen_schematic.py: re-exports from kicad8 (identical format).

- bboxes.py (kicad6/8/9): replaced broken 249-line versions with working
  pin-based bbox calculation (~101 lines each).

- inject_labels.py: retained as standalone CLI post-processor utility.

Sources: upstream/sexp_schematics (devbisme), feature/kicad8-gen-schematic
(PR devbisme#281), feature/inject-net-labels (PR devbisme#280). Credit: cyberhuman (PR devbisme#270).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@lachlanfysh
Copy link
Copy Markdown

Hey @cyberhuman — just wanted to say thanks for your work on this. Your initial KiCad 9 schematic generation code was the foundation that PR #281 and now #282 built on. You're credited in the new shared module and the PR description. Cheers!

@cyberhuman cyberhuman closed this Feb 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants