EE’s Dilemma – Design Parts or Boards

Most engineers would rather design PCBs than libraries. But how can you trust a library with other contributors?

Whenever I talk to electronics designers about what they dislike the most when it comes to creating electronics the answer is almost always the same. Part creation. It doesn’t matter if I’m talking to an experienced designer who’s been doing it for years or to a beginner whose been at it for 3 months, people don’t like “wasting” their time creating their components. Why is that?

There seems to be three basic reasons as to why people don’t like create their own components:

  1. Footprint, Symbol, 3D model Styles
  2. Trust
  3. Time

What if there was a way to solve all these issues and create a centralized database that we can all trust, agree on styling, AND not spend time creating? It may sound like a dream but I don’t think so, I think this is something completely within our grasp. Come with me and I will take you to the promised land.

Footprint & Symbol Styles

The first thing we need to do is to figure out how to solve the problem of style. We all have our preferred way of doing things, a way we like to view our schematics and boards. I propose we do the same thing that schools and the military do, uniforms. We take away the personalization of part creation and create a standard.

Now this isn’t a new radical idea, in fact its an old stale one but somehow it seems to be forgotten.  Way back in 1975 IEEE created the standard IEEE 315. This standard was made to fix this exact issue of how schematic symbols should look. I’m not sure exactly what happened but somewhere along the way people went their separate ways. It could be a new generation of designers or maybe people just didn’t want to change, either way that’s not the point. This standard was made for a reason and it should be followed.

The IEEE 315 standard is extremely comprehensive, so much so it includes schematic symbol elements allowing you to symbolize parts that haven’t even been invented yet. Let me explain. IEEE 315 gives a standard to construct any symbol, every line, dot, and feature has a meaning. With these tools available, one is able to construct any symbol for any possible component that does or does not exist.

IGBT Symbol Meaning

The next thing that we as designers need to come together on is the footprints / land patterns / decals for components. Just like with schematic symbols we don’t have a standard that we all are using despite there being a standard out there available to us. That standard is IPC-7351. IPC-7351 provides information on land pattern geometries used for the surface attachment of electronic components. This includes things like sizing and tolerance to insure there is sufficient area for all the appropriate solder fillets.

Caliper and CPU

So far we’ve taken a look schematic symbol and PCB footprint standards but there’s still one thing missing and that’s a standard for creating the 3D STEP model. And yes there is a standard for that as well, isn’t that great!? The standard for that is the JEDEC Publication No. 95. JEDEC 95 describes the dimensional and geometrical characteristics of “standard” component packages.



Okay, so we’ve talked about how to standardize on schematic symbols, PCB footprints, and also 3D models. But what about the trust and time issue. We solve the trust issue by applying these standards. Once everyone or most people apply these standards to part creation as they should, we can all have a higher confidence that we’ve all done things correctly.

Of course nothing a person does is without error all the time. This is why we need an online database with everyone uploading their component models. And to be sure all components are up to standard we can crawl and verify each component as they’re uploaded. In addition to software verification, having users review and use components will give everyone a solid indication of which part is good and which is not.


As you probably have guessed having this online database where users and professionals can upload their component symbols and models will save time, for everyone. It may surprise you but this isn’t a fantasy, well not completely. EE Concierge is a service that will create a complete component for you including schematic symbol, PCB footprint, and also a 3D model. The EE Concierge component making process follows the above industry standards so you know what you’re getting is correct and transferable to anyone. As for an online database filled with components, that’s where Octopart comes in. Octopart is a search engine for electronic components and industrial products. It includes things like a BOM scrubber, pricing and a bunch  more. It’s definitely worth checking out.


The Cost of Mistakes on Parts

Creating a proper schematic symbol and PCB footprint for a new part and meticulously checking it for errors can be a tedious task. But when you don’t have a trusted, verified parts library this task is exceptionally necessary due to what you’re risking if you don’t buckle down and verify yourself. A mistake in your part design can be very costly. We consulted a reputable manufacturer, Hooman Javdan from Circuits Central Inc., on the types and ranges of costs that result from part design errors. Let’s analyze what types of costs a mistake on parts could incur for you and your company.

Material and Equipment Cost

The most obvious cost, and possibly the worst case scenario is the cost of re-spinning more boards. If the paste mask is wrong a new stencil will cost in the hundreds of dollars. A new stencil will also extend the timeline of the project by a few days so the manufacturer has enough time to have it made. If the board is just plain wrong, fabbing and assembling a new batch of boards can cost in the thousands.If a particular component’s origin is incorrectly displaced off-center in a part design, then the pick-and-place machine will attempt to put the part on the wrong spot on the board. This will result in part losses, so the cost depends on which part is being improperly placed. If the part in question is a processor, an FPGA, a memory module or something similar, it can be a very costly mistake.

