Re: gEDA-user: new footprint guidelines

2010-10-03 Thread Armin Faltl



Steven Michalske wrote:

As you guys continue to debate this...  Look at how pcb makes the xyrs data 
files. You'll findout that it generates it from the pcb file not the library.  
It takes the center of the part from the pins and pads.  Then it puts pin 1 
somewhere consistent.  See the source for details.
  

Thank you - finding out this information is what I meant with
I'll have to read, how the footprint coordinates
and placement in the board influence the actual values.

It would be interesting, whether a mark statement in the footprint is 
ignored

as well and how the rotation is computed - can you hint me to the relevant
source files please?


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: new footprint guidelines

2010-10-03 Thread Armin Faltl

Rick Collins wrote:

At 05:34 PM 10/1/2010, you wrote:

Rick Collins wrote:

If for whatever reason the designer used 2 different footprints for
the same part occuring
several times on a board, if the footprints are position/rotation
inconsisten...

 I have no idea why anyone would do that.

Real world example:
PhD student Foo designs some super noiseless detector circuit. The
measurements turn out a success. Researcher Bar, a long time friend who
works on some unrelated project, asks Foo for help to get him started on
noiseless detector. PhD Foo gladly provides the schematic and layout. 
For
his project Bar needs to add some minor features to the hardware. Of 
course,

she uses a different local library than Foo ...


 Sure the designer can totally screw up a design.

I wouldn't call this totally screwed.


If you work on a design and use a different, incompatible library from 
the original without checking for consistency, yes, the designer 
totally screwed up.
Again, yes and no: in our present state of standardization probably. But 
at least
the designer didn't screw up alone: the guy who did much more is the 
library builder.
That one is the person, responsible for conformance to standards in the 
first place.


And that's our subject in the thread: new footprint guidelines - what 
is considered
trusted fact in construction involving cooperation must be based on 
standards

- and they evolve. There was a time, metric screws or Whitworth screws etc.
didn't exist. Every supplier defined screw gages as he pleased and a 
designer,

who didn't check, that the nuts fitted on the bolts, screwed it up.


I really have no idea how things work in the gEDA/PCB world.  With 
FreePCB the library has a default orientation for parts and there is a 
centroid vector to allow the pin 1 orientation to be set compatibly 
with the Gerber files.  If you use someone else's design you need to 
verify that their library parts were done correctly or you need to use 
the same footprints which are a part of the layout and so are 
available.  There is no reason to screw up something as simple as this.
How the Gerber file looks depends on the footprint definition. Once one 
knows *exactly*

a) how the transformations work
b) that all libraries/generators(/custom made footprints) conform to a 
sensible standard
checking is as superfluous as with screw diameters and pitches and 
before that point

I don't believe it's simple enough.


Oh, I almost forgot, NEVER ask a PhD anything to design PCBs.  What 
the heck are you thinking???



As I may go the route to PhD if I find the time and a worthwhile subject,
I'm glad we are talking about this now, before I have started ;-)

Btw. to achieve standard conformance, the gschem symbols of polar 
devices have to be
checked/reworked as well. The best solution probably is, to explicitly 
attribute

conformat libs and keep them under their own section on gedasymbols.org.


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: new footprint guidelines

2010-10-03 Thread Armin Faltl



Kai-Martin Knaak wrote:

I think registration marks help a lot. Attached you find my favourite
mark, that regrettably can't be converted into a footprint, because it 
contains polygons.



I converted it to a footprint anyway ;-)
  

Nice work, thanks



___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: new footprint guidelines

2010-10-03 Thread Rick Collins

At 08:24 AM 10/3/2010, you wrote:

Rick Collins wrote:
I really have no idea how things work in the gEDA/PCB world.  With 
FreePCB the library has a default orientation for parts and there 
is a centroid vector to allow the pin 1 orientation to be set 
compatibly with the Gerber files.  If you use someone else's design 
you need to verify that their library parts were done correctly or 
you need to use the same footprints which are a part of the layout 
and so are available.  There is no reason to screw up something as 
simple as this.
How the Gerber file looks depends on the footprint definition. Once 
one knows *exactly*

