Up until now I have been making my PCBs at home (which you can read about in my previous posts), with varying levels of success. The issues mainly arose due to my heavy use of tiny surface-mount devices (SMDs), and obsession with using the smallest board possible for a design. Whenever I’m laying out a SMD board, I can’t help but think that doing so requires the designer to be at least somewhat obsessive/compulsive due to the high level of concentration required for extended periods of time. If you can shut out the rest of the world and get lost in the process, it’s easy.
Anyway, I can’t see myself going away from the tiny-SMDs, tiny-PCBs mentality as anything else feels like I’ve let myself down whether due to being a waste of material/space/effort or for whatever other reason. This leaves me with two issues that have been causing me a lot of grief in my projects – transferring a design with 0.2mm (slightly less than 8mils, or 8/1000″) traces and trace spacing onto PCBs, and soldering components with equally tiny pins/pads without any soldermask on the PCBs. The first issue hasn’t been all that bad to deal with as it just takes more time and effort to get a good transfer, but the second issue has caused far too many boards to be scrapped. The worst part is that they get scrapped after I’ve already invested hours in them through the artwork transfer, etching, drilling, inserting vias, and soldering components.
That brings me to the subject of this post – I’ve finally decided to give a commercial PCB manufacturer a go with my latest (and greatest, of course) board. I don’t want to give anything away of the designs purpose yet, so I’ll just discuss its components in a non-specific way for now.
- The board consists of:
- 44 pad QFN (7x7mm)
- 36 pad QFN (10x10mm)
- 28 pad QFN (8x8mm)
- 28 pad QFN (5x5mm)
- 8 other smaller SMD ICs (most with no leads)
- Around 40-45 0402 capacitors
- Around 30 0402 resistors
- Around 10 0603 and 0805 capacitors
- A few dozen miscellaneous SMDs like ICs, connectors, etc
- The PCB is 85x60mm, double sided
For a nice picture of the sizes of some of these components, check out Curious Inventors guide to Surface Mount Soldering. That little speck near the tip of his little finger is an 0402 component – and I have 70-80 of those to solder!
I decided to do a bit of shopping around as this was going to be my first attempt at having a PCB commercially manufactured – not so much to find the best price, but to find one that I had a way to verify that my design was acceptable and not be rejected in a few days time. This lead me to try two services, Advanced Circuits thanks to their Free DFM site, and BatchPCB (SparkFun Electronics) also thanks to their DFM bot.
I was quite impressed by the quality of Advanced Circuits FreeDFM.com service since it handled my board in my first go at running it through the verifier, and the errors (on my PCB) it provided me with were understandable and gave me everything I needed to fix them. I’m not sure if I did something wrong, but I just couldn’t seem to get a good price from FreeDFMs automatic quote for my design unfortunately, so I was scared off by the prospect of paying a couple hundred dollars for a few boards of a design that I have no way of knowing would work. I’ll look at them again should I need to produce at least 10 boards, but it’ll simply not be worth it otherwise.
BatchPCBs verifier script is unfortunately more crude than Advanced Circuits, and many times it returned PHP errors while trying to just upload my design. Once that was taken care of, I was confronted with a lovely error of “aperture 36 too small: 0.0056″ (or similar). Now seriously, what are they thinking? You don’t know what aperture 36 is – it’s something the PCB program makes up for submitting the files to the PCB manufacturer. The only way you can know what it’s talking about is to manually open the files, find a line similar to “%ADD36C,0.0056*%”, change the size to something huge so it’s recognisable on the board, view it in a program like ViewMate, and narrow down the problem from there. This particular error turned out to be due to a library part I was using being designed with rounded SMD pads (rather than the standard square pads) – modifying the library to use square pads fixed the problem right up.
After that was out of the way, BatchPCB did provide me with an additional error that FreeDFM did not tell me about, but I think that may have been due to FreeDFM having slightly less restrictive requirements for board layout. The final price from BatchPCB? $20 per board + $16 shipping (I ordered 3 boards, so I have a few spare just in case).
So there we go, it did take nearly a day of fiddling and Googling, but I have my first PCB order under way. As BatchPCB works as an aggregator for a Chinese PCB manufacturer, I’m not expecting to see the boards for another month due to shipping times – but maybe I’ll get a pleasant surprise.