Hi all, Recently there has been a lot of discussion on these features. Here's a short proposal how we could hit all three birds with one stone:
Changes to SCH: - none Changes to netlist import: - auto_generate flag for SCH components - when set, invokes a Python script/C++ plugin which updates the PCB footprint of the component depending on its SCH parameters (e.g. produces a microstrip footprint based on Width/Length parameters defined on SCH). - write some microwave component generator plugins (or port the existing tools). Perhaps a good job for Python. Changes to PCB: 1) Add two flags to each graphical primitive within a footprint: - net_tie: DRC treats the primitive as non-conducting and doesn't throw a short circuit error (see drawing A) - net_inherit = pad_number: the primitive will take the net of the pad with given pad_number (see drawing B) 2) Add new 'anchor' virtual pad type. - indicates the point to attach a trace/via when routing the component. - exists on a single copper layer. - has no physical copper. - has an optional direction vector which denotes how it can be connected with a trace/other anchor pad (see drawing C) - has a circular perimeter (maybe other shapes in the future if needed). Objects intersecting the graphical primitive outside the anchor perimeter are considered colliding by the DRC (see drawing D) even if they have the same net. 3) modify .kicad_pcb/footprint formats to support the above: - extend fp_* entities: net_tie & net_inherit flags - extend pad entity: add anchor pad type, perimeter radius and direction vector. 4) modify DRC to support the above (we can benefit from the work already done by JP) Advantages: - microwave footprints generated straight from the schematics. - net ties for free (since based on the same idea as microwave components) - custom footprint copper shapes almost for free (costs one extra flag & some changes in netlist importer) - minimum changes to file formats & data structures. The attached drawing shows use cases for all of the above and explains the concept of anchors. Looking forward to your feedback, Tom
shapes.pdf
Description: video/flv
_______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp