One day [Andy] was cruising around eBay and spotted something interesting. Forty Virtex-E FPGAs for two quid each. These are the big boys of the FPGA world, with 512 user IO pins, almost 200,000 logic gates, packed into a 676-ball BGA package. These are not chips designed for the hobbyist. These chips are not designed for boards with less than six layers. These chips aren’t even designed for boards with 6/6mil tolerances from the usual suspects in China. By any account, a 676-ball package is not like a big keep out sign for hobbyists. You don’t turn down a £2 class in advanced PCB design, though, leading to one of the most impressive ‘I just bought some crap on eBay’ projects we’ve seen.
The project [Andy] had in mind for these chips was a generic dev board, which meant breaking out the IO pins and connecting some SRAM, SDRAM, and Flash memory. The first issue with this project is escape routing all the balls. Xilinx published a handy application note that recommends specific design parameters for the traces of copper under the chip. Unfortunately, this was a six-layer board, and the design rules in the application note were for 5/5mil traces. [Andy]’s board house can’t do six-layer boards, and their design rules are for 6/6mil traces. To solve this problem, [Andy] just didn’t route the inner balls, and hoped the 5mil traces would work out.
With 676 tiny little pads on a PCB, the clocks routed, power supply implemented, too many decoupling caps on the back, differential pairs, static RAM, a few LEDs placed just for fun, [Andy] had to solder this thing up. Since the FPGA was oddly one of the less expensive items on the BOM, he soldered that first, just to see if it would work. It did, which meant it was time to place the RAM, Flash, and dozens of decoupling caps. Everything went relatively smoothly – the only problem was the tiny 0402 decoupling caps on the back of the board. This was, by far, the hardest part of the board to solder. [Andy] only managed to get most of the decoupling caps on with a hot air gun. That was good enough to bring the board up, but he’ll have to figure some other way of soldering those caps for the other 30 or so boards.
Recently we started a series on the components used to assemble a circuit board. The first issue was on dispensing solder paste. Moving down the assembly line, with the paste already on the board, the next step is getting the components onto the PCB. We’re just going to address SMT components in this issue, because the through hole assembly doesn’t take place until after the SMT components have gone through the process to affix them to the board.
SMT components will come in reels. These reels are paper or plastic with a clear plastic strip on top, and a reel typically has a few thousand components on it. Economies of scale really kick in with reels, especially passives. If you order SMT resistors in quantities of 1-10, they’re usually $.10 each. If you order a reel of 5000, it’s usually about $5 for the reel. It is cheaper to purchase a reel of 10 kOhm 0603 resistors and never have to order them again in your life than it is to order a few at a time. Plus the reel can be used on many pick-and-place machines, but the cut tape is often too short to use in automated processes.
The general process of circuit board assembly goes like this: You order your PCBs. You also order your components. For surface mount components, you apply solder paste to the pads, put the components on top, and then heat the board up so the solder paste flows and makes a bond. Then for through hole components you put the leads through the holes, and solder them with an iron or a solder wave or dip. Then you do an inspection for defects, program any microcontrollers, and finally test the completed board to make sure everything runs.
The tricky part is in volumes. If you’re only doing a few boards, it’s usually easiest to assemble them by hand. In the thousands you usually outsource. But new tools, and cheap hacked tools, have made it easier to automate small batches, and scale up into the thousands before outsourcing assembly.
There’s a lot of little things that can go wrong before you get great results out of a process. We like to read build logs to learn from the mistakes made. [Marc Liyanage] bought a Nomad CNC machine from Carbide3d, and after a bit of learning has gotten some very nice PCBs out of it.
The first trip up he encountered was not setting the design rules in EagleCAD to check for gaps too small for his router bit. After he sorted that, and worked around an issue with Carbide not supporting R values for curves; instead opting for IJK, he made a nice TQFP to DIP break out board.
The next board was a more complicated double-sided job. He cleverly had the machine drill two holes all the way through the PCB to give him a space for two alignment pins. Unfortunately this didn’t work out exactly as planned and he had a slight misalignment with some of the via holes. It looked alright and he began assembling. To his dismay, the clearances were off again. It was a bit of deja vu for us.
We’ve made lots of boards on a CNC machine, and can attest to the task’s finicky nature. It’s certainly quicker than the photoresist technique for boards with lots of little holes. It will take someone quite a few tries before they start having more successes than failures, but it’s very rewarding.
The plotter in question is a 1983 HP HIPLOT DMP-29 that was, like all old HP gear, a masterpiece of science and engineering. These electronics were discarded (preserved may be a better word) and replaced with modern hardware. The old servo motors ran at about 1.5A each, and a standard H-Bridge chip and beefy lab power supply these motors were the only part of the original plotter that were reused. For accurate positioning, a few 10-turn pots were duct taped to the motor shafts and fed into the ATMega1284p used for controlling the whole thing.
The final iteration of hardware wasn’t exactly what [Connor] and [Feiran] had in mind, but that’s mostly an issue with the terrible conductivity of the conductive ink. They’ve tried to fix this by running the pen over each line five times, but that introduces some backlash. This is the final project for an electrical engineering class, so we’re going to say that’s alright.
A common way to create a custom PCB at home is to do what is called the Toner Transfer Method. In this process, the trace layout of the board is printed out on a piece of special toner transfer paper that allows the ink to come off in the following step. The toner transfer paper is then put print-side-down on a copper clad PCB blank, heated and pressed with an iron. The heat and pressure from the iron transfers the toner from the paper to the copper. The exposed copper then is chemically removed, the previously applied toner protects the copper in the pad and trace areas. The toner is then removed using paint thinner.
That is a long process with many critical steps. [mlerman] wondered why no one was printing the toner directly to the PCB. He has been tinkering with printing directly on PCB blanks for 4 years now. He’s made hundreds of boards over that time and can now make a PCB in under 15 minutes.
The obvious route to take would be to modify a current laser printer to accept the much-thicker-than-paper PCB boards. A few printer models were tried but [mlerman] feels the Lexmark E260 works the best due to the cost, internal mechanical components and an easily modifiable manual feed system. There is also a Local Printer Utility that allows the majority of the printer parameters to be adjusted.
After making your first PCB, you’re immediately faced with your next challenge – drilling the holes. It’s a doable task with a small drill press, but a lot of makers already have a small CNC mill or router, but how to make that work the first time? [Alessio] has you covered with a technique that uses a CNC-mounted webcam and some linear algebra for perfect through-holes the first time and every time.
A few months ago we saw [Alessio]’s work with transform matrices and PCB drills. The reasoning behind this technique is if a PCB isn’t exactly aligned to a CNC mill’s axes, or if the scaling for a toner transfer board is a bit off, automating the drilling process will only end in pain, with holes going through traces and a whole host of other nasty things. The application of linear algebra gets around this problem – taking a measurement off of two or three known locations, it’s easy to program a CNC machine to drill exactly where it’s supposed to.
[Alessio]’s new project takes the same mathematical techniques and applies them to a very sleek application that uses a drill-mounted webcam. After taping his homebrew PCB down to the mill, [Alessio] simply marks off a few known points, imports the drill file, and lets a computer calculate where to drill the holes. The results are remarkable – with a soldermask and silkscreen equipment, these handmade boards can be just as good as professionally manufactured boards,
There are Windows and OS X binaries for [Alessio]’s tool available on his page, with a video demo available below.