a) how the transformations work
b) that all libraries/generators(/custom made footprints) conform to 
a sensible standard
checking is as superfluous as with screw diameters and pitches and 
before that point

I don't believe it's simple enough.


I really don't know what you are talking about.  The footprint will 
show up on your layout in some orientation.  That is the orientation 
it will have on the board in the Gerber files.  How will the 
transformations affect that?  What you see is what you get.


You are making this way, way, WAY too complicated.

Rick 




___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: Modifications to the main-menu of PCB

2010-10-03 Thread John Griessen

On 10/02/2010 07:35 PM, kai-martin knaak wrote:

Yes, to fix this kind of inconsistency, only one application can keep
its traditional key binding. The fix will break long standing habits of
power users.


Not always.  I use a menu.res that makes gschem and pcb keys similar already :-)
Other power users probably know how to use menu.res and can adapt their own
key bindings to suit.

John


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: new footprint guidelines

2010-10-03 Thread Armin Faltl

Rick Collins wrote:


I really don't know what you are talking about.  The footprint will 
show up on your layout in some orientation.  That is the orientation 
it will have on the board in the Gerber files.  How will the 
transformations affect that?  What you see is what you get.


This (planar, linear rigid body) transformation is just one word for 
translation plus rotation.

Sorry, if this was PhD talk - I'm too used to it.


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: new footprint guidelines

2010-10-03 Thread Armin Faltl

Rick Collins wrote:

At 08:24 AM 10/3/2010, you wrote:

Rick Collins wrote:
I really have no idea how things work in the gEDA/PCB world.  With 
FreePCB the library has a default orientation for parts and there is 
a centroid vector to allow the pin 1 orientation to be set 
compatibly with the Gerber files.  If you use someone else's design 
you need to verify that their library parts were done correctly or 
you need to use the same footprints which are a part of the layout 
and so are available.  There is no reason to screw up something as 
simple as this.
How the Gerber file looks depends on the footprint definition. Once 
one knows *exactly*

a) how the transformations work
b) that all libraries/generators(/custom made footprints) conform to 
a sensible standard
checking is as superfluous as with screw diameters and pitches and 
before that point

I don't believe it's simple enough.


I really don't know what you are talking about.  The footprint will 
show up on your layout in some orientation.  That is the orientation 
it will have on the board in the Gerber files.  How will the 
transformations affect that?  What you see is what you get.
Yes, what I see is what I get. And to see it, I have to read the source 
code of the CAD
system, unless it's stated somewhere more accessible - like in a 
standard ;-)

E.g., where is the centroid of a 3-leged part? Is it:
a) the center of the bounding box of the pads
b) the center of the bounding box of the pad centers
c) the center of gravity of the pad centers (each weight 1)
d) the center of gravity of the pad areas
e) (0, 0) in the footprint definition file (or a designated vector inthere)
...

That's what I need to know, before I can trust libraries and an XYRS files.
Tbh, I'm not particularely happy, that this seems to be handled by some
black magic withing 'pcb' instead of the library definitions.

Armin


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: new footprint guidelines

2010-10-03 Thread Rick Collins

At 06:09 PM 10/3/2010, you wrote:

Rick Collins wrote:

At 08:24 AM 10/3/2010, you wrote:

Rick Collins wrote:
I really have no idea how things work in the gEDA/PCB 
world.  With FreePCB the library has a default orientation for 
parts and there is a centroid vector to allow the pin 1 
orientation to be set compatibly with the Gerber files.  If you 
use someone else's design you need to verify that their library 
parts were done correctly or you need to use the same footprints 
which are a part of the layout and so are available.  There is no 
reason to screw up something as simple as this.
How the Gerber file looks depends on the footprint definition. 
Once one knows *exactly*

a) how the transformations work
b) that all libraries/generators(/custom made footprints) conform 
to a sensible standard
checking is as superfluous as with screw diameters and pitches and 
before that point

I don't believe it's simple enough.


I really don't know what you are talking about.  The footprint will 
show up on your layout in some orientation.  That is the 
orientation it will have on the board in the Gerber files.  How 
will the transformations affect that?  What you see is what you get.
Yes, what I see is what I get. And to see it, I have to read the 
source code of the CAD

