← Back to team overview

kicad-developers team mailing list archive

Re: Simplified vias patch proposal


Hi Jean Pierre,

       I had the feeling that something like that might happen with the
I think that allowing "flying" vias (that must end up connected at least to
a plane..
or trigger DRC errors) would be a nice feature, because it allows a more
intuitive use.

       Somehow, needing to put a track to lay some stitching, thermal, or
-some other purpose-
vias becomes counter intuitive.

       I agree that it can be perfectly done now by laying a track and
keeping them connected this
way. This is a good reason to not prioritize a task related to this. But,
why not to take the opportunity
to enhance our lovely pcbnew if somebody is willing to work on it?

     I have some questions down, but just to have more knowledge of out
code, as I'm yet a newcomer
and feel quite lost with all the work you've been doing for years.

2012/6/27 jean-pierre charras <jp.charras@xxxxxxxxxx>

> On Tue, Jun 26, 2012 at 08:18:15AM +0200, Miguel Angel Ajo Pelayo wrote:
>>> Hi Samuel, I also had the same problem recently (making a high power led
>>> controller   3x8A channels), and people complain from time to time about
>>> this issue,
>>> I'd be willing to see this working, but as far as I know there are
>>> many issues to take care of:
>>> cleanup code (as lorenzo said), clearance, etc. I have very little
>>  From the code it seems that it 'emulates' the via command from keyboard,
>> so clearance should be checked inside. I had troubles with cleanup in
>> the past but IIRC there was some reworking in the area recently, so it
>> may work fine.
> Currently Pcbnew assumes tracks ( vias are seen as tracks) are connected
> to pads,
> i.e. a floating track is seen as not connected ( does not have a net name
> ).

We do this because our internal object structure (track/via) , or by the
file format? [just to know the scope of any change related to this]

> Net names are fully (re)attributed to tracks when recalculating the
> connectivity of the board:
> after loading the board or a netlist, or when you run a DRC.
> You can run the full board DRC if you want to do floating vias/tracks lose
> the net name.

Why do we do this?, I mean, wouldn't it be more natural to just warn the
user with "You have floating/unconnected tracks  or vias" instead?, I ask
because pcbnew disconnected some of my vias/tracks sometimes when working
on a board, it became something anoying.

> As a consequence,
> because Pcbnew removes all floating solid copper zones (I am thinking this
> is a great feature),
> areas are filled only if a pad/track/via is found inside the area, because
> a track *is expected*
> to be not floating.

Yes, this is a very important feature, removing dead copper zones is very
important, it's not nice
to have floating copper zones that could couple to some signal, and then
induce noise to any other,
or worse things.. :)

I agree 200% on that, but, why not let anybody keep at least floating vias,
it's not unusual to use them
to let a plane flow "up" from a bottom plane, specially in power
electronics. [thing which can be done now
by laying tracks+vias]

> Fix the loss of net name it not very easy:
> the more easy, but need work:
> how do you know a via/track is floating or not and keep the net name if it
> is "not floating" ?
> the more tricky:

find floating solid copper zones needs to rewrite (or seriously patch) the
> connectivity calculations.
> One cannot allows copper filled areas left floating.

Why to remove the floating connections instead of giving a simple DRC

newcomer idea..> Would it make sense to make different processes, like:
board cleanup &  DRC?  I understand the usefulness of cleaning up in many
many situations, but some others is nasty :)

> I also should say I do not understand why it is so hard to start a track
> from a pad,
> and then press the v key to insert a via, as many times as you want.

I think it's easier to work with that kind of power planes and vias if you
just have vias that you
can move around later, as you change the plane shape, dragging a lot of
tracks make our life harder :-)

Samuel's idea to automatically lay vias inside planes in a pattern would be
even more awesome,
because those vias would be automatically generated or removed with the
plane itself, and then
we wouldn't even have to care about moving them when the plane is changed.
We'd even be in front
of our commercial competitors when dealing with power PCBs :-), but ideas
won't implement themselves,
may be Samuel would like to work on this in a branch. It's very important
to know *why and how *things
are done in KiCad to know if it can be done, or it makes sense.

Jean, thanks a lot for your careful reply, it helped me to understand the
underlying complexity of it.

> --
> Jean-Pierre CHARRAS
> ______________________________**_________________
> Mailing list: https://launchpad.net/~kicad-**developers<https://launchpad.net/~kicad-developers>
> Post to     : kicad-developers@lists.**launchpad.net<kicad-developers@xxxxxxxxxxxxxxxxxxx>
> Unsubscribe : https://launchpad.net/~kicad-**developers<https://launchpad.net/~kicad-developers>
> More help   : https://help.launchpad.net/**ListHelp<https://help.launchpad.net/ListHelp>


Miguel Angel Ajo Pelayo
+34 636 52 25 69
skype: ajoajoajo