[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: gEDA-user: Removing soldermask over traces/polygons in PCB?



Harry,

The board I used this for had relatively few parts. (5) SO8, (1) 100 pin
QFP the usual number of inductors, capacitors and resistors. Plus it had
two connectors that had to be at 45 degree angles to each other. For
those conditions I didn't observe any problems with the netlist/rats
nest or DRC checking. Could you be more specific so that if I need this
again in the future I could look into improving the effected routines.

By the way. Putting parts on at weird angles isn't to be encouraged.
Some pick and place machines like to have the components placed in only
one direction and 90 degrees with respect to that first direction.
Putting parts on at other angles could cause the assembly shop to hand
place the components. Driving the cost of assembly up.

Steve Meier




On Thu, 2005-01-20 at 16:09, harry eaton wrote:
> There are more problems than just changing create.c. The connection finding
> routines which are used for netlist checking, DRC testing etc. will not work
> properly with diagonal pads if they have squared ends. This is the real
> reason that diagonal pads are forbidden.
> 
> harry
> 
> ----- Original Message -----
> From: "Steve Meier" <smeier@xxxxxxxxxxxxxxxxxxx>
> To: "geda user" <geda-user@xxxxxxxx>
> Sent: Wednesday, January 19, 2005 3:46 PM
> Subject: Re: gEDA-user: Removing soldermask over traces/polygons in PCB?
> 
> 
> > Diagonal pads can be made but you have to do a simple modification to
> > the pcb code.
> >
> > in create.c comment out the following lines //
> >
> > Then you can do diagonal pads. I understand why they are discouraged but
> > being able to rotate a conector 45 degrees was critical for one board!
> >
> > Steve Meier
> >
> > P.S. This is why I love open source... If you don't like the rules...
> > you can change them.
> >
> > /*
> > --------------------------------------------------------------------------
> -
> >  * creates a new pad in an element
> >  */
> > PadTypePtr
> > CreateNewPad (ElementTypePtr Element,
> >       Location X1, Location Y1, Location X2, Location Y2,
> >       BDimension Thickness, BDimension Clearance, BDimension Mask,
> >       char *Name, char *Number, int Flags)
> > {
> >   PadTypePtr pad = GetPadMemory (Element);
> >
> >   /* copy values */
> >  // if (X1 != X2 && Y1 != Y2)
> >  //  {
> >  //    Message ("Diagonal pads are forbidden!\n");
> >  //    return NULL;
> >  //  }
> > //  pad->Point1.X = MIN (X1, X2); /* works since either X1 == X2 or Y1
> > == Y2 */
> > //  pad->Point1.Y = MIN (Y1, Y2);
> > //  pad->Point2.X = MAX (X1, X2);
> > //  pad->Point2.Y = MAX (Y1, Y2);
> >   pad->Thickness = Thickness;
> >   pad->Clearance = Clearance;
> >   pad->Mask = Mask;
> >   pad->Name = MyStrdup (Name, "CreateNewPad()");
> >   pad->Number = MyStrdup (Number, "CreateNewPad()");
> >   pad->Flags = Flags & ~WARNFLAG;
> >   pad->ID = ID++;
> >   pad->Element = Element;
> >   return (pad);
> > }
> >
> >
> >
> >
> > On Wed, 2005-01-19 at 10:20, Xtian Xultz wrote:
> > > Em Qua 19 Jan 2005 15:03, Steve Meier escreveu:
> > > > Do you really want bare copper or would bare copper with the surface
> > > > finish be ok? If so create one or more "devices", with land patterns,
> to
> > > > represent the exposed contacts. Then place these phony devices on the
> > > > board. I like to put them in the schematic, perhaps connected to a
> > > > ground plane, as well.
> > >
> > > Well, there is a problem because I cant make device with land pattern in
> the
> > > diagonal orientation, so the line must be made with horizontal or
> vertical
> > > lines only. And there is a problem, because that kind of lines is to
> conduct
> > > high levels of currents, and using only 90 degrees curves makes the
> > > inductance be indreased, and of course the line becomes longer. And its
> a
> > > boring process, because I must represent every piece of land pattern in
> the
> > > schematic (because of the netlist) and must create every piece too. Its
> not a
> > > solution.
> > >
> > > I made a suggestion on the pcb site, without answer, I dont know how
> difficult
> > > is it to implement, to made a way to edit the solder mask with lines and
> > > poligons, using some boolean operations. Like, enabling the show of the
> > > soldermask, when selecting the line command, the line will erase the
> > > soldermask where I draw it. To make it perfect, the soldermask must be
> drawn
> > > with transparency, these function is in the PCB configuration file for
> the
> > > layers.
> > >
> > > >
> > > > Steve Meier
> > > >
> > > > On Wed, 2005-01-19 at 03:26, Xtian Xultz wrote:
> > > > > Em Qua 19 Jan 2005 01:13, Randall Nortman escreveu:
> > > > > > I would like to create areas of bare copper, with no soldermask.
> In
> > > > > > particular, I'd like to create grounded guard bands around the
> edges
> > > > > > of my board to protect against ESD during handling of the board.
> To
> > > > > > see what I'm trying to do, have a look at the last two slides of:
> > > > > >
> > > > > >   http://www.cae.wisc.edu/~benedict/pcbpres.pdf
> > > > > >
> > > > > > As far as I can tell, only pads seem to clear the soldermask.  Is
> it
> > > > > > possible to get PCB to clear the soldermask over a trace or
> polygon?
> > > > > >
> > > > > > Thanks,
> > > > > >
> > > > > > Randall Nortman
> > > > >
> > > > > AFAIK, no. I sometimes do it to increase the current capability of a
> > > > > trace. To do it, I use the postscript output, convert it to .sk with
> > > > > pstoedit and opens it with sketch, and there I edit the way I want
> (and
> > > > > place some logos, figures, and stuff). And then export to .ps and
> send to
> > > > > my fab.
> >
>