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

Re: gEDA-user: Matching footprints with symbols



Hello Vladimir,

the point in not using a text file format for this but a relational database
with SQL is not the data storage but the capabilities of the database server.
It allows modeling of relations and more important, relational queries.
This can look something like:

SELECT elem.footprint FROM elem, part
WHERE part.name LIKE "TLC555%" AND elem.package = part.package AND elem.process = "reflow";

listing all the known footprints of all known packages for parts starting with "TLC555",
that are good for reflow soldering.
The real tables will be somewhat more complicated - it's just to give an idea. The DB avoids all the hassle with file parsing, inventing file formats and in-memory datastructures because all this is done by the server. All one needs is a simple list to receive the answer.

The raw table data can be inserted and retrieved using text files, that's formats are well documented and extremely well tested. For what they do DB-servers are even very fast.

Armin


Vladimir Zhbanov wrote:
DJ Delorie wrote:
between footprints and its instances on a board and am able to think
of things like SQL-databases providing a clear, yet flexible mapping
between
Perhaps this idea of mine is relevent?

http://www.delorie.com/pcb/component-dbs.html



Hello.
I am newbie here, too.
My suggestion is to make database in text format for gschem, pcb and
probably others. Idea is that central object is real component from
programs point of view. There should be a way for users to choose
components for their symbols (for example for pin mapping) and/or
symbols/footprints for their components. I intentionally use only
general elements and imply initial schematic capture so DB should be
rather light than heavy.
DB format could be simple and it is stuff to discuss. Simple example:

(component_name (pcb_name1 pcb_name2 ...) (gschem_name1
gschem_name1 ...) ...)

or maybe so:

component=component_name {
	company=company_name
	...
	footprint=footprint_name1
	footprint=footprint_name2
	...
	symbol=sym_name1
	symbol=sym_name2
	...
	whatelse=whatelse1
	...
}

and so on.

The database could be distributed and all gEDA programs could use it.
For example I'd like to have common gEDA database and my own local
database which contents line (it is just silly example):
...
(7400 (7400-1.sym 7400-2.sym) (DIP14 DIP14N))
...

That way programs could know what symbols user may use for component.
Then instead of symbol selecting in gschem user could select real
component's name ('component=' attribute?) and preferred symbol and
footprint for it. And in pcb he/she could select required component and
then footprints for it only instead of searching footprint firstly in
datasheet and then in pcb library.

All above could be compromiss for disctinct programs of gEDA project
until new better format will be accepted.

And that way distinct databases for different users, sizes, standarts,
locales and so on could be created.

VZh




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



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