Rework costs can vary wildly in terms of both dollars and time. If a pin marking on the silkscreen is wrong, or possibly flipped because it is on the back of the board, then a part may need to be manually removed and resoldered correctly. For simple parts this may cost only a few minutes per board and a total of 1 day of delay. For more salvaging and reworking more expensive parts, such as a BGA, this may mean spending hours on each board to remove, clean, reball and resolder each BGA and take around a week in total. Expect to pay around $300 per hour for your rework time, making this an important costly decision.

For a small batch of prototype boards (5-10 boards), expect a re-spin to cost in these ranges:


The cost of PCBs are driven up by increased set-up time for the manufacturer due to higher component counts, higher parts costs for expensive ICs like processors or FPGAs, parts that require an conformal coating and thus curing time, and complex mechanical assemblies.

Testing & Debugging Cost

If a symbol or footprint has an error, any resulting malfunctions can take a long wild goose chase to track down the root cause. Hours and days of engineering time can be wasted before it’s determined that the malfunction is as a result of an unverified part design. If a part is placed in the wrong orientation, it could drive high current through a part of the board and damage further components on it. You might not notice this problem until you’ve noticed the cascade of damage on the board. These boards could initially pass quality control and then provide a challenging debug project for an engineer, or fail to work properly in the field. Assuming that engineering time costs companies around $50-100 per hour, it is definitely a huge financial risk to have engineers spending their time on debugging instead of on designing.

Expediency Cost

Usually, a small batch of prototype boards can be completed by a manufacturer in around 2 weeks. However, when an error is found and a re-spin is ordered, companies often want to avoid waiting another two weeks and will have their next batch of boards expedited. If you’re expediting from 2 weeks to 24 hours, expect to pay double for the second batch of boards.

Time to Market Cost

The alternative to paying expediency costs is to delay the launch of the project by a few weeks or months. The cost of the delay depends widely on your market and on your competitors, but it can easily become unmanageably large. Consider that many markets have seasonal milestones they must hit with their products, whether they are targeting a launch at a specific industry conference or trade show or whether it’s a large consumer electronics company trying to hit the Christmas deadline. These market windows must be hit.

There are several things to consider when evaluating the time to market cost, but know that it typically results in an increase in sunken research and development cost, a decrease in sales life, and a loss of market share.


You can find many calculators online that can help you determine the cost of going late to market, but a general optimistic estimate would be 2% of total profit is lost for every month a product is delivered late.

So if you shudder at the thought of throwing money away needlessly, know that using verified parts is far from needless – it’s essential.

Why EDA Component Creation is Broken

How painful and frustrating is it to stop working on a new hardware design because the component you need to add isn’t already in your parts library?  Not only do you need to switch your train of thought from being creative to being meticulous in transcribing the part details and designing a symbol and footprint, but you’re also aware of the fact that you’re going to have to check and re-check to make sure you did it 100% perfectly.  Since the design work and the sanity check are both prone to human error, there is a tremendous inherent risk involved with the undertaking of adding and using a new part.  This makes the whole process tedious and cumbersome, but necessary.

The first thought that then runs through your mind is, “Can I offload this work?” Of course, if you work for a large company with a big budget, you can just tell some intern to design the part for you, or outsource it to a company that specializes in part creation, but you’re still groaning inwardly at the prospect of re-checking the design once it is done.  Finding an online parts library to download will also sometimes save you some time, but again, re-checking the parts is necessary to maintain your sanity, especially from a mysterious online source.

Most people don’t have those luxuries, and if (and invariably when) they make a mistake and manufacture the PCB they have to eat the cost of a re-spin, delay shipping their product and have a difficult conversation with their manager.  Re-spins take time, cost money and as a result kill thousands of dollars in profit. This makes the risk of a re-spin kill a manager’s sleep.   This puts pressure on the design engineer to attempt to avoid that risk by spending more time manually re-checking designs and kills his or her life.  Working as a hardware designer tasked with designing parts is akin to working as a court stenographer, except even they are being automated out of business.

Maybe there are some easier “parts problems” to tackle… Like, why do we share part data sheets and not the designs for the schematic symbol and PCB footprint?  Or, if I go to the effort of finding the data sheet, why can’t my software magically create my part for me?  A standard file format is probably not in keeping with the business model for part suppliers or the various desktop EDA tool companies.  Speaking of which, why are so many people still using desktop software for this?  If more designers used a cloud-based tool that made collaboration and sharing this kind of information easier, wouldn’t that be a good first step?  In that collaborative forum, we could keep track of how many times a certain part was used which would give a numerical value to the risk in using the part design, saving time spent on re-checking it.

