Re: gEDA-user: new footprint guidelines

2010-09-30 Thread Steven Michalske





On Sep 30, 2010, at 7:00 AM, Armin Faltl armin.fa...@aon.at wrote:

 Yes and No. The number of practical orientations a board and part can have 
 are very limited,
 but to check them, until now a human will be involved. True automation 
 readines requires
 that you can feed the file into the machine, the machine knows, where it's 
 fixtures are
 and therefore will correctly transform design positions to machine positions 
 without
 manual intervention. The operator just has to follow the rule, that the (0, 
 0) marking
 on the board (to be invented) has to be at the fixture with the red dot.
 
 To help everyone involved, I include 'TOP' and 'BOT' in my copyright notices, 
 written
 in copper. My current board isn't square, but then I could state, that the 
 baseline
 of the copyright is parallel to X-axis in the XYRS file.

Would registration marks help with this?   Three points forming approximately a 
90 degree corner. Would give the ability to detect +x,+y
I know our smt lines heavily depend on these marks.
Steve


___
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-09-30 Thread Steven Michalske





On Sep 30, 2010, at 7:43 AM, Rick Collins gnuarm.2...@arius.com wrote:

 Trouble is that the machine doesn't know how the parts are oriented in the 
 feeders.  Rather than trust that the system works if they get each piece 
 right, they manually run through an sample of each component type to make 
 sure it is placed on the board right.  That is all they care about and you 
 only do this once for a given board.  They call this setup and charge a 
 couple of hundred dollars for it.  Not enough of a charge to worry about and 
 it gives them a warm fuzzy feeling that they aren't screwing up.
 

I know that the newer placement machines have cameras to detect orientation of 
the parts.


___
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-09-30 Thread Steven Michalske





On Sep 30, 2010, at 7:43 AM, Rick Collins gnuarm.2...@arius.com wrote:

 they manually run through an sample of each component type to make sure it is 
 placed on the board right.  That is all they care about and you only do this 
 once for a given board.  They call this setup and charge a couple of 
 hundred dollars for it.  Not enough of a charge to worry about and it gives 
 them a warm fuzzy feeling that they aren't screwing up.

My favorite is when they place the parts onto the boards with double stick tape 
and measure each part by hand.


___
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-09-30 Thread ineiev

Great!

Now let me suggest some kind of Patchlevel 0.

Most of these patches deal with well-known issues
discussed on the list or on the tracker; some of them
are years old.

Of course, there are lots of more patches e.g. on the tracker;
I just randomly picked some obvious ones that were not likely
to cause strong objections.

The developers have no resources to push them into master;
however, the users could collect them and release inofficially.

If somebody is interested, we could discuss what we want
to be included, and what we don't; if nobody is interested,
I'll just stack more patches than otherwise expected and
use them locally.

Best wishes,
Ineiev
From 9b8d3cda761b1a719d10768cd34d4908c70023a5 Mon Sep 17 00:00:00 2001
From: Ineiev ine...@users.berlios.de
Date: Sun, 12 Sep 2010 08:14:14 +
Subject: [PATCH 01/12] RectPoly: check arguments to avoid empty polygons

fixes PCB segfaults when running DRC #3064413
---
 src/polygon.c |4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/polygon.c b/src/polygon.c
index 586e8cc..72e65d5 100644
--- a/src/polygon.c
+++ b/src/polygon.c
@@ -330,8 +330,8 @@ RectPoly (LocationType x1, LocationType x2, LocationType 
y1, LocationType y2)
   PLINE *contour = NULL;
   Vector v;
 
-  assert (x2  x1);
-  assert (y2  y1);
+  if (x1 = x2 || y1 = y2)
+return NULL;
   v[0] = x1;
   v[1] = y1;
   if ((contour = poly_NewContour (v)) == NULL)
-- 
1.6.5.2

From 1e25441acaa40ceff0518e71b6d5f87cbc322bb8 Mon Sep 17 00:00:00 2001
From: Ineiev ine...@users.sourceforge.net
Date: Fri, 20 Feb 2009 20:19:01 +0300
Subject: [PATCH 02/12] misfix annoying decimals bug 1741659

bug report by Kai-Martin Knaak

