On 6/5/2014 1:15 PM, Jean-Paul Louis wrote: > I am no Software expert, but I have seen quite a few different CAD Tools > during my work life and they all have their pros and cons. > I am just an user, so I have a few questions relating to usability for the > experts. > > 1 - Is there a reason besides legacy to limit the number of layers?
Yes and no. Internally, the current software uses a 32 bit integer for masking so each bit represents a layer. Bits 0-15 are assigned to copper layers and bits 16-31 are allocated to the remaining layers. There is nothing preventing us from changing this internally but it will not be a trivial change. Layer masking is used in a lot of different places in the Pcbnew code. > What I mean is that a PBA (Printed Board Assembly) is a collection of > objects. > The PCB in itself is the most complex object in the collection because > of its highly variable > multilayer structure (Design related). > So it could be described as a collection of layers that have different > properties such as > Board Blank (Mechanical/Edges Layer, Ground Plane Layers, Signal > layers, Solder Mask Layers, > Solder Paste Layers, Markings (Silk Screen) Layers, Revision (ECO) > Layers, Component Layers > (SMT and TH) and anything that does not come to my mind now. > Using a collection for layers will allow easy backward compatibility. > > Tom’s description seems to be exhaustive enough to cover most of the > entities that I have only > two comments. > 1 - The jumper layer to me is redundant with the component layer as a > jumper can be > described as a component, a socketed IC, a heat-sinked device or a > multipart connector can be > treated as a compound component (module). I believe the jumper layer is something that is only used as part of the Speccrta export. Dick can shed more light on this than I can. > 2 - To me, the courtyard concept is part of the footprint, so it > doesn’t need a layer. > It is only used for placement purpose (design rules) to carry > manufacturing assembly > constraints (its shape should be arbitrary). This may make more sense than creating a custom courtyard layer. It may also make sense to add a separate keepout concept instead of using a layer. It would simplify the layer definitions. > > 3 - Is the fact that the Layer ID goes from 0 to 16 or whatever so important > that it cannot be changed? > I mean the sequential aspect of the ID number. > If so, why not use 0 to 127 for the copper layers, and 128 to 255 for > the other layers? > That would still fit in one byte if byte is the limit, and I have yet > to see a board with more > than 128 layers. There is nothing prevent us from doing this. The first order of business is to define the requirements for the board and footprint files to support these features. Once this is defined we can then define the code required to contain and manipulate the new file features. After that is implemented, then we can start discussing the implementation of new features such as more than 16 copper layers, courtyards, keepouts, DRC improvements, etc. > > I do not mean to criticize or offend anyone, I am just brain-storming with > things that I have seen or missed in all the tools I have used from venerable > DOS Orcad on a PC to modern tools like Cadence Allegro, Mentor PCADS or > Altium Designer (including Protel), and hobbyist tools like Eagle or the > PCB123 alike tools. > > <Rant mode OFF> > > Jean-Paul > AC9GH > > > > > I don't want to discourage anyone. There are a lot of good idea here that have been discussed before. Please hold on to them until we are ready for that part of the discussion. We have done this in the past where we beat a topic to death with no forward progress and good ideas get lost in the bowels of the mailing list archive never to be read again. This is all due to the lack of focus. We really need to be focusing on the changes that need to be made to the board and footprint files to allow these features to exist or we will never get anywhere. I will continue to refined the suggested changes and add them to the file format document once we have everything finalized. <<<snipped>>> _______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : [email protected] Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp

