Organizing component footprints and schematic symbols - Page 1
Forum section: electronics / general

author: amaningd
author_rank: Contributor
timestamp: January 23, 2021, 05:36:31 pm
content: Hi all--long-time EEVblog viewer and first-time forum user here! At my job I've been asked to design a couple PCBs, and I'm still a little unfamiliar with Altium Designer. This current project uses a couple different capacitors (100nF ceramic and several sizes of electrolytic), and I used the built-in schematic library symbols for them (Miscellaneous Devices.IntLib/Capand (Miscellaneous Devices.IntLib/Cap2).A couple questions:None of the built-in footprints precisely match the lead spacing/diameters of the caps I've specced out on Digikey. Is it better to create both a new schematic symbol and corresponding footprint for each differently-sized cap, or can I attach a footprint to a built-in symbol? I'm pretty comfortable with creating my own symbols and footprints for things like Molex headers, but I was hoping not to have to do as much work if the component already exists.I'd like to use Altium's BOM report feature on this project, but components that use the same schematic symbol get lumped into one line, like this:CommentDescriptionDesignatorFootprintLibRefQuantityCapCapacitorC3, C7, C9, ...RAD-0.3Cap9This is probably related to the first question, but is it possible to differentiate by footprint, part number or component value? I'd like to cross-check Altium's output with the BOM I've put together on Digikey.

author: ajb
author_rank: Super Contributor
timestamp: January 23, 2021, 06:02:57 pm
content: Couple things that don't specifically answer your questions, but I think will get you to your ultimate goal in a faster and easier way:1. I strongly recommend at least considering using dblibs. They're an extremely powerful way to create, organize, and reuse schematic and pcb symbols for components. There are several threads here discussing them and how to set up the backing database, which can be an excel sheet, an access database, or a full sql server. At the library file level, footprints and symbols are completely independent and are linked together in the database, so every single capacitor in your library can use the same schematic symbol, and every single 0603 capacitor can use the same footprint. Once set up, it's dead easy to create a new library component using existing footprints and symbols by simply adding a line to the database that references symbols and footprints you already have.2. The bom report is fine for quick and dirty output, but outjob BOM outputs are way more useful. You can select which columns get exported and how components are grouped, filter what components are shown on the bom, and it all goes into an excel file based on a template you can customize. Once you have an outjob file you like you can add it to your default project template and use it over and over.

author: amaningd
author_rank: Contributor
timestamp: January 26, 2021, 06:37:14 pm
content: Thanks very much! I set up a MySQL database with my components, and configuring the dblib in Altium wasn't too difficult. I think that takes care of the questions in my original post.In some of my Altium projects, I've used theManufacturer Part Searchfeature to get schematic symbols and footprints (mostly for ICs). Is this bad practice, and should I incorporate these components into my dblib instead?

author: ajb
author_rank: Super Contributor
timestamp: January 26, 2021, 08:36:00 pm
content: It's not necessarily bad to grab symbols and footprints that way. However, you do need to be careful to check them for accuracy, and you can run into annoying inconsistencies if your symbols and footprints are coming from a range of different places. I've been using PCB Library Expert, which is free, to generate my footprints for most standard packages, for other things like connectors I will sometimes use a manufacturer's library if I happen to know they have good ones (Wurth Electronik is pretty good about this, for example), but generally I make my own so I can be sure the layers are consistent etc. For sch symbols, personally, I find Altium's default graphical style hideous so I pretty much exclusively make my own, which is personal/company preference, but there is definitely practical value in developing a consistent graphical style.