Lil Brother LLC wrote: > Steve, > > This seems to be a simple problem, but trust me when I say it is not. The > root of the problem is CAD libraries. Many people input foot prints into > libraries, and do not realize they MUST be on center. If they are not, the > centroid data from the CAD is wrong. Also, some libraries are drawn on > origin (pin 1) and not on centroid. Taking a file, inputting it, then > fixing it is just as time consuming as hand teaching. Programs like Eagle > and such have so many user drawn libraries, the Centroid data is all but > worthless. > > I'm sure even people here have drawn parts into the library off center. It > would take an enormous effort to go back and change the libraries. Most > people are not going to, so I'm left with the accurate data I get, which > will be the Gerber, however dumb it is. I have thought of offering a > discount for anyone who supplies accurate Centroid data, but for the ones > who do not know......the argument will begin. They will have a part someone > else drew....and want the discount, because their parts were drawn > correctly. It is just time consuming to separate the good from the bad.
This doesn't address your bigger picture problem, but the xy data from pcb actually does not depend on where the center is drawn in the library. It is calculated as the centroid of the pin/pad centers. So for any symmetric part, I can actually say with some confidence that the center will be correct in pcb's output. The orientation is based on an algorithm that looks for which quadrant pin #1 is in and then has some rules for what you do if it is along an axis. The place this will fail is on something like an SOT-23 where the reported location will be skewed more towards the side with 2 pins since thats where the pin/pad centroid is. If you have thoughts on improvements to the algorithm I'm open to suggestions. The inputs we currently have for such an algorithm are accurate sizes and locations of all pins and pads for each element along with pin/pad numbers. Silk information is also available but I consider that to be unreliable since it depends on the library and who drew it. Yes, the pin/pad information also depends on the library but if someone put them in the wrong spot they they've already screwed up their board. We do not have rotation information. It has to be inferred from the pin/pad locations. I can't recall if we have center information based on where the center was set in the library but of course that information is suspect at best since many users don't pay any attention to where the origin is in their footprints. So, again, this only helps with pcb output but I'd still like to see pcb generate the most useful output for assembly houses. > The only good thing about doing it as above, once I get a good file from a > person, I can pretty much bet, the rest will be correct. > > It is something to think about.....maybe a little incentive for that. But > there are still programs which do not output centroid data, believe it or > not. Unfortunately....there are also people using those. Since I've seen people in the last year still using RS274-D and an external aperture list, I'd unfortunately believe it. So how do these commercial tools work from a user perspective? You point it at a set of gerber files and then what? I wonder if something that took component outlines from an assembly library (i.e. something known to accurately represent the components from a mechanical point of view and controlled by the assembly house) and dropped them on the board or let a user drag them onto a board and then had some magic which lined them up with solderpaste openings would work. In other words, a user gets them close and now that the components are close to the right place it becomes easier for the software to make that last bit of adjustment. > > James Long > Owner/Designer > Lil Brother LLC (Instrument Division) -Dan _______________________________________________ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user