← Back to team overview

kicad-developers team mailing list archive

Re: Patch to support FreeRouting for PCBs without through-plating


Håvard Espeland wrote:
On Mon, Mar 15, 2010 at 09:28:32AM -0500, Dick Hollenbeck wrote:

Håvard Espeland wrote:

On Sun, Mar 14, 2010 at 08:03:23PM +0100, jean-pierre.charras@... wrote:

Autorouters expect plated holes, and hobbyists are never happy with
auto routers.
Your problem exists also for students (I am a teacher at the
Due to the process used, boards designed by my students cannot have
plated holes.
(Process to make plated holes is a *very* complex process).
On the other hand, these boards are elementary and do not require an
auto router.
But the advantage is they can have boards they have designed (with
Kicad of course) one hour (or less) after the design is finished.
May be do you consider routing "by hand".

Freerouter has a manual mode, and you can place the tracks on the layer you desire.

Sure, but that is manual patching of the routing afterwards, instead of
letting the autorouter do the routing correctly.

For the last two years, I have been using kicad for all my boards, and I
really like the program. Most of them are handrouted with occasional use
of freerouter with manual fixups to move vias away from under components
and only attach tracks to the opposite side of the component for modules
where I can not solder on both sides. Autorouting is very adantageous
when I have limited time (design and etching the same day), and
espescially if I need to modify the circuit after routing.

The lack of autorouting boards without through-plating has annoyed me
since I started using kicad, and the patch I wrote significantly speeds
up the design process when doing one-off prototype boards. Personally, it
does not matter much if this feature is merged or not since I will just
continue to patch it into kicad for my work, but I am quite confident
that there are very many users out there that will benefit from this

How many? How many is very many?

It is of course hard to guesstimate, but does a number really matter? It
is very useful for users that etches circuits themselves (without
through-plating equipment).

Would it be an acceptable solution to add a new attribute to the
components which indicate if the autorouter can attach tracks on any
layer (as it is now and default), or only to pads which is on the
opposite side of the component ?

What Specctra DSN elements can be used to communicate this information to freerouter? Please reference something in the spec.

As can be seen in the patch attached to parent, I use keepout elements as
replacement for pads (circular, rect and oval pads are supported) on
layers that should not be connected by the autorouter. To stop the
autorouter from placing vias under components, I use the via_keepout
element. For more details see:

I used the patch to design and etch a board with freerouting yesterday
and the method of using keepouts worked perfectly.

This will not affect DRC or anything else since the pads will remain of
type standard and the board will be as handrouted with knowledge of
which pads will be connected on both sides, and which will not.

1) If there was a single boolean in the export UI (checkbox) to control the nature of the export in this regard, do you still need component specific control over whether this technique is used on specific components? i.e. would it be acceptable to treat all through hole components this way when the boolean is set?

2) Have you tested the idea of putting a keepout under the component, but not modifying the padstacks? How does freerouter respond this this?


Follow ups