I would just like to see the component libraries we have cleaned up and some naming convention developed and adhered to.
Something that would be really nice would be to give the ability to place the connection point or hole somewhere other than the center of a pad. The ability to define irregularly-shaped pads would be nice. I would also like to specify a pad that has no electrical connection, especially for some of the MIL-spec thermal pads. As an aside, has anyone considered using XML for all these files? <ducking to keep from getting hit with all the tomatos> It's a standard format that has parsers/generators/checkers readily available. A schema for Kicad's file formats could easily be written and then automated/semi-automated tools and libraries could be easily used to develope ancillary programs to analyze boards, analyze schematics, perform patch-up operations, etc. I know there would be some portability issues between the older files and the new ones. I'm not saying this would be easy or quick. But it would give us some modern file formats that could be easily manipulated as needed. Greg ________________________________ From: Philip Pemberton <ygro...@philpem.me.uk> To: kicad-users@yahoogroups.com Sent: Saturday, September 12, 2009 7:55:07 AM Subject: [kicad-users] Kicad library project Hi guys, I'm toying with the idea of building a completely new set of libraries for Kicad (and possibly EAGLE as well). This all stems from the fact that no CAD package I've used thus far has had what I'd call a "decent" set of libraries, and IMHO it's gotten to the point where something really needs to be done... As I see it there are a few problems in common with most CAD libraries: - Bad design. Pads with impossible annular ring sizes, stupid drill sizes, SMD pads that are barely larger than the pad on the component itself (and thus utterly impossible, or at least very difficult to hand-solder). - Things not meeting PCB manufacturers' requirements. Differing ideas on whether the drillsize in the NC file is the final size after THP or the pre-THP size, design rules for pads and so on. - Silkscreen on top of pads. I mean, seriously. Scraping silkscreen off PCB pads is NOT fun, and soldering to a silkscreen-coated pad is close to impossible. The EAGLE libraries (even the Cadsoft-created ones) are especially guilty of this, but most CAD vendors appear to have done it at some point. What I was thinking about doing is writing a small-ish program that took a list of components to generate, like this: ----- $DefaultUnit Inches; // axial through-hole components (resistors, RF chokes) AXIAL0.6 AxialThruHole(0.6) // 0.6in spacing AXIAL0.8 AxialThruHole(0.8) // 0.8in spacing // radial electrolytic, 0.2in pin spacing, 7.5mm diameter C-ELEC-R-0.2-5 CapElectRadial(0.2, 7.5mm) // very fat-pinned electrolytic $PinDrill 1.2mm C-ELEC-FAT-R-0.2-5 CapElectRadial(0.2, 7.5mm) // revert to default drill radius $PinDrill 0.8mm // DIP, 100mil pin spacing 300mil between rows, 8 pins DIP8 DualInLine(0.1, 0.3, 8) ------ ... and use a set of templates for each component type to generate the component footprints. You still have to build the schematic symbols manually (it's hard for a computer to figure out where best to put the pins, unless they're just laid out in a grid on a rectangular outline) but the footprints are generated by computer, and thus the pin numbers, silkscreen and pad sizes/types can conform to IPC, ANSI, IEC or whatever standard or house style you like. Bonus: if you're having your board made by a manufacturer who insists that the drillsize be the "pre-plating" size, or if they place restrictions on the drills you can use, then you can change the drill sizes in the script, regenerate the libraries and go from there. All without having to edit dozens of component footprints to meet your PCB maker's requirements. As long as you don't change the pin counts or numbering order (i.e. turn a component called DIP8 into a quad flatpack), you can carry on using the existing schematic libraries. What I'm ultimately thinking of is a "basic" component library that covers 80% of use cases -- you're still going to have to tell Kicad what the PIC12F508 looks like on the schematic, but at least you can use the footprint generator to make the DIP8 package for it. Another bonus would be that if you change CAD packages, and your CAD package has some form of text-import feature (like EAGLE's Script Import), you can effectively take your libraries with you. Does anyone think this sounds like a good idea, or am I wasting my time? Cheers, -- Phil. ygro...@philpem.me.uk http://www.philpem.me.uk/ ------------------------------------ Please read the Kicad FAQ in the group files section before posting your question. Please post your bug reports here. They will be picked up by the creator of Kicad. Please visit http://www.kicadlib.org for details of how to contribute your symbols/modules to the kicad library. For building Kicad from source and other development questions visit the kicad-devel group at http://groups.yahoo.com/group/kicad-develYahoo! Groups Links