I’d like to be able to specify the dimensions (length and width) for a large number of traces for an RF application. To make this simple it would be nice if I could just define a variable that controlled the length of, for example, 50 different traces. Is this a thing in kicad? Its pretty common in many other CAD programs. Sorry I’m new to this and still learning…
One solution might be to make a footprint that is the shape of the trace I want? But I read this will only work for external layers and I need internal layers too.
Thanks for the transmission line tip! I hadn’t thought of that…For my main problem - Yes I’ve installed and played with the RF-tools plugin for Kicad, but nothing there did what I need.
For example, imagine I want a board with 20 half wave transmission lines on each layer…but then I decide I want to build another such board at a different frequency. I’d like to not have to change all the line lengths individually by hand…
KiCad-nightly V5.99 has “named variables”, but I do not know if they can be abused in this way.
KiCad has built-in python scripting, maybe you can use that.
A simple (but still better then changing the segment lines one by one) is to draw a segment of the right length and just copy that to wherever you need it.
Yet another possibility is to use block copy and extend the copper tracks by copying another over them, and then use Track * Via Cleanup to merge the overlapping segments again.
You could make a simple plugin to move tracks to other layers, including Inner layers. Can also change track widths and lengths…
There are a number of posts on making simple plugins.
Example shows some tracks being moved to layers (inner and outer) and changing track width.
Aside from plugin’s, you can window-box desired tracks and change widths by selecting the track-width pull-down… Can also edit them and move to different layers… without plugin…Last screenshots…
Window-boxing desired tracks still wouldn’t let me change the length, only the width of the tracks. And it would only work if all the desired tracks were in the same geographical location on the board (which they might not be).
You can window-box and change them… Example below shows change from existing start X point and length from new Zero X start point yielding a length change… Like most anything, it’s about playing around and seeing what’s doable…
The width for large number of traces can be set by assigning the nets to a specific net class. Below are the steps to be followed to create a net class.
These are all interesting features for me to learn about, but I still don’t feel I’ve found a solution – possibly I phrased my post / question badly…
I want to draw complex geometries in copper on my board using (I guess?) a large number of traces / copper zones. In this case I may have hundreds of copper traces whose length I would like to easily design / control / edit.
So far I’ve been looking at importing dxf drawings (which don’t seem to be able to import to copper zones), as well as scripting the geometry with pcbnew. I haven’t got anything really working yet, and would still love to hear suggestions on the best approach.
Instead of expecting everyone to Guess and Imagine what you want from what may be your poorly worded explanation, why not post a simple sketch of what you want… you can do all sorts of custom pads…
Lets say I want this structure in copper on every layer of a multi-layer board. Where the short thin traces are all a quarter wave long. And I’d like 5 boards for 5 different frequencies I’m interested in.
Determine the line lengths, curve, widths and placements…etc
Several Options to draw it:
• You can Draw directly in Kicad
• Draw image (jpeg or bmp) in external graphics program and use Kicad’s BitMap Graphics tool. It exports a .mod footprint
• Draw in a CAD or other graphics program save as DXF and load into Kicad, change layers
After getting a footprint .mod file, you can Edit it (it’s text file) and change the layer to desired layer. Meaning, locate the Layer tags and change them as desired.
Example - using the Bitmap Tool- sequence shown in images below:
• I used a Screenshot of your sketch in the Bitmap Tool. Saved to Eco layer (saved screenshot.mod footprint)
• Loaded the .mod footprint into PCBnew
• Select it and Edit the Library footprint
Double-click and Change Layer from Eco to desired layer. Example shows change to Bottom Cu.
•Then, update the footprint or place a new one…
You can Edit the .mod file and change the layer, as I said. Including change from Dwg/Silk/Margin… to Inner and Outer layers…
The example below shows edit of the above file to change to inner layer “In1.Cu”
I’ll leave it for you to explore… I did Not do a Clean-up on the graphic, only changed layers to show how to do it… Includes the verification that it’s moved into In1.Cu
EDIT: Follow-up Tip: Because you can’t see Inner layers in Footprint, I suggest drawing a Silk screen so it shows up in the Footprint editor. I also changed a Mask layer (by mistake but, didn’t correct it… getting too old, I guess…)