also make polar coordinates less verbous
---
 src/hid/gtk/gui-misc.c |   88 ++-
 1 files changed, 63 insertions(+), 25 deletions(-)

diff --git a/src/hid/gtk/gui-misc.c b/src/hid/gtk/gui-misc.c
index a607a69..5ffbbd6 100644
--- a/src/hid/gtk/gui-misc.c
+++ b/src/hid/gtk/gui-misc.c
@@ -1,10 +1,8 @@
-/* $Id$ */
-
 /*
  *COPYRIGHT
  *
  *  PCB, interactive printed circuit board design
- *  Copyright (C) 1994,1995,1996 Thomas Nau
+ *  Copyright (C) 1994,1995,1996,2009 Thomas Nau
  *
  *  This program is free software; you can redistribute it and/or modify
  *  it under the terms of the GNU General Public License as published by
@@ -42,8 +40,6 @@
 #include dmalloc.h
 #endif
 
-RCSID ($Id$);
-
 #define DEFAULT_CURSORSHAPEGDK_CROSSHAIR
 
 #define CUSTOM_CURSOR_CLOCKWISE(GDK_LAST_CURSOR + 10)
@@ -549,6 +545,53 @@ ghid_set_status_line_label (void)
   ghid_status_line_set_text (text);
 }
 
+/* returns an auxiliary value needed to adjust mm grid.
+   the adjustment is needed to prevent ..99 tails in position labels.
+
+   All these are a workaround to precision lost
+   because of double-integer transform
+   while fitting Crosshair to grid in crosshair.c
+
+   There is another way to fix: report mm dimensions with %.3f, like
+   in the Lesstif hid; but this reduces the information
+ */
+static double
+ghid_get_grid_factor(void)
+{
+ /* when grid units are mm, they shall be an integer of
+1 mm / grid_factor_per_mm */
+  const int grid_factor_per_mm = 1;/*min grid is .1 um  PCB unit*/
+  if (Settings.grid_units_mm)
+return floor (PCB-Grid * COOR_TO_MM * grid_factor_per_mm +.5) /
+grid_factor_per_mm;
+  return 0;
+}
+/* transforms a pcb coordinate to selected units
+   adjusted to the nearest grid point for mm grid */
+static double
+ghid_grid_pcb_to_units (double x, double grid_factor)
+{
+  double x_scaled = (Settings.grid_units_mm? COOR_TO_MM: 1./100) * x;
+  double nearest_gridpoint;
+
+  if (PCB-Grid  4.5)/*nothing to adjust: the grid is too fine */
+return x_scaled;
+  /* adjustment is not needed for inches
+ probably because x/100 is always 'integer' enough */
+  if (!Settings.grid_units_mm)
+return x_scaled;
+  nearest_gridpoint = floor (x / PCB-Grid + .5);
+  /* honour snapping to an unaligned object */
+  if (fabs (nearest_gridpoint * PCB-Grid - x)  1)
+return x_scaled;
+  /* without mm-adjusted grid_factor
+ (return floor (x / PCB-Grid + .5) * PCB-Grid * COOR_TO_MM),
+ the bug appears for 0.1 or 0.05 mm grid at coordinates more than 4000 mm.
+ grid_factor makes the stuff work at least up to 254 m,
+ which is 100 times more than maximum board size as of Aug 2010. */
+  return nearest_gridpoint * grid_factor;
+}
+
 /* ---
  * output of cursor position
  */