There has to be a better way.  A large majority of innovation has been centered around the idea of eliminating human error to drive efficiency and cost savings. Automated textile manufacturing in the 18th century helped drive the industrial revolution.  “Spell check”, something almost everyone with a computer takes for granted, first arrived on personal computers in the 1980s.  Google is now creating self-driving autos that eliminate the human error from driving a car! You’d think we could figure out a way to eliminate human error from designing schematic symbols and PCB footprints!

Self-driving cars? Yes.  Verified Parts Creation Service? No.


What do you think?  Does designing new components irk you the way it does me?  Do you find the work of designing a new part empty, hollow, tedious and wasteful?  Do you lie awake at night worrying if the pads on the PCB footprint you (or your intern) created are the wrong size?

Let us know in the comments section below…

Creating the Perfect Part (4/4)

If you need to make use of a component and it is not already in the parts library, what two things do you need to consider while designing it in your CAD tool?

  • How to make your part reusable in the future
  • How to make your part design practical for fabrication

The last part aspect worth perfecting, is the footprint of the part.  The footprint is used to describe the specific mechanical shape of the component.  The perfection of this aspect is crucial for the PCB layout design to ensure manufacturing goes smoothly.  This last entry in our Perfect Part series focuses on optimizing our design for manufacturing considerations.

We contacted Hooman Javdan from Circuits Central Inc., a manufacturing expert of more than 5000 designs, for his best practices on designing a footprint that will best position your layout design for a successful fabrication process.

There are some best practices to use while inputting the exact dimensions of your footprint.

  1. It is important to make sure the units that are used in the data sheet are the same units you’re using to design the part – avoid converting between metric and imperial yourself.
  2. For through-hole and surface mount components, the hole and pad size need to be chosen correctly.  Consult the IPC standard 7351 (here) and follow the guidelines for the component you’re creating.
  3. Likewise, for through-hole components that need thermal spokes, the spoke width should be set according to the manufacturer’s capability.  Your manufacturer will give you guidance on the maximum surface area of the copper spokes, which will in turn help you choose the spoke thickness.


It is important to have pad sizes chosen perfectly, and this takes careful consulting of the data sheet and some experience.

  1. If a pad is designed too large, parts can be pulled to one side of the landing area during soldering and not connect on the other side.  The effect is called “tombstoning”
  2. The choice between Solder Mask Defined (SMD) and Non Solder Mask Defined (NSMD) for Ball Grid Array (BGA) parts is an important one.  For standard BGAs it is okay to use SMD, but for parts with a fine pitch, such as a Quad Flat No-leads package (QFN), it is important to use NSMD.  SMD will usually protect better against pad lifting, while NSMD will protect better against connection bridging.  See here for a comparison.
  3. Know that having a via-in-pad can make the pads effectively larger and cause some problems.


According to Mr. Javdan, solder mask layer errors can be frustrating and costly.  If a BGA has an issue, the fabricator must remove the BGA, check its functionality, reball it, clean the board and solder it back on by hand which costs them time and you hundreds of dollars per board.  So be mindful of the manufacturing process in your designs.

For the practical “How-To” of creating the layout footprint of a new component in Upverter, see our YouTube video.

Creating the Perfect Part (3/4)

Part 3 – Footprints

If you need to use a component that’s not in your library, what two things do you need to consider while designing it in your CAD tool?

  • How to make your part design accurate and practical for manufacturing
  • How to make your part reusable in the future

The last part aspect worth perfecting, is the footprint of the part.  The footprint is used to describe the specific mechanical shape of the component.  The perfection of this aspect is crucial for the PCB layout design to ensure manufacturing goes smoothly.  We will split discussion of the footprint into two pieces, and this piece focuses on optimizing the readability of our silkscreen in our design.


There are a few footprint design tips that will get you more usability for your part in future projects.

  1. Ensure the package outline exactly matches the outline of the component (use the nominal size from the data sheet).  This helps you be aware of size of the actual body of the package during PCB layout so you can position it correctly on your board.  This is especially useful for placing connectors whose body position on the board must be precise.
  2. Have the package outline centred around (0,0) on the design grid so that if the part is rotated it doesn’t also drastically change position.  The part origin is where pick and place machines will grab the part during assembly so an exception to this rule is if you need to move the part origin to an area with a smooth surface.
  3. Also for usability of the design, it is important to have the Pin #1 of the part, or the positive pin of a two-pin polarized part (like a diode), marked on the silk screen.


