Eh, you can link KiCAD to libs/repos that are read onlyā¦ the whole github thing is organized that way.
KiCAD will allow you to change footprint links in cvpcb and doesnāt force you to do anything if you have these settings from the symbols, but then the compulsive problem sits in front of the computer.
As for DRC check of symbol pins vs footprint pins - pretty sure itās doable by some python script and canāt be that hard. Get involved with the development of KiCAD and make itā¦
Hey we two can agree on anything, no problem.
Iām just not a dev, not even on the dev listā¦ Iām just a user with a little bit too much enthusiasm and time that helps out on the support forums to the best of his abilities.
Iām pretty sure Iād be able to do the feature somehow in phyton inside/outside of KiCAD, given enough time and motivationā¦ problem is, I donāt have that time (besides stalking the forums) and Iām not in desperate need of those features, but they surely would be nice to have.
I got like 10-20 projects on my hands already, I wonāt be adding one more thatās called āsoftware development for KiCADā, Iām sorry.
Maybe when I retire in 20-30 yearsā¦
I know from experience that you always make errors in complex parts and the mentor tool helped me many many times.
No matter how careful you are with Excel sheets and marker pens and all possible tricks, small errors will enter, mostly in symbols, but sometimes even footprints.
As I am about to tape-out I am very motivated to make an automated checker using the netlist that scrutinize my relationship between symbols and footprints.
Beacuse history tells there are sure to be errors in there.
Everyone does this differently unfortunately, so even if we had such tools there would still be a large cost to switch (but if someoneās just selecting a tool rather than switching it would be another story). If there are any detailed descriptions of particular workflows, that could help develop future work plans.
At the moment the best hope I see for this is a 3rd party tool. Unfortunately no one has (yet) come up with the resources for such a task. I have had it on my list of things to do for over 2 years now but itās at the bottom of a long list and itās a fairly large project.
IPC-2581 is on my list of things to do after IGES + STEP export. Unfortunately STEP export is perhaps a year away and IPC-2581 will take a while to implement and certify.
So there are various plans which may or may not be helpful in the future, but one thing is for sure: at the current pace of development itās going to be a long wait before KiCad has all the bits you want right now. All devs are aiming to improve things and kicad is currently used by a variety of commercial outfits, but there is certainly much work still needed before we have what some would consider the most basic set of tools for their operations.
KiCAD has gotten leaps and bounds better in the past few years. Thatās why I put in the effort to come make this post, in hopes that a few more of the (fairly low hanging fruit) barriers to Enterprise use could be removed.
Adding support for the first option should not be that big a deal. Itās a configurable database mapping for your library browser, using symbols from your usual symbol library. I may investigate the source in between hardware projects (which are what I care about), and I would definitely be willing to help with testing and integration.
As for #2, KiCAD is in fact hopelessly broken there if you are designing serious hardware. The library keying on Value is the show-stopping decision that was made. Key on part number. I have and use 5 different 0.1uF capacitors, and I canāt do that in KiCAD and still be able to tie footprints to part numbers. A 1kV 0.1uF cap has a wildly different footprint than a 6.3V (1812 vs. 0201). You can hack it by adding other info to the Value attribute, but thatās a no-fly for Enterprise. When you start saying things like āwell, you store the value in the simple_value field we add to parts, and the Value field has the part numberā the QC guys ask what other tools are available. Similarly, adding python scripts for basic functionality gets it dropped from most folksā lists in comparison to the competition.
The spec is, as I believe others have responded below, available for free. Yes, PCB suppliers take Gerbers, but Gerbers donāt contain the data necessary to get a functional standards-compliant USB device fabricated, for example; you need layer stackup, dielectric, copper weight, and dieelectric thickness info at a minimum. With Gerbers, this is typically communicated through an accompanying mechanical drawing, and a human reads the data from it and configures the machines. This is both error prone and time consuming (which means expensive). As a result, the tier 1 PCB fab houses all support one or more of the stackup info standards like IPC-2581, and even tier 2 houses are implementing IPC-2581.
How well has the new Gerber X2 format been adopted by PCB design software vendors?
Karl Tavernier: Rather well. We have reviewed and accepted X2 output from KiCad, Pulsonix, Easy-PC, Diptrace (beta) and Altium.
Only a few months ago there was a question about IPC-2581 and many responded with āno, thereās nothing wrong with Gerberā and ābut Mentor owns ODB+ā. However one of the IPC2581 consortium members has been very encouraging and has stated that the consortium is keen to help us work through an implementation. We will no doubt have a mix of Gerber and IPC2581 for many years and my own opinion on the matter is (a) although Gerber has been updated it still shows its archaic roots and (b) thereās a large push from various industry sectors to go for IPC2581 and since IPC is an actual standards institute you can guess who will ultimately win the specifications wars.
Yeah - donāt take āValueā too literally there - itās a mistake.
The āValueā field in KiCADs case for better or worse starts off as the parts identifier in the library collection and needs to be unique in your local environment.
If you pull in several libraries and they contain parts which have matching entries in the āValueā field KiCAD will ALWAYS take the part from the library thatās first in the pecking order.
Putting only 0.1uF in the value field of parts in libraries is a BAD practice for exactly that reason.
Once you selected a part and placed it into a schematic, the āValueā field can be reduced to the actual value (or what have you) only, as the other fields will take it from there and stay with the part (if you have defined them as outlined above).
You then can have several different parts in a schematic whoās value field is not unique anymore.
The part is not identified by it any longer.
But until then, you have to keep it unique.
PS: yes, thatās bad implemented and Iām sure the developers are thinking hard about it. As I said, get in contact and find out how the world looks through their eyes - EEschema is next on their list to be worked on.
I donāt know how unique that one isā¦ do manufacturers make sure theirs is unique?
Ehā¦ when you can identify the part in question without doubt in your part selection (KiCAD = symbol libs) then you should get a manufacturer number for it and a link to the datasheet.
Donāt think itās useful to put all that information you list into the libs.
Whatās nextā¦ the pspice model also in there?
KiCAD screws up the key to find parts in the symbol libs by using a wrongly conceived value field, which really should be called part_name or part_identification. For uniqueness this field should not be filled with the manufacturer ID as you canāt be sure that no two or more manufacturers donāt use the same ID for different parts.
also you can postprocess against your favourite assembly house to firt their internal part-no
cuts down on time and errors
its very handy to be able to browse all parameters in a library browser,not only description.
And edit parameters at the same time should you wish to.
capacitor attributes, size, footprint, ESR and dielectric material, tolerance
good to see in a list.with columns in ne single view.
now you need to put all into description, and the somewhat mysterious keyword attribute that i dont know what it does yet
Definitely no. This is why we used to use NATO stock numbers in military equipment and the CVXXXX numbers for the British Post Office.
Later at Racal, we used house numbers directly into Visula.
The main advantage was that manufacturers are frequently changing part numbers, thanks to constant take overs. House numbers decouple your schematics and BOM from this churn, saving a lot of change requests
There was a time when this was handled by the Components Standards Engineer.
The job was to manage approving vendors for each house part and the mapping of suppliers part numbers to it. It also had the benefit of keeping most engineers at a distance from the purchasing function, always a corruption hazard
Yeah, that guy always has/had a stack of samples of all sorts of things and when you needed something it was possible to obtain as samples most of the times.
Most loved person in that dept when you needed āstuffā
The real part number might not be a key to the database. For example you might have 10k 0603 1% and 2%. The 1% real part could be used for both house parts.
Obscure house part numbers have long been used to make schematics hard to use by third party service and repair as a vendor lock in. Very useful when a contract demanded manuals, but you didnāt want to lose control of very profitable maintenance