The only reasons to have multiple violation error codes is to be able to set a different severity for them, or to be able to filter/sort them.
I can't think of a situation in which I would want to do either of those things for different via types. On Thu, Jun 11, 2020 at 9:48 AM Wayne Stambaugh <stambau...@gmail.com> wrote: > > I was thinking along the same lines. Wouldn't it make more sense to > define the objects that violate a DRC rule and generate the error > message on the fly rather than adding violation error codes for every > possible error? > > On 6/11/20 9:26 AM, Jon Evans wrote: > > I think microvias and vias using different technologies means they > > need different *rules*, not different error codes. > > > > Whether a hole is laser or mechanically drilled, it will have some > > rules, and those rules could generate an error "hole size is outside > > allowed range". > > > > You can tell from the affected items whether the hole in question is a > > via, microvia, blind via, buried via. > > You can tell from the rule source whether this came from a microvia > > rule, normal via rule, custom rule, etc. > > > > Why should we have separate violations per via type? (not separate > > *rules* but separate violations) I still don't get the use case. > > > > As mentioned in the last taxonomy discussion, I still think we could > > get rid of the tons of different "X close to Y" errors and just call > > it a "clearance error", but I understand that might be more > > contentious so I'd like to focus for now on just the keepouts and > > vias. > > > > -Jon > > > > On Thu, Jun 11, 2020 at 6:51 AM Jeff Young <j...@rokeby.ie> wrote: > >> > >> The “Inside Keepout” issue might be a bad example. I’d definitely be in > >> favour of folding all of those into a single violation because a keepout > >> already specifies which types of things are excluded. > >> > >> But other things I’d be less in favour of. I want a warning about NPTHs > >> in courtyards; I don’t want one for PTHs (the former likely has a > >> mechanical fixing, the later likely doesn't). > >> > >> While I don’t personally use uVias, I’d certainly think we’d want separate > >> violations for their holes (as they’re made with different technologies). > >> On the flip side, I’m not sure there’s any value in distinguishing between > >> throughVia holes and pad holes. > >> > >> But that gives us a different taxonomy for size vs. hole, as the > >> difference between uVia and throughVia size may not be important. (We > >> already have this to some extent as I didn’t bother with separate annulus > >> violations for via types, although there’s a TODO in the code). > >> > >> This all begs the question “how bad is an uneven taxonomy”? Is it just an > >> ivory-tower kind of thing, or will it actually cause confusion? > >> > >> Back to specific instances, I like being able to treat > >> track-too-close-to-connected-item separately from > >> track-to-close-to-unconnected-item, but I’m less fussed about the > >> differences between the type of connected item (track-to-close-to-via vs > >> track-to-close-to-track). (For what it’s worth, unconnected items are > >> already grouped as we don’t have separate errors for > >> track-to-close-to-graphics vs track-to-close-to-text. Yet another bit of > >> unevenness in the existing taxonomy.) > >> > >> Oddly I find the parallel-tracks vs crossing-tracks useful, but I have no > >> idea why. I guess it just gives me a better idea of what I’m looking for > >> on the board? > >> > >> One last note: Greg’s request for specific exclusions is already in the > >> nightlies. > >> > >> Cheers, > >> Jeff > >> > >> > >> > >>> On 11 Jun 2020, at 06:19, Greg Smith <ecomput...@yahoo.com> wrote: > >>> > >>> I think more grouping in general categories is good. I also think that it > >>> would be nice to exclude *specific* DRCs that once a designer checks the > >>> error, they can flag it to ignore in the future. The specific check could > >>> be identified by a unique id: a hash of specific information, like unique > >>> error and objects involved (identified by geometries and properties > >>> involved). If anything changes, then the rule violation reappears under a > >>> different unique id. I think this would help greatly on near-tapeout > >>> activities where sifting over the same DRC errors becomes tedious and > >>> prone to missing valid DRC violations in the midst of “designer checked > >>> and allowed” ones. > >>> > >>> Greg S. > >>> > >>>> On Jun 10, 2020, at 7:59 PM, Jon Evans <j...@craftyjon.com> wrote: > >>>> > >>>> Hi all, > >>>> > >>>> A DRC error code is something like "Via inside keepout area", or in > >>>> the code, DRCE_VIA_INSIDE_KEEPOUT. It describes a "type" of DRC > >>>> error. This type is used for organizing the errors in the DRC report, > >>>> and more recently, for letting you set a severity > >>>> (error/warning/ignore) for each code. > >>>> > >>>> Currently we have a lot of DRC violation types, probably because the > >>>> violation types match up to the underlying code that is doing the > >>>> checking. So, we also have a DRCE_MICROVIA_INSIDE_KEEPOUT and > >>>> DRCE_BBVIA_INSIDE_KEEPOUT, because a lot of KiCad code has separate > >>>> paths for those three types of vias. > >>>> > >>>> Do people find this useful? I think it is too specific: I would > >>>> rather see a single code DRCE_VIA_INSIDE_KEEPOUT to include all types > >>>> of vias. I could even see having a single code for any object inside > >>>> a keepout that isn't supposed to be there. I can't imagine a > >>>> situation where I would want to have a via inside a keepout be an > >>>> error, but a microvia inside a keepout be a warning or an ignore > >>>> (having the separate error codes means you can have seperate severity > >>>> settings). If I wanted to know if a particular DRC error referred to > >>>> a via or a microvia, I can do that from the linked item information -- > >>>> I don't need a category to tell me that. > >>>> > >>>> What do you think? Does having a lot of very specific error codes > >>>> help your workflow? Would you miss these categories if some of them > >>>> got consolidated like the example I gave? If so, are there other > >>>> changes we could make (or features we could add) that would make it > >>>> easier to deal with having less specific error codes? > >>>> > >>>> Thanks, > >>>> Jon > >>>> > >>>> _______________________________________________ > >>>> Mailing list: https://launchpad.net/~kicad-developers > >>>> Post to : kicad-developers@lists.launchpad.net > >>>> Unsubscribe : https://launchpad.net/~kicad-developers > >>>> More help : https://help.launchpad.net/ListHelp > >>> > >>> > >>> _______________________________________________ > >>> Mailing list: https://launchpad.net/~kicad-developers > >>> Post to : kicad-developers@lists.launchpad.net > >>> Unsubscribe : https://launchpad.net/~kicad-developers > >>> More help : https://help.launchpad.net/ListHelp > >> > > > > _______________________________________________ > > Mailing list: https://launchpad.net/~kicad-developers > > Post to : kicad-developers@lists.launchpad.net > > Unsubscribe : https://launchpad.net/~kicad-developers > > More help : https://help.launchpad.net/ListHelp > > > > _______________________________________________ > Mailing list: https://launchpad.net/~kicad-developers > Post to : kicad-developers@lists.launchpad.net > Unsubscribe : https://launchpad.net/~kicad-developers > More help : https://help.launchpad.net/ListHelp _______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp