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

Re: gEDA-user: Solving the light/heavy symbol problem

On Fri, 20 May 2011 16:54:20 -0400
DJ Delorie <dj@xxxxxxxxxxx> wrote:

> > I say go with this - because users already have to modify nearly all
> > the symbols they use in a schematic when using the existing library.
> > This way, most of the symbols will have default footprints and other
> > attributes that will do just fine.
> Ok, then how do we generate the thousands, if not millions, of symbols
> we'll need?  

I've been thinking about that, and to be blunt, I have no frickin' clue. ;-)

Maybe some clever scripting against a set of "generic" parts (similar to what I did with those footprints I just submitted).

> How do we choose what the "default" set of parts should
> be?  Just among the few of us here, we've already found out that just
> picking through-hole vs smt is not a clear choice.

The only fair way to handle this is to use gschem to conduct a sort of extended poll - the program itself could submit a data point to some central site each time the user instantiates a symbol or adds an attribute that affects the final build of the device (but only in ways that matter for this "vote"), with some kind of mechanism for changing one's "vote" when an attribute is changed.

The server would compile all that data into a list of symbol -> (footprint, device, manufacturer, ...) mappings and whatever floats to the top for any given symbol after, say, 6 months becomes the default for that symbol.

> If we come up with a way to do that, we'll also have a way for the
> user to do it.  No matter how complete a heavy-only library is, it
> won't be complete enough, so we *still* need to make sure the user has
> a way to add to their library.

For that, I'd say keep the existing mechanism for now, but suggest a default location  for such creations (.gEDA/symbols/ and .gEDA/footprints/ sound fair).  Let the user override these settings in the programs' respective config files, or make a couple of symlinks, if they want to use something other than these proposed defaults.

I have Gschem and PCB set to use the two directories where my gedasymbols.org symbols and footprints are stored, so that those files are always available no matter what project I'm working on.

> And consider that, no matter how heavy a symbol is, you can always
> make it heavier.  Let's say we ship a symbol for a 4.7k 0603 resistor.
> Does it include manufacter's part numbers?  Vendor name?  Tolerance?
> These are additional data the user could add.  Where does it come
> from?  How do they add it?  Should we add it up front?  Why?

Choose attributes that result in an easy-to-hand-assemble board.  That way a quick schematic-to-PCB export will result in a board that one could at least fab, even if it means the user has to flip back and forth between the schematic and hard-copy BoM sheets to find part values.

The idea is to get from schematic to board-in-hand with as little trouble as possible.

> I like the idea of including a set of heavy symbols as a "starter
> pack" - maybe a few sets of them (through-hole vs smt, for example) -
> but I think we need to also allow for a set of light symbols too, and
> think about the process of user-heavyifying them.  This, along with
> "how do I create new symbols/footprints" is a common stumbling block
> for new users.

Sounds fair, but I could see a situation where this could overload the user.

How about adding these options to the library browser:

Show symbols where footprints are...
[ ] Through-hole
[ ] Basic SMT   <-- catch-all for single resistors, caps, SOTs, etc.
[ ] PLCC
[ ] SOIC
[ ] BGA
[ ] Board-edge devices
[ ] Unspecified

> We *do* have the option of changing our symbol-footprint library
> into a symbol-metadata-footprint scheme.  Maybe gnetlist is feeling
> left out, and wants its own library and GUI :-)

Careful, you'll incur John Doty's wrath. ;-)

"There are some things in life worth obsessing over. ÂMost
things aren't, and when you learn that, life improves."
Vanessa Ezekowitz <vanessaezekowitz@xxxxxxxxx>

geda-user mailing list