Hi I forgot to add the kicad list to this thread so I am forwarding it here for info and if others want to participate in the discussion.
Nick 2016-07-28 13:24 GMT+02:00 jp charras <[email protected]>: > Le 28/07/2016 à 12:12, Nick Østergaard a écrit : >> Hello Jean-Pierre, >> >> I see you have recently [1] made a commit to add a shortcut to run the >> DRC from the plot dialog in pcbnew. I suspect this is a proposal for a >> fix to [2]. Thanks. >> >> Is this true? > > Yes. > Since a long time, there are a few bug reports about this topic. > > The bug happens only on Linux, and it is fixed on my working branch (will be > committed very soon) > > >> >> Either way, I think the current implementation is not ideal and have >> another proposal. >> >> Currently it works like a shortcut to the DRC dialog, but with the bug >> that it can not jump to the locations of for example unconnected >> traces. >> >> There is a problem with running DRC from the plot dialog, it is that >> it will modify the board when plotting, like refilling zones and >> removing "orphaned" vias for example. > > It is not specific of "running DRC from the plot dialog". > > It rebuild all data related to the netlist info, and rebuild the zones. > Because a good practice is to run DRC before plotting the board, the fact the > DRC is run from the > plot dialog has no matter. Yes, but the problem is that it still modifies the board in contrast to what it was before the user made the plot. > >> >> I would like to see it as a checker only. I propose to not have it as >> a "Run DRC" button, but have a checkbox to enabled DRC on plotting or >> not. And in this case it should not refill zones nor remove orphaned >> vias, it should only be used to warn the user that there might still >> be problems with the board. >> >> If there are not errors, it should just plot like normal. > > Unfortunately, it is no possible. > > The DRC function which calculates unconnected and clearance issues imply a > few requirement in Kicad > code: > > * the connectivity info is good > It means orphan vias have no net, becuase they are not really connected. > Orphan stitching vias are not yet supported because until now I never see a > working patch, and even > see a working solution. > Moreover, when reloading the board, the connectivity info will be rebuilt. > Therefore running DRC before plotting fixes this potential issue. What is the reason that we can't update the file format to include net info for vias then? This would solve the problem as I see it. (unless there is some detail I forgot) > > * the copper areas are good. Especially isolated islands are removed, and the > shapes are good: > It means they meet their setup (for instance clearance and pad connection > options) > > For instance: > - Fill a zone having pads connected by thermal stubs. > Change the thermal stubs option by no thermal. > The DRC is still perfectly good. But the shape is not good. > - Create and fill a zone with a given clearance. > Change with a smaller clearance. > The DRC is still perfectly good. But the shape is not good. > > Be sure there are a lot of other similar cases. But if this is the reasoning, why shouldn't the DRC be run automatically every time? It could optinally warn the user that orphaned board objects have been removed if that is really the case. I know some people say it is bad to have it automatically change the board on plot, but if that change is the same as when reloading the board I am ok with that. The same people also say that they want to know if the board has DRC errors before plotting. Hence I think my proposal with that option to auto run the DRC would be helpful to the user. > >> >> If there are errors it should probably present the user with a dialog >> telling that there are issues with the board and allow the user to >> plot anyway or cancel such that the user can go back and fix the >> issues. > > For me, it does not fix all issues, only some of them. > > To tell the true, I do not understand what is the real issue to run the DRC > from plot dialog. > > All changes the DRC can make will be made when reloading the board, or the > next time a DRC will be > run from the board editor. Sorry if my reply sounds a bit grumpy, I don't mean to at least. I just want to understand the issue better, and why we can't have a better way to handle this issue, such that it is not a manual step to assure that the plot is a valid board. > >> >> Regards >> Nick Østergaard > > Regards, > > -- > Jean-Pierre CHARRAS _______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : [email protected] Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp

