kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #13525
Re: CERN work package 4 (Extend number of layers)
On 06/04/2014 06:30 PM, Cirilo Bernardo wrote:
> ----- Original Message -----
>
>> From: Wayne Stambaugh <stambaughw@xxxxxxxxxxx>
>> To: kicad-developers@xxxxxxxxxxxxxxxxxxx
>> Cc:
>> Sent: Thursday, June 5, 2014 5:35 AM
>> Subject: Re: [Kicad-developers] CERN work package 4 (Extend number of layers)
>>
> [snip]
>>
>> I think we should steer the discussion towards defining what
>> improvements we need to make to the board and footprint file formats to
>> support the changes we have been discussing. Once that is defined, we
>> can discuss the code changes required to handle the new layer
>> definitions. Everything else depends on getting this correct. Here is
>> a sample layer definition:
>>
>> (layers
>> (15 F.Cu signal)
>> (0 B.Cu signal)
>> (16 B.Adhes user)
>> (17 F.Adhes user)
>> (18 B.Paste user)
>> (19 F.Paste user)
>> (20 B.SilkS user)
>> (21 F.SilkS user)
>> (22 B.Mask user)
>> (23 F.Mask user)
>> (24 Dwgs.User user)
>> (25 Cmts.User user)
>> (26 Eco1.User user)
>> (27 Eco2.User user)
>> (28 Edge.Cuts user)
>> )
>>
>> From the discussion, it sounds like we would need to add an F.KeepOut
>> and B.KeepOut for courtyard areas. Maybe add F.KeepOutZ and B.KeepOutZ
>> for vertical keep out areas to prevent pick & place machine plunger
>> crashes on tall components. It also sounds like folks are interested in
>> naming layers so we can optionally add a (name "My Layer Name")
>> element
>> to the layer. This would allow users to define their own names for
>> display purposes. The only thing I'm not sure of is layer pairing that
>> was being discussed. I would need a example of how that could be used.
>> So that would give us something like:
>>
>> (layers
>> (15 F.Cu signal (name "Front copper layer"))
>> (0 B.Cu signal)
>> (16 B.Adhes user)
>> (17 F.Adhes user)
>> (18 B.Paste user)
>> (19 F.Paste user)
>> (20 B.SilkS user)
>> (21 F.SilkS user)
>> (22 B.Mask user)
>> (23 F.Mask user)
>> (24 Dwgs.User user)
>> (25 Cmts.User user (name "I put my comments here!"))
>> (26 Eco1.User user)
>> (27 Eco2.User user)
>> (28 Edge.Cuts user)
>> (33 F.KeepOut user) # This could be any number > 32
>> (34 B.KeepOut user) # This could be any number > 32
>> (35 F.KeepOutZ user) # This could be any number > 32
>> (36 B.KeepOutZ user) # This could be any number > 32
>> )
>>
>> You could use *.KeepOut and *.KeepOutZ for any module drawing element
>> (lines, arcs, circles, etc.) that are defined on both sides of a board.
>>
>> This should be a good start to get the discussion moving in the right
>> direction.
>>
>
>
> I think a good start would be to ask people what technical layers they
> want and go from there. Offhand I'd vote for the F/B.KeepoutZ since
> that's actually useful when working with MCAD people to replace existing
> boards or when the board design is constrained by other mechanical
> factors. In IDF (it has many deficiencies, but it's the only ECAD/MCAD
> collaboration tool we have at the moment) a Keepout can have a height of
> '0' which means you can't place any components at all. *If* we have these
> keepouts, we also need to provide height information for components.
> Fortunately that facility already exists with the introduction of the
> IDF code.
>
> I can think of a number of reasons people want extra layers:
> 1. to support the scheme detailed in IPC-7351
> 2. to support design constraints stated by a manufacturer for a
> specific product (usually routing keepouts)
> 3. to support ECAD/MCAD collaboration
>
> In the case of ECAD/MCAD support, and this is probably true of additional
> technical layers in general, a lot of the layers only need to display
> various outlines to guide the person doing the board layout; KiCad cannot
> be expected to enforce any rules.
>
> Anyway, the short story: we should detail what layers people want and why,
> and how those layers are intended to be used. Then we can think of how
> things can be implemented in small steps.
> Initially these layers can be implemented and maybe all can be implemented
> by accepting nothing more than graphical lines and text. Even layers which
> should ultimately have some effect on KiCad's behavior can initially be
> implemented and display something even though they are non-functional until
> someone has time to put in the additional code.
>
> One other thing: any further progress hinges on extending KiCad's layers.
> I think it's good to have some idea how we want to progress with the new
> nonexistent layers, but we also have to keep in mind that nothing further
> can be done until someone has the time to come up with a good scheme for
> extending the number of layers.
I think we should stick with Wayne's lead.
Wayne said design the files first, talk about coding later.
Please stick with his lead.
References
-
CERN work package 4 (Extend number of layers)
From: Vesa Solonen, 2014-06-03
-
Re: CERN work package 4 (Extend number of layers)
From: jp charras, 2014-06-04
-
Re: CERN work package 4 (Extend number of layers)
From: Tomasz Wlostowski, 2014-06-04
-
Re: CERN work package 4 (Extend number of layers)
From: jp charras, 2014-06-04
-
Re: CERN work package 4 (Extend number of layers)
From: Tomasz Wlostowski, 2014-06-04
-
Re: CERN work package 4 (Extend number of layers)
From: Lorenzo Marcantonio, 2014-06-04
-
Re: CERN work package 4 (Extend number of layers)
From: Wayne Stambaugh, 2014-06-04
-
Re: CERN work package 4 (Extend number of layers)
From: Lorenzo Marcantonio, 2014-06-04
-
Re: CERN work package 4 (Extend number of layers)
From: Wayne Stambaugh, 2014-06-04
-
Re: CERN work package 4 (Extend number of layers)
From: Cirilo Bernardo, 2014-06-04