Droplet generation using a hard drive

This blog post is a mini-version of the paper A simple vibrating orifice monodisperse droplet generator using a hard drive actuator arm, written during my time in the Ashgriz lab in Toronto. It has since been published in Review of Scientific Instruments.

The finished generator Tools required: old hard drive (single-platter ones are easier to work with!), wire, metal hack saw, soldering iron (probably, though not strictly), a liquid supply, tubing.

Optional but recommended: electric band saw, small piece of plastic sheet (e.g. acrylic or polycarbonate), two or three small screws, drill press, epoxy glue, glass capillaries, audio jack, audio cable, function generator, syringe pump, strobe light, magnifying glass, lab stands.

For the nozzles: hypodermic needles, sand paper, a flame, epoxy glue, glass capillary tubes.


Impact experiments, laser-based drop sizing, aerosol studies – any of those require you to produce thousands of droplets that are all, say, exactly 350 microns in diameter. What are you going to do?

The straightforward approach, and the one used in inkjet printers, is to use a sort of mini-pipette. Build a liquid-filled chamber, and rely on some mechanism that pushes out exactly the desired amount of said liquid through a very thin nozzle. The simplest such mechanism is a piezoelectric element. Jiann Yang & friends, at NIST, published a design in the 1990s (PDF) that has inspired countless grad students and hobby tinkerers (see the DIY printhead topic in the RepRap forums). Later, Hartmut Ulmke invented a similar device (although his device squeezes the nozzle, not the chamber).

Piezo-based drop generation works very well. Until it doesn't, of course. The nozzles get clogged, the crystals crack, air bubbles get into your chamber, and to add injury to insult, you keep zapping yourself by inadvertently touching the element.

Or, if you don't need to control individual droplets, you could take a very thin stream of water and lightly shake it at a high frequency. If you do it right, the stream will break up into droplets of the desired size. The challenging part here is the water-shaking.

You could have recourse to piezoelectric elements once more. And, in fact, you can buy droplet-generating machines that do exactly that (the most popular design is by Berglund and Liu; paper here). But they're pricey: used specimens of TSI's VOAG3450 model, for instance, sell for US$2500 on eBay.

So, the last half century, many of us have resorted to clamping a needle into a lab stand and shaking it with the cone of a speaker, because speakers are cheap. Now, the problem is that depending on the liquid, the needle, and the droplet size you need to produce, you get to listen to this all day:

… at the volume of a typical domestic fire alarm. It's atrocious.

Of course, there is no elegant way to mount a loudspeaker to an experimental rig in the first place—let alone to attach the needle to the speaker's cone. It will always be an embarassingly awkward contraption, liable to fall apart any day (but particularly so on the Friday afternoon just before your paper is due).

Here's what occured to me one morning, sipping my tea while staring at the pile of computer rubble in the corner of the lab: hard drives have a rotary actuator that controls the sideways movement of the read/write arm. In case you haven't opened up a hard drive in a while, here's a drawing to show you what those actuators look like (and where the nozzle would go):

Exploded view of the actuator assembly

It's straightforward: the arm pivots about an axis. At its tip sits the read/write sensor (which you'll rip out); glued onto the other end is a flat area of copper wire wound into a coil. That coil, sandwiched between two magnets, becomes magnetic itself once you electrify it and instantaneously whips the arm to the side. Reverse the current, and the arm flits to the other side. During normal operation, the actuator is controlled by very precise servo electronics (which you'll rip out as well), and it moves extremely fast – it has to, because modern hard drives spin at 7200 RPM.

To cut a short story even shorter, you'll apply an alternating current to the coil to make the arm vibrate, to shake the nozzle, to break up the water jet. In my experience, the arm will translate frequencies up to 17,000 Hz (i.e. the upper limit of my hearing range) into movement without any problem, and probably beyond.

Construction and operation

You can make your own in a few hours, assuming you have an old hard drive lying around somewhere. Here's the recipe:

Hard drive with cover removed

  1. Loosen every screw and pry open the cover.
  2. Temporarily remove the top magnet, arm axis (1), arm (2), ribbon wires (3), circuit boards (4), and platters (5) such that only the base plate remains.
  3. Cut out the corner of the base plate holding the axis bearing (i.e. saw along the dashed line).
  4. Reinstall the arm and axis.
  5. Remove the read/write head (6) and all of the wiring leading to it, along with any connected I/O and servo circuitry (4). If your model has a ribbon cable (3), be careful not to tear off the two strands powering the coil. You can rip the ribbon cable out, but make sure there are exposed terminals (7) to which you can solder new leads.
  6. The wire strands and/or your solder connection will probably be very delicate. I epoxied them to an audio jack, which I glued into an acrylic cover plate that I bolted onto the base plate. The cover plate has the wonderful side effect of preventing me from accidentaly bending the arm. (See the photo at the top of this page.)

Nozzle manufacturing

You can now stick your nozzle through one of the holes at the tip of the arm. Oh, right. I haven't mentioned the nozzles. You can use unmodified hypodermic needles, of course (and I'd recommend those with Luer fittings to keep them easily exchangeable). But it's even better to use a piece of glass capillary, carefully sanded flat and then heated in a flame, which you can then glue into a clipped hypodermic needle as shown below; with the capillary tip shown from left to right: broken, sanded, heated in a flame (I.D. 200 μm), heated for longer (I.D. 25 μm, could be sanded down by about 200 μm), overheated (I.D. 0 μm).


These things are ridiculously easy to make. You just have to buy the needles (I used size 16G) and borosilicate capillary tubes, both of which are (almost literally) a dime a dozen. The nozzles get clogged easily, especially when your orifices are very small and even more so when you're using unfiltered tap water. But you can always pop the nozzle onto a syringe and draw clean (or soap/CLR) water back through it to clean it out.


Connect the coil to a function generator and dial in 50 Hz at about 1 V, and you should see and feel the arm jitter lightly. (Don't have a function generator? Use a tool like onlinetonegenerator.com and plug the coil into your headphone jack.)

Stick the nozzle through one of the small holes at the tip of the actuator arm, and feed liquid into it. It's best to use something like a syringe pump—you want to make sure you get a constant flow without pressure fluctuations. Increase the flow rate such that the jet breaks up into random droplets after a distance of about ten-ish orifice diameters. Now adjust the frequency of the function generator. Whether or not your droplets are uniform is easiest to see when looking at them through a magnifying glass and against a strobe light. If you don't have one, blow against the stream: if it deflects at a uniform angle, all droplets are of the same size.

A rough guideline that relates orifice diameter \(D_o\) and frequency \(f\) to the flow rate \(Q\) is

$$ 3.5 \leq \frac{Q}{\pi f \left(\frac{D_o}{2}\right)^3} \leq 7.$$

Under stable conditions, each oscillation will result in one droplet. This makes it easy to find the size of the droplets; all you need to do is divide the flow rate by the frequency and convert from volume to diameter:

$$ D_d = \left(\frac{6Q}{\pi f}\right)^{(1/3)} $$

for the droplet diameter \(D_d\).

I had no problem at all making droplets between 100 μm and 1 mm. I didn't try making smaller or larger ones, though I see no reason why that shouldn't work.

Here is a chart with some frequency/flow rate combinations that worked for me. Photos show \(D_d\) = 200 μm and 386 μm, respectively.

Droplet chart