← Back to team overview

kicad-developers team mailing list archive

Re: [RFQ] - Do Not Fit

 

Oliver,

I have concerns about greying out the part and being able to see any change
when printed in B&W. This may be why Altium used a big "x", and why the
tools I regularly use also allow an "x" or removing the DNI (I'm most
familiar with this acronym) part.

Another thing to consider is the ability to overload the text in the Title
Block parameters on a per-variant basis. This information will also be
variant-specific and, at least at my work, is important to capture for each
variant schematic.

As it seems you're being asked to provide a blueprint, I'd be delighted to
help if you want additional blueprint contributors. I've been through this
a couple times, including with PLM/ERP integration, so perhaps I can
provide some input that would be useful to all KiCad users. Email me if you
like.

Cheers,
Evan

On Mon, Nov 26, 2018 at 5:08 AM Wayne Stambaugh <stambaughw@xxxxxxxxx>
wrote:

> Oliver,
>
> On 11/26/2018 4:03 AM, Oliver Walters wrote:
> > I'd like some direction from a project leader on how I should progress,
> > rather than wasting my efforts:
> >
> > 1. Adding "DNP" option to schematic components.
> >
> > This can be achieved now, without breaking the .sch file format. It
> > allows components to be marked as DNP in the schematic and in the
> > exported netlist and BoM files.
>
> I would prefer that we defer this to the new schematic file format as
> part of the v6 release.  No file format changes are accepted during
> stable release series including using schematic symbol fields for new
> features.  I will be submitting the schematic file format document for
> comment soon.
>
> >
> > Should I submit a patch for this part of the feature? I can submit a
> > suggestion for a fully-fledged assembly variant management system after
> > the new sch file format is written. But I think this DNP feature is
> > useful for now. I know I would use it all the time.
>
> Not until after 5.1 is released.  Once 5.1 is released, the development
> branch will be open for new features.
>
> >
> > 2. Add "DNP" option to PCB
> >
> > I think the schematic should be in charge of managing variants. The
> > logical information (supplier, resistor value, LED color) etc are
> > contained in the schematic and these values are what differ in assembly
> > variation. So the DNP status should be pushed to the PCB (so that
> > footprints can be excluded from assembly files as required).
>
> I agree with your assessment that this feature belongs in the schematic
> and not the board.  I see variants as being part of the schematic BOM
> feature.
>
> >
> > a) I do not think that marking a footprint as DNP changes the placement
> > "type" (SMT / THT / virtual) it is instead a modifier
> >
> > b) This requires a file format change. Would such a change be supported
> > in a 5.x release?
>
> The policy is no file format changes during stable release series so all
> v5 releases will have the same file format.
>
> >
> > c) How should this information be encoded in the module description in
> > the .kicad_pcb file? Use the 'properties' token? Implement a new custom
> > token?
>
> There should be a new custom token and a bump to the file revision.
> Properties are for saving information for use by third party tools and
> should not be used for internal features.
>
> >
> > Feedback appreciated. I'd like to move forward on this and am willing to
> > do the work to eventually support proper variant management. But need
> > some support from the higher-ups ;)
>
> I recommend creating either a blueprint or some type of public document
> that developers can comment on so we can define the behavior of this
> feature.  It doesn't have to be formal.  A simple bulleted list will do.
>  Once we agree on the behavior, implementing it will be less painful
> than the dealing with scope creep.
>
> I think this would be a useful feature so I would support it.
>
> Cheers,
>
> Wayne
>
> >
> > Cheers,
> >
> > On Sun, Nov 25, 2018 at 3:38 PM Oliver Walters
> > <oliver.henry.walters@xxxxxxxxx <mailto:oliver.henry.walters@xxxxxxxxx>>
> > wrote:
> >
> >     A feature I feel has been missing from KiCad is the ability to mark
> >     parts as "DNF" (Do Not Fit) so they are excluded from assembly files
> >     (BoM / PnP / etc).
> >
> >     Many of the existing BoM tools (including mine) offer "hacks" to get
> >     around this shortfall by having a special field assigned to each
> >     component, for example.
> >
> >     I have a branch working towards such functionality and am looking
> >     for some feedback.
> >
> >     I consider this preliminary work towards full support of assembly
> >     variants. However this will need to wait until the new file format
> >     to be properly implemented. So for now, only DNF status is presented.
> >
> >     Here are the features I have implemented so far:
> >
> >     *A. Schematic components can be marked as "DNF" *
> >
> >     A new checkbox in the component editor allows part fit to be
> >     deselected. By default all components are selected. (UI placement
> >     not final, just for demonstration).
> >
> >     image.png
> >
> >     Note that when rendered in the schematic, DNF parts are denoted by
> >     appended text after the RefDes field.
> >
> >     Altium denotes DNF parts with a large red cross - I think that
> >     greying out DNF parts would look quite nice.
> >
> >     *B. DNF part status is saved in the .sch schematic file*
> >
> >     If a part is DNF , then the component line in the .sch file is
> appended:
> >
> >     image.png
> >
> >     Parts which *are* fitted do not get updated - to reduce file changes.
> >
> >     As far as I can tell, this file change is fully backwards and
> >     forwards compatible. Old versions can open the file and simply
> >     ignore the DNF parameter. So perhaps this can be pushed into
> >     production before 6.x branch as it won't break any schematics.
> >
> >     *C. Fitment status saved in exported netlist file*
> >     *
> >     *
> >     The fitment status of each component is saved to the exported
> >     netlist file.
> >
> >     image.png
> >
> >     So all this at least allows fit / DNF status to appear to the BOM
> tools.
> >
> >     What's left?
> >
> >     *1. PCBNEW*
> >     *
> >     *
> >     DNF status should be pushed to PCBEW, because:
> >
> >       * Don't show 3D models for parts which are marked as DNF
> >       * Don't export DNF parts to the PnP files
> >       * (Eventually) ability to switch between assembly variants in
> PCBNEW
> >
> >     However, this would require a file format change to the .kicad_pcb
> >     file, and this does not have the same opportunity for version
> >     compatibility that the simpler .sch files do.
> >
> >     I can make this happen, but I'm guessing it has to wait for the 6.x
> >     branch.
> >
> >     A simple example of how this could be included in the file:
> >
> >     image.png
> >     *
> >     *
> >     *2. Multi-Unit Parts*
> >
> >     If you mark one unit of a multi-unit part as DNF then *all* other
> >     units should be marked as DNF too.
> >
> >     Question: How (from SCH_EDIT_FRAME context) do I find all the
> >     components that are the same master component as a given sub-part?
> >
> >     *3. Better Display of DNF parts*
> >     *
> >     *
> >     I'd like to add a "greyed out" display for DNF parts in the
> >     schematic viewer.
> >
> >     *4. Nomenclature*
> >     *
> >     *
> >     In the files I have used "DNF" or "fitted" - what should the
> >     accepted nomenclature be here? I've seen DNF / DNP / NC and other
> >     examples used. I'd like to get some clarity on what I should use
> >     going forward.
> >
> >     As I said above, I'd like to move this on to support a full assembly
> >     variant management system but I feel it's best to wait until new
> >     file formats. Until then, some feedback on the items above would be
> >     great.
> >
> >     Thanks,
> >
> >     Oliver
> >
> >
> > _______________________________________________
> > Mailing list: https://launchpad.net/~kicad-developers
> > Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> > Unsubscribe : https://launchpad.net/~kicad-developers
> > More help   : https://help.launchpad.net/ListHelp
> >
>
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp
>

References