system, unless it's stated somewhere more accessible - like in a standard ;-)


That's what you don't get.  You don't need to know diddly about the 
CAD system.  The CAD system will produce output files that match your 
layout as you have prepared it.  If it does anything else, it is very 
broken.  At most you might want to verify that the data in the XYRS 
file matches the Gerber files for a small number of representative 
parts.  Why do you think you need to verify the results by reverse 
engineering the code???  That is the stuff I am talking about over 
thinking the problem.   All you need to do is look at the output.




E.g., where is the centroid of a 3-leged part? Is it:
a) the center of the bounding box of the pads
b) the center of the bounding box of the pad centers
c) the center of gravity of the pad centers (each weight 1)
d) the center of gravity of the pad areas
e) (0, 0) in the footprint definition file (or a designated vector inthere)
...

That's what I need to know, before I can trust libraries and an XYRS files.
Tbh, I'm not particularely happy, that this seems to be handled by some
black magic withing 'pcb' instead of the library definitions.


When you find out what PCB does, a through e, what will that tell 
you?   If you don't know what the standard is, how will you know if 
your design is correct?


Rick 




___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: pcb-20100929 released

2010-10-03 Thread Cesar Strauss

On 09/29/2010 11:58 PM, DJ Delorie wrote:

If someone can get the mingw builds working again, I'd appreciate that
- neither the win32/build_pcb script nor a fedora mingw cross compiler
work for me.


After porting pcb_spawnvp (in src/action.c) to Windows, it built fine on 
Ubuntu using my cross-compiler build script (minipack). I'll work on a 
patch. Fortunately, the Windows API already provides an implementation 
of spawnvp.


Regards,
Cesar



___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: new footprint guidelines

2010-10-03 Thread Gabriel Paubert
On Mon, Oct 04, 2010 at 12:09:22AM +0200, Armin Faltl wrote:
 Rick Collins wrote:
 At 08:24 AM 10/3/2010, you wrote:
 Rick Collins wrote:
 I really have no idea how things work in the gEDA/PCB world.  With  
 FreePCB the library has a default orientation for parts and there 
 is a centroid vector to allow the pin 1 orientation to be set  
 compatibly with the Gerber files.  If you use someone else's design 
 you need to verify that their library parts were done correctly or  
 you need to use the same footprints which are a part of the layout  
 and so are available.  There is no reason to screw up something as  
 simple as this.
 How the Gerber file looks depends on the footprint definition. Once  
 one knows *exactly*
 a) how the transformations work
 b) that all libraries/generators(/custom made footprints) conform to  
 a sensible standard
 checking is as superfluous as with screw diameters and pitches and  
 before that point
 I don't believe it's simple enough.

 I really don't know what you are talking about.  The footprint will  
 show up on your layout in some orientation.  That is the orientation  
 it will have on the board in the Gerber files.  How will the  
 transformations affect that?  What you see is what you get.
 Yes, what I see is what I get. And to see it, I have to read the source  
 code of the CAD
 system, unless it's stated somewhere more accessible - like in a  
 standard ;-)
 E.g., where is the centroid of a 3-leged part? Is it:
 a) the center of the bounding box of the pads
 b) the center of the bounding box of the pad centers
 c) the center of gravity of the pad centers (each weight 1)
 d) the center of gravity of the pad areas
 e) (0, 0) in the footprint definition file (or a designated vector inthere)

Take as an example a SOT89 transistor like NXP's BCX52-16 (I've 
just used one in a recent design) and look at the recommended footprints: 

Package page: http://www.nxp.com/#/page/content=[f=/packages/SOT89.xml]
Package drawing: http://www.nxp.com/documents/outline_drawing/sot089_po.pdf
Reflow footprint: http://www.nxp.com/documents/reflow_soldering/sot089_fr.pdf

I'm not sure what point a pick and place machine would like to
use as centroid, probably the crossing of the two axes in the
last drawing. This apparently rules out options b, c, and d, but
seems to work with option a.
 
