[Kicad-developers] High speed tools
Dear all, I want to start my first KiCad high speed design and for that purpose I plan to make some pcbnew python scripts. I just want to ask if some of that tools are expected in the nightly builds (may be I will wait for it or even give a hand or contribute) 1) tool to visualize nets lengths (similar to https://github.com/MitjaNemec/Kicad_action_plugins#length-stats ). I want to make a gui where you can define what nets you want to see altogether. And it should show you length on each layer and summary. And vias as well. 2) Same stuff for length between 2 objects (for example via and pad for T-topology) similar to https://github.com/MitjaNemec/Kicad_action_plugins#pad2pad-track-distance. 3) some tool to define and automatically change tracks length on different layers (to match target impedance) 4) Tool to work with differential pairs. At least change its width and clearance. I think that now differential pairs are just tracks, is there some option to change these parameters after they are created easily? For example, you change stackup, or you change manufacturer and have to use different PCB materials, and after that you have to adjust differential pairs. ___ 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
Re: [Kicad-developers] High speed tools
Hi Alexander, For (1) I know Oleg Endo has been doing some work on the Net Inspector to allow grouping nets for combined length measurement: https://gitlab.com/kicad/code/kicad/-/merge_requests/187 For (3) the intent was to do this via the new DRC rule system. The PNS router needs to be updated to take the new DRC rules into consideration before this will work. For (2) and (4) I don't think anything is in progress. Updating diff pairs could be a feature added to the global track/via editing dialog, perhaps. -Jon On Tue, Sep 22, 2020 at 9:32 AM Alexander Shuklin wrote: > Dear all, > I want to start my first KiCad high speed design and for that purpose I > plan to make some pcbnew python scripts. I just want to ask if some of that > tools are expected in the nightly builds (may be I will wait for it or even > give a hand or contribute) > 1) tool to visualize nets lengths (similar to > https://github.com/MitjaNemec/Kicad_action_plugins#length-stats ). I want > to make a gui where you can define what nets you want to see altogether. > And it should show you length on each layer and summary. And vias as well. > 2) Same stuff for length between 2 objects (for example via and pad for > T-topology) similar to > https://github.com/MitjaNemec/Kicad_action_plugins#pad2pad-track-distance. > 3) some tool to define and automatically change tracks length on different > layers (to match target impedance) > 4) Tool to work with differential pairs. At least change its width and > clearance. I think that now differential pairs are just tracks, is there > some option to change these parameters after they are created easily? For > example, you change stackup, or you change manufacturer and have to use > different PCB materials, and after that you have to adjust differential > pairs. > ___ > 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 > ___ 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
Re: [Kicad-developers] High speed tools
Hi, On Tue, 2020-09-22 at 12:27 -0400, Jon Evans wrote: > Hi Alexander, > > For (1) I know Oleg Endo has been doing some work on the Net Inspector to > allow grouping nets for combined length measurement: > https://gitlab.com/kicad/code/kicad/-/merge_requests/187 Yeah, I think it could be useful. I think I can finish it (i.e. get it to a useful state re-implemented with wxDataViewCtrl) by end of September or 1st week October. Cheers, Oleg ___ 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
Re: [Kicad-developers] High speed tools
My 5 quick cents: > 1) tool to visualize nets lengths (similar to > https://github.com/MitjaNemec/Kicad_action_plugins#length-stats ). I > want to make a gui where you can define what nets you want to see > altogether. And it should show you length on each layer and summary. > And vias as well. 2) Same stuff for length between 2 objects (for example via and pad > for T-topology) similar to > https://github.com/MitjaNemec/Kicad_action_plugins#pad2pad-track-distance. New DRC will take care of that (checking length between arbitrary endpoints as well as reporting constrained length traces/diff pairs). > 3) some tool to define and automatically change tracks length on > different layers (to match target impedance) Did you mean per-layer width/gap constraints? abs(Impedance) is not related (at least not so simply) to trace lengths. We already have length tuner tool, with the V6 design rule system it will be able to pick length constraints from board design rules instead of hand-typed values. > 4) Tool to work with differential pairs. We didn't plan implementing such a tool. Beware that even if it happens, applying more than cosmetic changes to the routing globally will likely ruin your board so badly you'll spend rest of the day cleaning it up... Tom ___ 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
Re: [Kicad-developers] High speed tools
Having just routed a board with 56 diffpairs I have an idea about number 4: I think we should treat diffpairs as single traces when routing and when using the pns functionality to move them around. The trace should have the thickness of 2x dpair trace width + 1x dpair trace gap, and have a clearance of dpair clearance. It should behave as such a trace to the pns and revert back to being a diffpair when shoving/pns manipulation is done. This way dragging, rerouting, and shoving diffpairs works as expected - it maintains the diffpairness of the pair. Length adjustment works just as well on a single trace, and places where the pair splits up or has a skew tune can remain locked while the trace is being manipulated. This requires minimal change to the pns (we just feed it different data) to work, and would dramatically improve the usability of diffpairs because all the lovely stuff we can do to traces now will be available to diffpairs without breakage. We still need the diffpair routing logic for vias and for starting/ending pairs, but we have that now. On 22.09.20 21:11, Tomasz Wlostowski wrote: > My 5 quick cents: > >> 1) tool to visualize nets lengths (similar to >> https://github.com/MitjaNemec/Kicad_action_plugins#length-stats ). I >> want to make a gui where you can define what nets you want to see >> altogether. And it should show you length on each layer and summary. >> And vias as well. > > 2) Same stuff for length between 2 objects (for example via and pad >> for T-topology) similar to >> >> https://github.com/MitjaNemec/Kicad_action_plugins#pad2pad-track-distance. > New DRC will take care of that (checking length between arbitrary > endpoints as well as reporting constrained length traces/diff pairs). > > >> 3) some tool to define and automatically change tracks length on >> different layers (to match target impedance) > Did you mean per-layer width/gap constraints? abs(Impedance) is not > related (at least not so simply) to trace lengths. We already have > length tuner tool, with the V6 design rule system it will be able to > pick length constraints from board design rules instead of hand-typed > values. > >> 4) Tool to work with differential pairs. > We didn't plan implementing such a tool. Beware that even if it happens, > applying more than cosmetic changes to the routing globally will likely > ruin your board so badly you'll spend rest of the day cleaning it up... > > Tom > > > ___ > 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 > ___ 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