Towards a simple solder-paste extruder


I recently posted about a simple and inexpensive pick-and-place vacuum head that I’ve been designing. With the swivel house connector figured out, I’m just waiting on some hose couplers before mounting it to give it a spin. In light of the pick-and-place vacuum head seemingly in good shape, I thought I’d take a moment to post a few pictures of a prototype solder paste extruder that I started designing this weekend, since I’m hoping to do this automatically as well.

When I first started with surface mount components I just manually dispensed the paste from the syringe, and in the last few years I’ve been using the inexpensive solder paste stencils from places like OSH Stencils to really speed up the pasting process, as well as make it more repeatable and reliable. But as much as I refine my technique, I’m still not great at stenciling paste on larger boards that have lots of fine pitched components, on the order of 0.4mm to 0.5mm spacing. I find that after stenciling I’ll spend a good deal of time moving the paste around with fine tweezers to help prevent bridging (although often there are still bridges), and so I usually end up manually soldering fine pitch TQFP parts, which is very time consuming. For a project in my queue, I’ve designed a board that has about 300 parts (summing to a little under 2000 pads), most of which are 0402 capacitors or 0.4mm pitch leadless QFNs over a board that’s about 10cm on an edge — which is likely beyond my capacity to easily, reliably, or comfortably assemble by hand. This is exactly what these machines were designed for, after all!


I had a good look at a bunch of open paste extruders on Thingiverse to see what folks have been up to, and how this is traditionally approached. I’ve read that high-capacity commercial machines often use pneumatics for solder paste extrusion, but that’s a level of complexity that a lot of the folks in the open source community aren’t willing to get into (myself included), although there are some examples of this approach being used, like the Claystruder. The two more common approaches to open paste extruders seem to be using a lead screw to press on the plunger (like with this simple-paste-extruder or the Printrbot Paste Extruder), or using a belt attached to a vast system of gears to very slowly press down on a syringe plunger with high torque (as with Richrap’s Universal Paste Extruder). I happen to have one of Richrap’s extruders and it’s a beautiful piece of work, but all the gearing make it a little large and heavy for the machine that I’m putting together. The lead screw approach has always appealed to me for it’s simplicity, so I decided to give that a try first. The recent kickstarter for the Voltera Circuit Printer has also convinced me that the lead screw approach can likely be done very compactly, with a minimum of weight, and support quickly changing paste syringes.

The prototype that I put together is more of a sketch in hardware to help me appreciate the issues of paste extrusion, and help hammer out a design. Instead of using a plunger, I’ve used a very long lead screw that acts as the plunger, and has a gear atop with a captive nut to transfer force. The gear is driven by a Parallax continuous rotation servo, which I thought I’d try given that it simplifies the design by having an integrated gear box (which gives it lots of torque), and it can be directly driven by a microcontroller rather than requiring a separate stepper driver.


There are aspects of this design that work really well — the syringe is very easily accessible, and very quick to change. It’s also fairly compact, but I think could be even more compact — the size is largely driven by the orientation and width of the servo motor. Some important bits that I observed with this test rig:

  • Resolution requirements: Using this 8-32 screw, it takes about a quarter turn of the nut to start the paste extruding (from rest). But the paste keeps flowing, so it’ll likely need to move (say) a quarter turn in one direction to get the paste flowing, then immediately move most of a quarter turn in the opposite direction to stop the paste from flowing, and get an appropriately small spot of paste. It’s not clear whether I’ll have to move to a stepper to get the required resolution for this back-and-forth traversal.
  • Force: Quite a bit of force is required — it does bow the MDF on my prototype a bit at the top, so that plate will have to be more rigid.
  • Reversing: Some designs include rails, while others appear not to include them. Given that reversing appears to be not just a convenience for more easily swapping out paste syringes, but also an integral part of the extrusion process to prevent oozing and more accurately deposit precise amounts of paste, some rails will have to be added to ensure that the linear motion is transferred to the screw (and that it doesn’t just spin in place).

