← Back to team overview

kicad-developers team mailing list archive

Re: file format feedback

 

On 04/09/2012 11:00 AM, Wayne Stambaugh wrote:
> On 4/9/2012 11:18 AM, Miguel Angel Ajo Pelayo wrote:
>> They seem to be using "wire" for schematics:  and "wire" for pcb  too.
>>
>> They also enumerate the layers at start.
> Miguel,
>
> Thanks for the eagle files.  A layer map at the top of the file is a
> good idea.  Something like
>
> (layers
>   (0 "NAME_OF_LAYER_0)
>    .
>    .
>   (N "NAME_OF_LAYER_N)
> )
>
> Only the non-default layers would get saved.



The number in the above map can be uniquely produced in order to have a meaningful, pretty
board file, and does not have to carry forward the uncomfortable layer numbering which we
are using in the BOARD structure now.  We have been wanting to clean up that uncomfortable
layer numbering for years.  There are mapping functions.  Even the LAYER configuration
dialog window was written upside down in FULL ANTICIPATION that this would get fixed. 
Basically the idea was to invert the stack numbering scheme and to close the gap in one of
the outermost copper layers.  Look around, you can find some ugly mapping functions which
show what needs to be done.

If in doubt, do what is done in the *.dsn specctra export fomat.  They understood layers,
at least copper layers.


My suggestion on any layer map is to:

a) preserve the specctra/freerouter stuff I put in there in legacy format.

b) fix up the layer numbering NOW, make the board file pretty, prettier than BOARD
layering is now, then fix PCBNEW when convenient.

c) be prepared to simply use the clean numeric layer number in the *.kicad_brd wires,
which is an index into the layer map, except when the CTL_CLIPBOARD flag is given to
TRACK::Format() in which case you might either have to give the entire layer element dope
that you put out in the layer map, as part of the clipboard output, so you can transport
this wire from one BOARD to another.


Why "wire"s not "segment"s?
  Google for "printed wire board", it was in vogue before PCB came into play, about 2 days
before I was board way back in the 1900's.


Why *.kicad_pcb over *.kicad_brd ?


Because brd is something that lays eggs and flies.


Off to work.




Follow ups

References