← Back to team overview

kicad-developers team mailing list archive

Re: Library woes (was Symbol library for FTDI chips)


On 11/12/2012 08:22 AM, Øyvind Aabling wrote:
> On Sat, 10 Nov 2012, Alex G. wrote:
>> On 11/10/2012 10:40 AM, Simon Turner wrote:
>>> The problem is made worse by the fact that when you edit a footprint or
>>> symbol in the schematic of pcb it can revert back later so it is very
>>> frustrating.
>> That is because any edits are saved in the project's cache, not in the
>> "system" libraries.
>>> If you look at the TO-220 footprint it is number 231 rather
>>> than 123. I'd be happy to submit corrections, tell me how to.
>> http://bazaar.launchpad.net/~kicad-testing-committers/kicad/testing/view/head:/HOW_TO_CONTRIBUTE.txt
>> has some information.
>> A branch on launchpad (like I did), or a [PATCH] to the mailing list.
>> For the TO-220 footprint specifically, I strongly suggest you try
>> Oyvind's library.
>> https://code.launchpad.net/~oyvind-aabling/kicad-newlib/mod
>> It should be able to solve your issues. I've been trying to get this
>> library into kicad for about two years. However, the author still feels
>> additional testing is needed. Let's just say the last correction was
>> made about a year and a half ago.
>> Alex
> Hi !  I know I've been quiet for quite a while, but I'm
> still around, following the awesome progress of KiCad :-)
> Hmm, has it really been that long ?-(
> Oh well ... time flies (like an arrow, etc.) ...
> Great work with the nanometer stuff - nice to get
> rid of those annoying metric rounding errors :-)
> I haven't had time to try out the scripting stuff yet
> (have to learn Python first ...), but it also looks
> very interesting - too bad it isn't perl, though ;-(
> What I'd *really* like to see in KiCad (pcbnew) is parametric modules :-)
> Some modules, like SMD chip components exists only in a
> few sizes (Note 1), but others, like pinarrays exists in hundreds,
> if not thousand of variations: <pin pitch> * <pin count>
> * <# of rows> * <row pitch> * <pin diameter> * <pin length above>
> * <pin length below> * <body height> * <straight/bent pins>.
> Instead of defining each and everyone of these (and the one you need
> might be missing in the lib ...), it would be nice with a (scripted)
> class instead, with a popup for defining the parameters.  In many cases
> with a list of popular/common variants (e.g. for axial resistors).
> Each parameter should be selectable from a list of
> standard values with a field for entering a custom value.
> I guess, this must be written in Python, using the new scripting interface ?

You can do this on a website, and that would be my preference.  The interface to fetch the
footprint into Pcbnew can be in C++ using a PLUGIN.  The user goes to your website using a
web browser to design the footprint, he gives you a user ID so you can remember the part
and his name as soon as he comes back using Pcbnew to fetch the footprint a few minutes later.

The http PLUGIN is a permanent entry in the new library table support that points to your
site.  The options field for this library table row has his user id.  When he does a "list
footprints" operation on that virtual (http based) library, he sees only one part, the one
you just let him build.  This is possible since the options data is passed into the
FootprintLibEnum() plugin call.

There is a website that does much of this already, what is needed is the PLUGIN and
teaching the website to cache the footprint and associate it for a few minutes with the
user id.

Anyone can do this again, and better, using what did you call it, perele or something like

Follow ups