Definitely a successful experiment, and plenty to absorb for my next free evening infront of the laser cutter. Hopefully with a few more iterations I’ll have arrived at a very functional, capable, and compact design. Thanks for reading!

Towards a tiny pick-and-place vacuum head


I try to have a few different projects on the go at any time — a big, long term project (like the Arducorder), a shorter-term fun project (like the Open Source CT scanner), and a bunch of smaller weekend or few-weekend project (like the open mini spectrometer). Having a few projects of varying time scales allows you to switch projects when you’re burned out on one, and make more headway on creative pursuits when you’re at the mercy of inspiration. A project I’ve had on the backburner for some time is building a small, open source pick-and-place machine. In the past year or so there’s been a lot of interest in this space, and different groups (e.g. openpnp, firepick) have been working on designs to help folks assemble boards quickly and inexpensively. I thought I’d take a moment to show my progress on a pick-and-place vacuum head, given that I haven’t found a great deal of consolidated information on the topic.


I confess that I’ve been thinking /very/ big and intractable on my pick-and-place project, so much so that it’s been never ending. There’s been a half-built machine in my workshop for several years that slowly sees progress every few months, largely because the project is too big — I have been trying, as a hobby, to make a factory in a single 50cm cubed machine. I designed the machine with an automatic tool changer so that it could pick up different heads, the idea being that you could pick up a mill head to mill out a circuit board, pick up a solder paste dispenser to apply paste, then pick up a pick-and-place head to populate the parts, and finally pick up a 3D printing extruder to create an enclosure for the board, all assembled by the same machine. This is of course fantastically challenging, and likely way too large a project for a single person, and I’ve only progressed as far as designing and building the tool changing head and x/y/z cartesian robot, but haven’t returned to the project to build any of the tool heads, like a vacuum head for picking-and-placing components and populating circuit boards.


Putting together a small, working pick-and-place machine has jumped closer to the front of my queue lately. One of the most challenging things to accept as I’ve been getting a little older is that there’s only one of me, and only so many hours in the day — especially when trying to have a work/life balance. I have an interesting sensing project in my queue, but populating the board requires populating about 300 components, many 0402, extremely precisely. More than that, I’ve been working to put together a few extra Arducorders, and each Arducorder takes me 4 full days to put together — the motherboard alone tends to take about 8 hours, as it’s double-sided, full of fine pitch components, and one side tends to have to be hand soldered. All this means the process has been going very slowly, much slower than I’d like.


I feel like inexpensive open source pick-and-place vacuum heads are in a similar place to where open source 3D printer extruders were about a decade ago. In the early days of the RepRap 3D printer project, many folks were trying to figure out exactly how one could design an inexpensive FDM extruder, and there were a lot of different designs from melting pots that were fed with shredded scraps of plastic bottles, to pinch-wheel designs that are similar to the extruders commonly used on 3D printers today. Many folks have posted great prototype designs for inexpensive pick-and-place vacuum heads, but I haven’t seen many that have been demonstrated to reliably pick up parts larger than 0603 resistors, or that have been demonstrated to reliably rotate parts into their desired orientations.


This isn’t to say that there hasn’t been a lot of fantastic work in this space. Frequently someone will post an absolutely gorgeous pick-and-place design that they’ve put together (this one by Daniel Amesberger comes to mind), but they’re usually both expensive and intended for professional use. It’d be nice to have an easy to assemble system that was around a few hundred dollars, and that sped up the process a good deal without being intended for high throughput.


Recently I saw a post on Hackaday describing a clever prototype pick-and-place head that uses a tiny piezoelectric vacuum pump (or “microblower“) from Murata. This design is attractive — at about 20x20x2mm, the pump is very small, and could be contained on the pick-and-place head itself, simplifying the design, and removing the need for an external vacuum pump, which are often fairly large and noisy.