@@ -556,32 +599,27 @@ void
 ghid_set_cursor_position_labels (void)
 {
   gchar text[128];
+  int prec = Settings.grid_units_mm ? 4: 2;
+  double grid_factor = ghid_get_grid_factor();
 
   if (Marked.status)
-{double scale, dx, dy, r, a;
-  scale = Settings.grid_units_mm ? COOR_TO_MM: 1. / 100;
-  dx = (Crosshair.X - Marked.X) * scale;
-  dy = (Marked.Y - 

Re: gEDA-user: pcb-20100929 released

2010-09-30 Thread DJ Delorie

I suggest we give this release a few weeks stress-test, then do
another late October, focusing on bug fixes.  I'd like to make it
build for windows much easier too.  After Oct 17th I'll have more time
for it anyway.

Perhaps frequent patch releases on this source base would make
sense.  Every 2-3 months?  We can continue with the pcb-MMDD
scheme for now, until we've dealt with a majority of the known bugs
and old patches in the trackers.

Big changes (i.e. redesigns and new features) should be done in git
branches, tested, released as alpha, then merged just after a patch
release.

When enough big changes accumulate, we release pcb-4.0.0 and switch
to the pcb-major.minor.patchlevel scheme.


___
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-09-30 Thread Armin Faltl



Steven Michalske wrote:

Would registration marks help with this?   Three points forming approximately a 
90 degree corner. Would give the ability to detect +x,+y
I know our smt lines heavily depend on these marks.
Steve
  

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. It's very good for machine vision, gives sub-pixel accuracy.

Since they allow to measure board manufacturing distortions, I'd eventually
place 3-4 marks along each side. Using different marks to indicate axes.


regmark.pcb
Description: application/pcb-layout


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


Re: gEDA-user: Zero length pins

2010-09-30 Thread John Doty

On Sep 28, 2010, at 7:25 PM, kai-martin knaak wrote:

 
 One of the things that attracted me to gEDA years ago was how
 clean and concise the documentation was.
 
 Coincidently, some of the my most frustrating experiences with geda/pcb 
 were due to a lack of readily available documentation ;-)

You and I have very different ideas of what constitutes good documentation. If 
I'm visiting a new country, a map is far more useful that a book of narrative 
directions to get from place to place. Give me a little narrative to get me 
started, then give me a map and let me figure it out. That's the high 
productivity route, and I'm tremendously grateful that gEDA, bucking the trend 
to comfortable fritterware, supports it. Fortunately, gEDA isn't commercial 
software, so user comfort can have lower priority than productivity.

 
 
 Works fine with UTF-8 characters, although I don't know how to
 make it work right to left or top to bottom.
 
 Well, Hebrew left to right is like Latin script written backwards. 

Sure. I worked on an early Hebrew/Arabic document processing system in the 
1970's. It's unclear how to do that within gEDA and its underlying graphical 
tools.

 Also, try to make auto number use Japanese digits...

Except that Japanese engineers don't use kanji for that purpose anyway. Writing 
R三 for a refdes would be like Rthree in English. Japanese would use R3. Is 
there any engineering culture that uses a system different from the 
latin-arabic system commonly used for this like this?

 
 
 Multi line text cannot be 
 centered or flushed to the right.
 
 Fancy word processing features should not be included in a
 schematic drawing program. They are a distraction.
 
 Text alignment is hardly fancy word processing. Decent looking comments 
 are a requirement when it comes to incorporate a schematic in public 
 documents. Think PHD thesis, presentations, manuals, proposals...

I import gEDA graphics into TeX for this purpose. Let gEDA do what it does 
best, let TeX do what it does best.

 
 
 Support for unusual graphics does not belong in gschem. They
 can be imported in the rare cases they are needed.
 
 A company logo is not exactly a rare case. Also, publication quality 
 symbols are more like fonts than like stick drawings.

But gEDA supports the import of graphics, so you can do this.

 
 
 Well, I just drew the following, which would claim is impossible:
 
 Well, an imported pixel format does not exactly fit to the workflow of 
 an otherwise completely vectorized suite.

But that's inconsistent with your view above. If I want my company logo on a 
schematic, I must import pixels: it's based on an astronomical image. 
Similarly, the stick drawings you complain about are a consequence of using a 
vector format.

 For example, printing to PDF 
 via cups-pdf barfs on PNGs. 

But export of graphics to PS works pretty well in gEDA. Specialized tools need 
not and should not support every graphics format. There are plenty of graphics 
conversion tools.

 
 Real flexibility would allow to include vector graphics and/or a way to 
 do formulas. The way xfig incorporates LaTeX may be worth a closer 
 look.

That's real *inflexibility*. gEDA should work with tools like LaTeX without any 
specialized connection. Users should not be required to use LaTeX, make, or any 
other specific tool, but should be able to easily get gEDA to cooperate with 
these tools, and  others, if they fit their flow.

John Doty  Noqsi Aerospace, Ltd.
http://www.noqsi.com/
j...@noqsi.com




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