Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SvgPcb layout template backend + netlister refactor #337

Merged
merged 41 commits into from
Apr 22, 2024
Merged

Conversation

ducky64
Copy link
Collaborator

@ducky64 ducky64 commented Apr 10, 2024

  • Add EXPERIMENTAL (alpha stage) layout template generator for svg-pcb, with example for SwitchMatrix.
    • Components with a defined template (extends SvgPcbTemplateBlock and defines _svgpcb_template) generates custom layout templates
    • Other components (not part of a component above or subtree) generate into footprints from the netlister
  • Add refdes netlists to test suite
  • Add barebones keyboard example
  • Netlister refactor
    • Move refdes parsing into the Backend, and how it's handled into the netlist file generator (instead of embedded in the NetlistTransform)
    • Move netlist data structures (block, net, pin) into the NetlistGenerator (instead of the file generator), clean up the data structures to use more structured types (instead of strings) where possible
    • Pins treated differently from ports, netlister only considers IR-level connections
    • Clean up and improve net naming priority (in particular prioritizing link names), this simplifies some names
  • Fix XIAO-ESP32C3 definition
  • TransformUtil.Path improvements
    • .append_* supports multiple paths
    • .starts_with prefix check w/ unit tests
  • Lots of cleanup of unit tests

@ducky64 ducky64 marked this pull request as draft April 17, 2024 21:03
@ducky64 ducky64 marked this pull request as ready for review April 17, 2024 22:38
@ducky64 ducky64 merged commit da7a2ea into master Apr 22, 2024
9 checks passed
@ducky64 ducky64 deleted the svgtemplate branch April 22, 2024 22:31
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.

1 participant