The silkscreen design of our footprint needs to consider the actual fabrication and manufacture of the board itself.   We contacted Hooman Javdan from Circuits Central Inc., a fabrication expert of more than 5000 designs for his advice on designing a footprint that will actually result in the PCB you want. One example he gave was that when marking pins on the silk screen (such as for Pin #1 or marking polarity in unidirectional parts), make sure that the marking is not under where the actual component is going to be placed so that it remains visible after the component is mounted.  This sounds obvious but you’d be surprised how many designers make this mistake by accident.

Like This!



Not Like This…



Likewise, any part that has a grid array of pins (like a BGA) should have silk screen markings on the opposite side of the board indicating row and column so that someone probing a particular via can understand which BGA where to place their probe.  If you find that you’re doing this often with a part, it might make sense to include this back-side silkscreen design as part of your component design.  You can shift and adjust the back silk screen markings based on which way the via-in-pads go.

According to Mr. Javdan, the silk screen placement has some tolerance and will often be slightly misaligned.  If precise silkscreen locations are important to you, ask your PCB fab about their silkscreen tolerances so you can plan ahead.

Stay tuned for the next and final part of our “Perfect Part” series where we will focus on how perfecting the footprint of your component design will help you optimize your design for manufacturing considerations.

For the practical “How-To” of creating the layout footprint of a new component in Upverter, see our YouTube video.

Creating the Perfect Part (2/4)

Part 2 – Schematic Symbols

If you need to use a component that’s not in your library, what two things do you need to consider while designing it in your CAD tool?

  • How to make your part design accurate and practical for manufacturing
  • How to make your part reusable in the future

The second part aspect that requires perfection, and the focus of part 2 of our series, is the schematic symbol which is a logical (non-physical) representation of the part that emphasizes readability for the design engineer’s schematic.

Schematic Symbol

The main goal in designing the schematic symbol is to preserve clarity of the overall schematic, and to make your representation of the part helpful in accomplishing that.

1) Consider breaking up a part into multiple symbols, like a dual op-amp.



2) For ICs, their schematic symbol (typically a square) should be as large as necessary to be readable.

Like this!



Not Like This…     



3) It is better to avoid using pins on the top or bottom of the symbol, and that a left-to-right flow should be preserved (inputs on the left, outputs on the right).

Like this!



Not Like this….



4) Pins should be named in such a way that they indicate their function and uppercase letters should be used.

5) For clarity, all of the chip’s pins should be shown.  Pins that are unused should still be shown, but marked as such on the schematic (typically with a no-connect flag that looks like the letter ‘X’).  The thermal pad should have a pin on the symbol and should be connected to ground in the schematic.

This Arduino Micro, for example.



Consult Upverter’s style guide (here) for more suggestions on how to keep your schematic symbols and nets clear and readable.

For the practical “How-To” of creating the schematic symbol of a new component in Upverter, see our YouTube video.

Creating the Perfect Part (1/4)

This is Part 1/4 in an Upverter Blog series on creating the perfect part.

Most hardware designers, in their unique and innovative designs, encounter the problem that the part they want to use isn’t already included in their design software’s libraries.  In certain design programs, adding a new part can be tedious work.  Making a mistake can be very costly during manufacturing.  Furthermore, you may want to reuse the part in the future.  Thus it is worthwhile to spend the time to ensure that your part creation is “perfect”.

If you need to use a component that’s not in your library, what two things do you need to consider while designing it in your CAD tool?

  • How to make your part design accurate and practical for manufacturing
  • How to make your part reusable in the future

There are three important aspects that require a hardware designer’s attention to ensure part perfection.

The first, introduced below, is the part attributes, which contain relevant functional and reference information to explain to the basics about that part.  We’ll go into more detail later on exactly what information should be contained in there.

The second, and the focus of part 2 of our series, is the schematic symbol which is a logical representation of the part that emphasizes readability for the design engineer’s schematic.

The last aspect, is the footprint of the component, which is used to describe a specific mechanical shape of the part and is necessary for the PCB layout and manufacturing.  We will split discussion of the footprint into two parts, optimizing our design first for the layout design and then for manufacturing considerations.


The attributes should contain a few obvious but important notes.

  1. The full part number of the product you want to use should be included as well as the name of the manufacturer of the part.
  2. A URL to the part’s datasheet.  This can help someone quickly locate the information that was used to create the part in the part library.
  3. The package type (such as QFN, BGA, through-hole, etc.).
  4. Also to be included are any specifications necessary to understand what the part does.  For example, if the part is a crystal oscillator, the attributes should indicate the frequency it operates at.


For the practical “How-To” of creating the attributes of a new component in Upverter, see our YouTube video.