


Someone starts by creating a library, presents it to the group and once the group and management see that it’s already in motion, then everyone starts using and contributing to it. While there are lots of interesting things presented in the speech, the one thing which stood out to me was, as per Robert’s study, in almost all the companies it was always an initiative by one or two individual engineers which has led to the creation of centralized libraries. Incidentally, at the same time, I came across a presentation from Robert Feranec at Altium live (you can watch it here) in which he presented his survey about how libraries are maintained in different organizations. All these things finally lead me to start exploring about creating a centralized library for all EEs in our company. I had created a new footprint for my project and had to update the existing project’s PCB library. For this, I basically had to do the reverse process of what I had described earlier. It was for an oscillator component and there was a chance that one of the alternate parts we were using would not fit into our footprint. And thirdly, while in the middle of my new projects, we found out that one of the footprints we were using for an existing project was a little incorrect. This was also time-consuming and error-prone as sometimes I would miss updating some of the details. For cookie-cutter parts like SMD resistor and capacitors, we would be using a generic schematic symbol in schematic and assign one of the standard footprints we had created for them and then update value and company and manufacturer part number details.

This in itself was annoying, but there were couple more things which were bothering me. However, in order to use those components, I was having to recall which projects might have used the part which I was needing for my project, open its Altium project, copy the schematic symbol and footprint for the component from existing project’s library files, copy them in my new project’s library file and finally link newly pasted schematic symbol to PCB footprint. As in most of the projects, most of the components in my projects were getting reused from our existing design. And while I was designing schematic and PCBs in Altium, there was a thing that was bothering me. How it started Recently I had started a couple of small projects in our company. A telltale story of how I created an Altium Database library for our company with the help of Python programming.
