Chris Fiege cfi@pengutronix.de [kicad-users]
2017-06-21 08:18:21 UTC
Hi,
I am wondering how you guys are working with KiCad and it's part library.
I am using KiCad at work and our target is to engineer electronics as internal tools and for customers.
Our goal is to have the PCBAs manufactured externally rather than soldering them by our selfs.
The last 10 years or so I've been working with Altium Designer. And we usually had part-librarys that specified parts very detailed.
Every part was linked to a Manufacturer and a specific Part Number from that Manufacturer (including Package, Temperature Range, Specific Options, ...). The
only option that was left open was the packaging (Tape and Reel, Tray, ...).
The benefit of such a strongly defined library is that you can drop a part on your schematic and directly have the symbol, datahseet, footprint and so on ready.
(If you have implemented a review-process with another engineer it's getting even better.)
The KiCad standard library is on what seems to be the opposite side of this: It's made up of generic parts, without a fixed footprint, without a Manufacturer or
Manufacturer Part-Number. I definitely see the benefits of such library: for example a low complexity level or that it's quite easy to create a new part.
But with my Altium Designer mindset in place it's hard to image to have a reproducible way of engineering a PCBA with all that manual work (selecting a
footprint, selecting a manufacturer, selecting the actual part from that manufacturer) for every single part I drop on the schematic.
(Don't get me wrong. I really appreciate the work that is done by the KiCad Library Team. I'm just not sure if that library fits my needs.)
My current workflow is to create a library that is made up of two types of parts:
*Generic Parts*
For example a "100R, 0603, 100mW, 1%, thick film" that is not linked to a specific manufacturer.
For these parts the PCBA manufacturer can choose what ever components fit to that specification from what is in it's warehouse or what is cheap on the market.
*Specific Parts*
For example a TI SN74LVC2T45DCT dual supply bus transceiver. Manufacturer (TI) and the part number together define the functions of that part, temperature range
and package. Every specific part has a (locally stored) datasheet and the fiels "Manufactuter" and "MPN" (Manufacturer's part number). Eventually I add the
fields "Distributor" and "DPN" (Distributor's part number) for one or multiple distributors if i already know where it can be bought.
Doing so I run into problems like:
* Having more than one Part with the value field set to "100R" (like the generic parts with different package sizes) does not work on the schematic editor.
In KiCad 4.0.5 you can't define which 100R you get. I guess that depends on the loading-order of the libraries.
* You have to re-draw or copy and paste the same symbol into multiple parts that should look the same.
And thus you can't bulk-change symbols for all equal symbols if you find a bug in the symbol.
* KiCad does not support you with Manufacturer and MPN-definitions for a part. I am currently using the fields "Manufacturer" and "MPN" since those work
with tools like KiCost [0].
Does anyone else try to work with such specific libraries in KiCad?
What are your experiences?
Did you find solutions to the problems I am currently running into?
Thank you!
Regards,
Chris
[0]: https://github.com/xesscorp/KiCost
I am wondering how you guys are working with KiCad and it's part library.
I am using KiCad at work and our target is to engineer electronics as internal tools and for customers.
Our goal is to have the PCBAs manufactured externally rather than soldering them by our selfs.
The last 10 years or so I've been working with Altium Designer. And we usually had part-librarys that specified parts very detailed.
Every part was linked to a Manufacturer and a specific Part Number from that Manufacturer (including Package, Temperature Range, Specific Options, ...). The
only option that was left open was the packaging (Tape and Reel, Tray, ...).
The benefit of such a strongly defined library is that you can drop a part on your schematic and directly have the symbol, datahseet, footprint and so on ready.
(If you have implemented a review-process with another engineer it's getting even better.)
The KiCad standard library is on what seems to be the opposite side of this: It's made up of generic parts, without a fixed footprint, without a Manufacturer or
Manufacturer Part-Number. I definitely see the benefits of such library: for example a low complexity level or that it's quite easy to create a new part.
But with my Altium Designer mindset in place it's hard to image to have a reproducible way of engineering a PCBA with all that manual work (selecting a
footprint, selecting a manufacturer, selecting the actual part from that manufacturer) for every single part I drop on the schematic.
(Don't get me wrong. I really appreciate the work that is done by the KiCad Library Team. I'm just not sure if that library fits my needs.)
My current workflow is to create a library that is made up of two types of parts:
*Generic Parts*
For example a "100R, 0603, 100mW, 1%, thick film" that is not linked to a specific manufacturer.
For these parts the PCBA manufacturer can choose what ever components fit to that specification from what is in it's warehouse or what is cheap on the market.
*Specific Parts*
For example a TI SN74LVC2T45DCT dual supply bus transceiver. Manufacturer (TI) and the part number together define the functions of that part, temperature range
and package. Every specific part has a (locally stored) datasheet and the fiels "Manufactuter" and "MPN" (Manufacturer's part number). Eventually I add the
fields "Distributor" and "DPN" (Distributor's part number) for one or multiple distributors if i already know where it can be bought.
Doing so I run into problems like:
* Having more than one Part with the value field set to "100R" (like the generic parts with different package sizes) does not work on the schematic editor.
In KiCad 4.0.5 you can't define which 100R you get. I guess that depends on the loading-order of the libraries.
* You have to re-draw or copy and paste the same symbol into multiple parts that should look the same.
And thus you can't bulk-change symbols for all equal symbols if you find a bug in the symbol.
* KiCad does not support you with Manufacturer and MPN-definitions for a part. I am currently using the fields "Manufacturer" and "MPN" since those work
with tools like KiCost [0].
Does anyone else try to work with such specific libraries in KiCad?
What are your experiences?
Did you find solutions to the problems I am currently running into?
Thank you!
Regards,
Chris
[0]: https://github.com/xesscorp/KiCost