← Back to context

Comment by convolvatron

2 months ago

i scaned the article but didn't see this. declarative netlist is probably ultimately the right thing. but one place where I got alot of leverage was writing generators for footprints. its so much nicer to say 'this pad is 0.8 x 0.3" and i'd like two rows of them separated by 4mm with a 1mm pitch than to draw little rectangles with the mouse and getting them all to line up. i dont know if more professional tools do this, but integrating that into kicad made me much happier about the whole process.

Honestly? I want a footprint editor with constraint-based modeling.

The datasheets often show measurements like the horizontal distance between the leftmost side of the left-row pads and the rightmost side of the right-most pad, and the distance between the rightmost side of the left-row pads and the leftmost side of the right-row pads.

Converting that into the stuff you need to enter in the editor (width of pad, distance between center of pad and center of footprint) isn't hard, but it is cumbersome and error-prone. Being able to directly enter it as constraints[0] would make it literally an order of magnitude easier to input, and it would allow for a simple 1:1 comparison with the datasheet for verification.

[0]: Something like https://wiki.freecad.org/images/thumb/7/71/FC_ConstrainedSke...

  • tscircuit maintainer here, we actually do support constraint-based modeling for footprints, although we don't use it often because we also support "short string" footprints which are often faster

    https://docs.tscircuit.com/footprints/constraint

    • What I'm missing is something like <pinheader>, just for generic connectors - say, <connector variant="[microusb,miniusb,usba-female,usba-male,vga-male,vga-female]">.

      Also, for resistors, is there a chance for PTCs and NTCs? And <diode> would benefit IMHO from a variant="[zener, schottky, photo]" plus associated parameters for them.

      2 replies →