I'm guessing here, but pick and place machine have to orientate the 
part very fast, so it is important that they pick the component from
a principal axis of inertia. It is not always easy to determine where
the axis lies when the component is asymmetric, which is frequent with
power components.

For another example, look a DPAK or D2PAK components (SOT404, SOT428, etc).
I'm not even sure that they option a) would work, but it might be 
a good default, provided you can override it.

Regards,
Gabriel


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: new footprint guidelines

2010-10-03 Thread Rick Collins

At 10:23 PM 10/3/2010, you wrote:

On Mon, Oct 04, 2010 at 12:09:22AM +0200, Armin Faltl wrote:
 Rick Collins wrote:
 At 08:24 AM 10/3/2010, you wrote:
 Rick Collins wrote:
 I really have no idea how things work in the gEDA/PCB world.  With
 FreePCB the library has a default orientation for parts and there
 is a centroid vector to allow the pin 1 orientation to be set
 compatibly with the Gerber files.  If you use someone else's design
 you need to verify that their library parts were done correctly or
 you need to use the same footprints which are a part of the layout
 and so are available.  There is no reason to screw up something as
 simple as this.
 How the Gerber file looks depends on the footprint definition. Once
 one knows *exactly*
 a) how the transformations work
 b) that all libraries/generators(/custom made footprints) conform to
 a sensible standard
 checking is as superfluous as with screw diameters and pitches and
 before that point
 I don't believe it's simple enough.

 I really don't know what you are talking about.  The footprint will
 show up on your layout in some orientation.  That is the orientation
 it will have on the board in the Gerber files.  How will the
 transformations affect that?  What you see is what you get.
 Yes, what I see is what I get. And to see it, I have to read the source
 code of the CAD
 system, unless it's stated somewhere more accessible - like in a
 standard ;-)
 E.g., where is the centroid of a 3-leged part? Is it:
 a) the center of the bounding box of the pads
 b) the center of the bounding box of the pad centers
 c) the center of gravity of the pad centers (each weight 1)
 d) the center of gravity of the pad areas
 e) (0, 0) in the footprint definition file (or a designated vector inthere)

Take as an example a SOT89 transistor like NXP's BCX52-16 (I've
just used one in a recent design) and look at the recommended footprints:

Package page: http://www.nxp.com/#/page/content=[f=/packages/SOT89.xml]
Package drawing: http://www.nxp.com/documents/outline_drawing/sot089_po.pdf
Reflow footprint: http://www.nxp.com/documents/reflow_soldering/sot089_fr.pdf

I'm not sure what point a pick and place machine would like to
use as centroid, probably the crossing of the two axes in the
last drawing. This apparently rules out options b, c, and d, but
seems to work with option a.

I'm guessing here, but pick and place machine have to orientate the
part very fast, so it is important that they pick the component from
a principal axis of inertia. It is not always easy to determine where
the axis lies when the component is asymmetric, which is frequent with
power components.

For another example, look a DPAK or D2PAK components (SOT404, SOT428, etc).
I'm not even sure that they option a) would work, but it might be
a good default, provided you can override it.


Pick and place machine operators don't want you to tell them how to 
pick a part.  All they want from you is to tell them where on the 
board to put it.  That is why the XYRS file uses the centroid and not 
the center of mass.


The centroid is just the center of the extents of the part or the 
footprint.  It doesn't matter if the part has one, two, three or 
three hundred pins.  Just draw the outline of the entire part and 
find the center.  There are some parts where this can be a bit 
tricky, but those would be some really odd asymmetric switches and 
the like.  I know of no ICs that need anything more than a 
rectangular outline to find the centroid.


I don't know why there is a need to reinvent PCB assembly.  It is 
kept simple just because the more complex it is made, the less likely 
it will work right.


Rick  




___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: pcb-20100929 released

2010-10-03 Thread DJ Delorie

 After porting pcb_spawnvp (in src/action.c) to Windows, it built fine on 
 Ubuntu using my cross-compiler build script (minipack). I'll work on a 
 patch. Fortunately, the Windows API already provides an implementation 
 of spawnvp.

Excellent!  If you could put update the readme and built script for
windows high on the priority list, it will save us much headache in
the future.


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user