gEDA-dev: Diode symbols in GSchem and PCB
DJ Delorie
dj at delorie.com
Tue Dec 12 12:31:49 EST 2006
> True. But my point is this: Maintaining a real parts library is a
> full time job. And it's not fun -- it's drudgery.
I agree. I don't expect us to *do* that job, but I think we should
provide a *way* to do that job. Me, I'd rather do that drudgery in
one place, and re-use it, without making my symbol library unwieldy.
> That is to say: Our current implementation places the entire burden
> of maintaining the parts library on the user,
Let's not confuse "maintaining the library" and "providing tools to
maintain the library". I'm only advocating the latter.
> > Thus, *our* way involves reading the spec sheet *every time*. We have
> > no mechanism for caching this information, other than to create a
> > unique symbol/footprint for each part number, resulting in hundreds of
> > diodes, dozens of NAND gates, millions of resistors, etc.
>
> Well, we do have a mechanism.
Like I said, "other than to create a unique ... for each part number"
I only want two dual-input NANDs in my library (one with inverted
inputs, one with inverted outputs), not a dozen. When I'm starting a
design, I want to plop down a comparator without worrying (yet)
whether it's an ADCMP371 or an LMV7239 (same symbol, same footprint,
different pinouts).
> I disagree. Our system is dead-nuts simple -- just edit the symbol
> file to provide the corrrect pinouts (if the pre-existing sym file is
> wrong),
What if it's right? Then you end up with two symbols. How do you
pick a generic NAND gate if you don't yet know which of the seventeen
pinouts you'll use? This comes up often - see the posts about people
asking about MCUs with alternate packaging resulting in different pin
numberings. Our current solution, "make another symbol", IMHO sucks.
Making another symbol is similar to saying "we start with light
symbols, but end up with heavy symbols". This implies that neither
pure light nor pure heavy symbols are an ideal solution, since what we
*do* is something in between.
> figure out the name of the footprint you need,
What about when choosing a footprint changes the pin numberings?
Like, I had a LDO regulator in my last board. Did you know that the
TO220 and SOT23 pinouts are different? I didn't. Now I have two
generic symbols for "voltage regulator" which are exactly the same
except for the pin numbers. How do we name them? LDO-123 and
LDO-312? I'd rather just have one "volt-reg.sym" and a mapping that
says (MCT1700 gnd=1 vin=3 vout=2 footprint=sot23) (7805 gnd=2 vin=1
vout=3 footprint=to220)
> A scheme where we maintain a mapping file between symbols, pins, and
> footprints adds another level of indirection which can be
> misconfigured, and it adds another file which can have mistakes.
No worse than the mistakes we already made (er, "can make" ;)
Such a mapping would be the "heavy" part of the heavy symbol stuff
everyone seems to want, without having heavy symbols. We want a small
number of well-tested symbols, and a small number of well-tested
footprints, and let the user only worry about the mapping.
More information about the geda-dev
mailing list