The microblower is designed to blow air rather than act like a vacuum, and so to use it as a small vacuum pump the intake ports have to be covered. I put together a small acrylic sandwich with the microblower in the middle, the blower output on one side, and a port for the microblower input on the bottom. I also found a small NEMA14 stepper motor with a hollow shaft to use as a rotation mechanism for the part. This is attractive, as the mechanical design can be kept quite simple — a microblower on one side of the motor, and a nozzle on the other to interface with the part.


The pick-up end couples the business end of a solder paste syringe and detachable luer-lock dispensing tip (from Zeph) to the 5mm stepper motor shaft using a set of press-fit rings that I laser cut out of acrylic.


The bottom of the Murata microblower is shown above, which is where the large inlet draws in air. The tiny hole under the inlet is about 2.2mm in diameter, which is the same size as the drill in the hollow shaft stepper. I happened to have some polystyrene tube that was nearly press fit, and just required a little sanding on either end to couple the microblower inlet with the stepper shaft. Also seen here is the microblower driver board from the Murata evaluation kit.


The top of the microblower, shown above, is also press-fit coupled to the top of the acrylic case. I added in some sealing silicone to this aperture (as well as the wire harness aperture) after taking this picture, to ensure the highest vacuum, and best chance of success.


An arducorder, for size. Although a prototype, and the long coupling tube between the microblower and motor could clearly be shrunk up quite a bit to reduce the overall height to just over the height of the NEMA14 stepper.


How well did it do? Like other’s designs I’ve seen, it had little issue picking up 0603s with ease, but the real measure is how well it does with other components. Unfortunately about the heaviest I could pick up, even with some suction cups attached, was this ~4x4mm magnetometer — and even then, it was right on the edge of the pick-up strength. It could be picked up flat from the table, but not from within the tape.


And so it appears that a microblower, while a very exciting component, is likely only useful for picking up extremely small components when used as a vacuum pump for pick-and-place heads.


Some time ago I’d also tried this experiment using a KPV14A-6V micro vacuum pump from Clark, again without much luck. In light of this, it looks like my hope of designing a tiny, inexpensive, and completely self-contained pick-and-place vacuum head likely is still a ways off, but there are plenty of other options for vacuum pumps, if we’re willing to relax the completely self-contained constraint. Grant Trebbin has reported a good deal of success with the Sparkfun vacuum pump for his manual pick-and-place, and mentioned that he’s able to pick up around 15g with appropriately sized suction cups — more than enough for most components. So let’s give that one a try.


I put together a quick adapter to go from the 1/4 ID tubing from the Sparkfun vacuum pump to the ~2mm diameter bore on the stepper shaft. This larger diameter tubing is far too stiff to move around, so eventually it’ll have to be sized down to something much smaller and more flexible, and the adapter mount will have to better allow for up to 180 degrees of rotation — but this make-shift coupler is good enough for a first test.


The Sparkfun vacuum pump is capable of much more lift than the microblower, and was able to lift nearly every part that I gave it. Here a 100-pin TQFP is lifted with ease, even with the motor running at 8.5V (from 12V) to reduce the noise a bit.


And here, the pump similarly has little issue picking up an entire bluetooth module. Definitely very promising!

I hope this has helped some folks who are also thinking of putting together their own pick-and-place vacuum heads. The microblower is a beautiful part, and were it to have enough suction, mounting it atop the stepper would make for a very small, self-contained, inexpensive vacuum head — but as it is, it looks like it’s only appropriate for picking up small passives. The Sparkfun vacuum pump definitely has more than enough suction for most of the parts that I’m likely to encounter, and after figuring out a better coupler between the vacuum pump and the stepper shaft that will better allow for rotation, it’s likely to perform quite well. My one reservation is that the luer-lock heads appear to attach slightly off-center, so that when a part rotates, it translates a little while rotating. I’m sure with a little alignment it’ll work out famously.

Thanks for reading!