PCB layout: tracks at 15°?

Hello and good day all together,

unfortunately, I didn’t find anything through the search, probably because English isn’t my native language. If this topic has already been covered, please forgive me and pls provide a link/reference.

The basis is a hexagonal board with identical side lengths. Since the whole thing involves high frequencies, in my experience it’s wise to keep the traces as short as possible.

However, I haven’t found a way to rotate the board, including the already placed components, 60° around the center, or to rotate the grid by 60° so that I can place and route the components at right angles to each edge.

Another alternative I haven’t been able to find is the option to set the angle of the tracks when routing to, for example, 15°; only 45° and 90° are possible.

Is that even possible? And if so, how?

Greetz
Micha

For board rotation, use Shift+M (Move Exactly…):


For tracks, use free angle mode:

Right-click on the Route tracks button:
image

image

1 Like

Ohhh… Thank you so much! I’ll try that and give feedback.

Greetz
Micha

That setting is in: PCB Editor / Prefeences / Preferences / PCB Editor / Editing Options

Also, apparently the “weave” of glass fiber is sometimes a problem for HF boards. FR4 is not homogenous and the propagation delay of signals varies a bit. Apart from ordering a PCB from more exotic / expensive materials, a trick that is sometimes used is to not route signals orthogonal. Routing such a PCB in KiCad is a bit of a nuisance, as KiCad prefers routing horizontal and vertical tracks. One way around this is to rotate the PCB (Edge.Cuts) a bit (for example 15 degrees) clockwise, and then rotate everything 15 degrees CCW just before exporting gerbers.

Here’s a little update for you:

I tried all of this; it didn’t work particularly well.

The sticking point is that you can’t mark everything at once, but only layer by layer. Or did I miss a function/shortcut?

So I took a different approach. I routed the individual “slanted” components normally outside the board, then grouped them, and placed the group on the board rotated accordingly. This turned out to be quite useful, at least for this project.

One more note:
There doesn’t seem to be an option to specify that all marked parts should rotate around the drawing origin (X=0, Y=0). Especially with round or isosceles polygonal boards, you could otherwise place the coordinate origin in the center of the board, which would solve most of the problems.

I have no problem with:

  1. Zooming out.
  2. Selecting the whole PCB by dragging a box around it.
  3. Rotate it (by pressing r).

Rotating this way is (presumably) around the center of the selected objects. With the Move Exactly method dsa-t mentioned another center can be chosen, and you have more control over the angle.

I don’t know why it does not work for you. One guess is the settings of the Selection Filter in the lower right corner.

image

1 Like

Try pressing H to switch off the high-contrast modes.

2 Likes

HAAA!

That’s the solution!
I didn’t realize that this function also affects selectability. I’ll definitely have to keep that in mind…

I still think there’s an option missing here to rotate selected parts around the coordinate origin.
As in the example image here, you can then set the coordinate origin in the center of the board, and all rotations will then revolve only around the central point.

You can use the drill/place origin for that:

image
image

Nope… If I haven’t missed anything here, this is the result:

It has rotated by 60°, but also left the drawing sheet, although the coordinate origin was previously set in the center of the board.

On this screenshot I only see a grid origin set.

You have to set the drill/place origin.

Press and hold the left mouse button on this button and select the right item:

image

1 Like

Thank you so much! That was what was missing.
Okay, now I have everything together for the next Multigon project.

Thanks again to everyone. That was great.

I’m a bit late to this party, but if you want six identical segments for a PCB, you can use the “Array” tool.

Draw one complete and convenient segment (probably top or bottom):

ksnip_20250518-115427

Group all the tracks, vias, footprints and graphic lines, then Right Mouse click and select "Create from selection > Create array > Circular array and fill in the details.
In your case, it will be Full circle, Rotate items, Item count 6, Click “Select point” then Left Mouse click on the “grid origin” then OK and you end up with the below:

Oh, that’s also an interesting and pretty quick option.
What I don’t understand, however, is how the referencing to the circuit diagram works. Even if I assume that all six circuit sections are completely identical in terms of layout and component values, I’m still creating a copy of the same circuit group, for example, the first one, and not groups one through six…

In my case, I had one input circuit and four output circuits. The input is placed at 12 o’clock on the back, the output circuits at 2 o’clock, 4 o’clock, 8 o’clock, and 10 o’clock on the top. The power supply and bias generator are located at 6 o’clock on the bottom.
The input stage and output stage are significantly different. The output stages are identical in terms of circuitry, differing only in three component values.

Draw all the identical sections on the schematic. Draw one segment of footprints, annotated. Create array.
Go back to the schematic and update the PCB.

I’d probably delete the top and bottom circuits after completing the array. This is an easy way to get the edge cut correct - just drag the ends of each section 'till they intersect with an adjacent line.

Another method, though requiring more effort, is to create one group then duplicate and rotate the duplication through 60° (Preferences > PCB Editor > Editing options > Steps for rotate commands).
You will need a reference to position each group the correct distance from the grid origin (perhaps a piece of track or graphic line that can later be deleted?).