Following on from my last post my hardware order arrived from Mouser and RS Components and I set out to assemble my CPC2.0.
This was a nervous build for me because I’ve created complex 4-layer boards before with fine pitch BGAs, but never anything this complex. Something was bound to go wrong.
Still, I was prepped and ready, so time to dive in.
The first step is to check the components fit the footprints. I found that the HDMI connector was too loose and the legs that I expected would fold under the board barely stuck through. This means the HDMI connection would move at every insertion and ultimately fail. The second problem was that the mini USB-B mounting was too small, so I had to cut off the two front posts to make it fit.
When I checked the FT2232HQ chip, I was astonished at the small tolerances around the pins and the tiny exposed surface area. However, the footprint I put together appeared to fit. Additionally the ADV7513 chip fit exactly. There was no pad exposed beyond the end of the pins. I had to position this exactly.
With some trepidation I started to apply the solder paste to the board. I positioned the stainless steel stencil over the board and secured it in place. The 0.8mm pitch parts were clearly going to struggle as the 0.4mm pad was barely visible through the holes. The paste mask holes were 0.324mm in diameter because of the undersized paste mask. The solder paste I’m using is rated down to 0.5mm, so this could be a problem as the viscosity of the paste may not make it through the holes.
On the other end of the scale of the same issue, the larger components such as the inductors were swamped with solder paste and as time went on this spread across the pad and into adjacent pads, potentially causing a short.
Of particular concern was the grounding pad on the ADV7513 and FT2232H. These had a thick layer of solder paste due to the size of the paste mask hole and I was concerned that such a thick layer would prevent the pins contacting the pads a preventing a good solder joint. As a preventative measure, I scraped off much of the solder paste under these parts to reduce the possibility of this.
It took me about 45 minutes to place the main parts on the board and I was worried about the continued solder paste spread. After placing everything except the resistors, capacitors and inductors, I decided to bake the board to prevent further spread of the paste.
Here’s how it came out, still hot on the oven tray:
Notice particularly the off center SDRAM chip, bottom center right. The smears of solder in the bottom right quadrant were not significant and I would clean these up later.
I added a few components using a hot air SMT tool to get the 3.3v line working and started to test at that point. Upon testing the board I found there was a short between the 3.3v line and ground. The problem was that I didn’t know where. The 3.3v supply chip would shut down in an overcurrent situation, so I couldn’t trace where the voltage was being diverted.
In somewhat of a panic, I started to disassemble the board and remove components one at a time until I’d found the short. I removed all of the 3.3v power supply components, and found that my hand SMT work was not at fault. I suspected the FT2232H chip as the tolerances on this were so tight and I could easily see that the pool of paste under the grounding pad could wick into one of the supply pins. I removed the chip and cleaned the board, testing with a multi meter as I went, but still no fault location.
Only then did I notice that the SDRAM chip was not precisely centered. This is a 0.8mm pitch part, with 0.4mm pads, so it only needs to be out by less than half a millimeter and a short would be possible. I’m guessing it was out by a whole pad width because when I removed this chip and cleaned the pads, the short disappeared.
By then, I’d decimated the board and despite careful cleaning, there was a mess all over the board. Was it recoverable? Probably, but after 5 hours work, I just packed it all away carefully to be reassessed another time when I was calmer.
If you’ve ever been in this situation, where you’ve put in so much time, effort, money to build something only to have it not work, or break, then you’ll know that words cannot express your disappointment and pain.
I have been doing a lot of reading lately on personal growth and failure. This was the first failure I’ve had in many years, so I should count myself lucky. I was determined to analyse this failure so that I do not repeat mistakes in the future.
Here’s what I learned:
- If the solder paste data sheet says printing down to 0.5mm, do not try to print 0.323mm pads. The viscosity of the paste won’t allow it.
- Increase the paste mask opening for BGAs to a minimum of 0.5mm
- Solder paste is essential to the alignment process. Without paste, the chips don’t self align. Little to no paste was on the SDRAM, so it could not self correct when baked.
- Decrease the paste mask opening for large components to prevent paste spread
- Make the design simpler to assemble by putting ‘like’ components together. When the paste is spreading you don’t want to be taking too long to place components
- Pick pins on the devices that are close to the other pins you need to use. This reduces the complexity and the need for vias. I have a suspicion that the via’s under the SDRAM contributed to the short.
- Don’t make the silkscreen exactly the same size as the chip. If you do, it can’t be seen when the chip is in place. 1-2mm larger would have allowed me to better align the BGA.
Below is the “sarcophagus” where my failure will live until I have time to recover the parts. At some point I’ll try to reball the BGAs and test that process. Note also the detritus in the bottom right and the tiny pins around the edge of the FT2232HQ (immediately right of the board). A total of about $300 to date on the boards, components and consumables.
So what’s next?
I’ve decided that with so many issues with this board, I’ll start again using the lessons learned from this (expensive) process. It should be quicker this time around too. The first step is revisit the block diagram.