BOM & Part Sourcing

I have finally got to the point where I’m ready to get the first prototype of my board fabricated and am now thinking about sourcing the parts for home assembly.

I have exported the BOM from Fritzing and now I’m a bit stuck in choosing which components to order from Digikey. Most are standard; the 0603 passive components like resistors, capacitor, LEDs etc, I can do source find them. But there are some that I am having difficulty identifying on Digikey from the Fritzing BOM.

Is there a particular technique for doing this? When I was developing the board I was just dragging parts in from the Fritzing parts library assuming they were all standard and easy to buy. Here are the ones I’m having difficulty finding :

• Capacitor Polarized - package eia3216; variant 1206
• Diode - package sma-diode_alt; variant sma-alt
• Resettable Fuse PTC - package ptc-1206; variant smd
• Crystal ( 12Mhz ) - package crystal-smd-5x3; variant 5x3
• Resonator ( 8Mz ) - package resonator-smd; frequency 10/20MHz; variant smd
• USB_AB - package usb-ab-micro-smd

Also, I just want to make sure I select the right size of ATmega328, this is what the Fritzing BOM says.

• ATmega328 - package tqfp; variant tqfp32 8mm;

All or any help and advice is welcome. Thanks.

It looks like you have picked generic parts out of the bin.

Usually you work out what values you need, find a part that suits in Digikey, and then put that part number into the parts Inspector. Basically you need to know what part before you even put it in FZ, because it has to be able to handle the power, and the FZ part must have the footprint of the actual part you are going to use.

Thanks Old_Grey, well I’m new to all this…

I built a breadboard prototype with an Arduino pro mini and a bunch of breakout boards ( two MPR121 capacitive touch breakout boards, a CH340G serial/usb breakout board and four AH180N hall effect switch breakout boards )

I got things working as I wanted and then I used the open source schematics for all of these to draw out schematics in Fritzing dragging in parts from the core parts library, searching for some sparkfun parts and creating some parts myself that were not there based on generic ICs and using the data sheets and package footprints.

I’m not sure what to do next then, I guess I was not aware of best practice. I thought I would just use these Fritzing parts selecting the correct values, and choosing package sizes according to my design. I was then hoping to source and buy the components. Surely all of the parts in the Fritzing libraries are buyable on Digikey? It’s just there’s so many things on Digikey and I don’t know what to go for. What are your suggestions for my next steps?

( Meanwhile I’m building a toaster reflow oven for the assembly and soldering once I get the boards and parts )

All is not lost, its just a bit of work. The Fritzing parts are usually generic (as there are so many variations) but with the specs and digikey search you should be able to pick appropriate products. For instance the

above, on digikey search for “Resettable Fuse PTC” (probably want to tick the in stock box, to make sure they have them). That gets you a huge list (2600+ for me right now), so in the filters (in package/ case this time) select 1206 (as that is the case size Fritzing used for the foot print) that reduces your choices to 11. Now you need to figure out how much current (and any other relevant parameters) to select one. At that point you should access the data sheet and make sure the footprint matches the one that Fritzing selected in pcb. That should be the case, but better safe than sorry. Some like the diode and crystal will be a little more exciting because the Fritzing spec doesn’t match digikey’s but if you pull up the data sheet for the part on digi you should be able to figure out if it has the right footprint after making sure the other needed parameters match (for which the filters are your friend).
(edit: It just struck me that you said “new to all this” which may mean that you are unaware that the ATmega328 from digikey won’t have the Arduino boot loader in it and you will need to be able to arrange to program it in. Have you considered using a pro mini board (they are available from a couple of bucks from ebay with a longish delivery by mail, or for about $10 from digikey (where the CPU alone and unprogrammed is $3) before considering the cost of support parts such as the cyrstal. Thats what I usually use as its cheaper (and assembled and programmed with the bootloader) for less than I can buy the CPU let alone the support parts (assuming I buy from ebay).


Just read the part # off the parts in the circuit and Goo search a datasheet.

Things like the “Capacitor Polarized”, you would get the value and voltage, and look for a non-polarised version so you don’t have to worry about which way you put it on the PCB.

EEVblog has heaps of vids on how to design stuff, like picking parts, finding parts in Digikey, PCB design for manufacturing, etc. Most are at the start.

Selecting parts

Designing - part selection.

Hey guys. As I’ve said, I’m really new to all of this and perhaps in over my head but hey. I’m trying to make my first board on an extreme budget. I’m planning to buy the parts as cut reel strips from cheap Chinese aliexpress sellers.

I now have a BOM spreadsheet with a purchase link for each part.
Do you think if I posted my schematic and my spreadsheet anyone would have time to check them over? Or is that just a bit too much to ask?

No harm in posting the schematic (preferably as an fzz so its readable in frtitzing) the spreadsheet may be more difficult as the forum only accepts some formats. If it won;t upload you could do it like we do for svg files and rename the file to fzpz (which will upload) and tell us to rename it to whatever for use after download. If cost is an issue, I expect that a pro mini is going to be much cheaper than doing an assemble your own CPU, but we will see :slight_smile:


I think he is using the BOM that FZ generates, the html.

Thanks guys.

I did use the BOM html file that Fritzing generates, but only to populate a more useful spreadsheet with fields for the purchase links and datasheets etc. Here are links to the schematic and the BOM. If you have a chance to take a quick look it would be much appreciated.

If you see any critical errors please point them out. Obviously I’d prefer to get it as right as possible before sending off for board fabrication and ordering parts.


Nothing leaps out at me as being wrong particularly. That said, I’m lazy and I would replace much of this with an Arduino nano board. Taking the parts cost of just the mega, ch340, fuse, ldo and the crystal and regulator I come up with $7 US for the parts without the time to assemble and program the bootloader. For about $2.75 US (from ebay I assume the same on other sites) I can buy an assembled and bootloader programmed arduino nano (5V 16 mhz though, there doesn’t appear to be a 3.3V version, although there is a conversion tutorial to 3.3V on the net). For that you get the usb/micro combo with the bootloader programmed on a smallish board that you can replace much of your circuitry with. Much better chance that it will work first time than trying to build your own from scratch. If you can use 5V rather than 3.3 even easier.


I will start by saying I have not reviewed your project. But with that said I have to agree with Peter in the use of a prebuilt MCU module. You could use an Arduino Pro mini 3.3v if you don’t need USB for anything other than programming. You could use a Nano 5v as Peter mentioned if you need USB all the time. Or you could use a new Arduino Pro Micro 3.3v which is based on an Arduino Leonardo and has built in USB like the Nano but has the same small footprint as the Pro Mini. The pro mini can be purchased for $2 each with shipping if you can wait many months or a little more for decent shipping. The Pro Micro and Nano are both about the same price and not much more than the pro mini.

I would also suggest something like a ESP8266 if you only need a few pins as it is 3.3v which you want, Arduino IDE compatible and has built in Wifi (limited memory though). If you need more pins you could also use an ESP32 which has bluetooth and Wifi plus tons of GPIO’s and is also 3.3v and Arduino IDE compatible. The Esp8266 is really low cost and the ESP32 is also a good price (under $6 from a few places even in the US), The draw back with the ESP modules is no built in USB but you do have Wifi and Bluetooth so no real need for USB.

Hi guys, I’m aware of the benefits of prebuilt arduino compatible micro controllers, but this is not the point. I’m building an all in one board and I have my reasons why not to solder on a pro mini.
I was just asking advice on whether my schematic and BOM seemed ok, but no worries; I’ve gone ahead and ordered all the parts now anyway.