Chapter 1. Coffee Roaster

By Larry Cotton

image with no caption

Photography by Larry Cotton

The Nirvana Machine

Lots of folks think that quaffing a cup of coffee from boutique beans comes close to nirvana, but roasting your own beans will bring you even closer. That’s why I call this roaster the Nirvana Machine.

I didn’t drink coffee for most of my life, and I even survived without it in the Navy. But when my son introduced me to a cup of legendary West Coast java (OK, Peet’s), I began to understand what all the fuss was about. Soon, I too became fussy about excellent coffee.

Beans lose flavor after they’re roasted because all of those delicious but volatile aromatic compounds dissipate and break down. Roasting your own beans guarantees ultimate freshness, putting all the flavor into the cup; you will not drink fresher, more satisfying coffee!

Home roasting is easy and inexpensive. Top-quality green beans cost less than roasted beans and have a much longer shelf life. You can have fun fine-tuning your roast’s darkness and developing your own blends. Indeed, a growing selection of countertop roasting appliances are now sold, but they’re pricey, non-portable, and very noisy.


Larry Cotton is a retired power-tool engineer, musician, part-time math teacher and full-time coffee devotee who lives in eastern North Carolina.

Java Implementation

image with no caption

Illustrations by Tim Lillis

The Nirvana Machine uses a battery screwdriver to tumble beans over a camp stove. Unlike commercial machines, the basket is tilted and open-ended, which makes it easier to load the beans and to see and smell their progress during roasting.

When you roast coffee, sugars caramelize, water vaporizes and makes the beans expand, and aromatic compounds are produced, including the ones shown above. The compounds develop at different rates, so varying the roasting time and temperature lets you balance which you want more or less of, to determine the resulting flavor.

The Version 1 basket was a cheap strainer, but the beans broke through that and caused a fire!

Set Up

image with no caption
image with no caption


[A] 1′ square stainless steel wire cloth, .025″ wire diameter Do not substitute. McMaster-Carr part #9238T523

[B] Unpainted aluminum flashing 10′×10″×.010″

[C] Battery-powered screwdriver I used a Black & Decker AS600.

[D] 1½″×¼″ piece of aluminum, at least 4″ long Cut from McMaster-Carr part #6023K231

[E] aluminum bar, 3′ long Cut from McMaster-Carr part #8975K833

[F] A few inches of adhesive foam weatherstripping

[G] Single-burner propane camp stove The Century 2058 Trail Scout is best.

[H] Simple on-off (SPST) switch RadioShack part #275-701

[I] 2′ insulated wire, 22-gauge minimum Telephone cable wire works well.

[J] Twin D-cell battery holder RadioShack #270-386

[K] D-cell alkaline batteries (2)

[L] Two pieces of acrylic or other hard plastic, at least 3″ square each, one thick and the other ¼″ thick Cut from McMaster-Carr part #8589K41 and #8589K81

[M] brass brazing rod From a welding supply house

[N] Scrap plywood 8″×8″

[O] Matching 1″ long carriage bolt, washer, and knob, ¼″ threaded

[P] Matching long machine screws, washers, and nuts, 6-32 threaded (16)

[Q] Matching 3½″ long hex-head bolt and nut, ¼″ threaded

[R] Uninsulated wire, 24-gauge solid McMaster-Carr part #8870K16


Standard 16.4 oz disposable propane cylinder ¼″ long machine screws, 6-32 threaded (4)

Wood screws, ½″ long flathead #10 (2) and ½″ long #6 (8)

Scrap 1×8 lumber or plywood At least 18″ long

Scrap wood block About 6″ cube

8″ wood or plastic dowel, ¼″ diameter

Wood glue or 5-minute epoxy

Paper For templates and caution label

See a list of tools for this project at

Build Your Coffee Roaster

Make It

image with no caption


Time: A Weekend Complexity: Medium


This project has blueprints with complete measurements of all the parts at Start by downloading and printing them all. Then you can easily follow along and make the metal parts, the wood and plastic parts, and the bean basket.

1a. For the support plate, saw a piece off of the 3′ aluminum bar and drill and tap 12 holes as shown in the support plate blueprint. File the cut surface smooth after this and all other cuts.

1b. Clamp the plate in the vise between two 2×4s and use the C-clamp to bend it widthwise, from the bottom, to an angle of about 127°.

image with no caption


You could also start by making the basket (Step 3, page 117). That’s the hard part, and then you can go back and make the other parts to fit afterwards.

1c. To cut the height adjustment slot, drill four or five ¼″ or holes as close together as possible, then saw or file the slot until it’s even.

image with no caption

1d. Make the drive shaft bearing. Drill a ¼″ hole in one end of 1½″×¼″ aluminum bar, then saw or drill and file the slot in from the end. Saw the piece off the bar to measure 1¼″ — it′s easier to machine the slot before trimming the bearing down to final size. File the cut end smooth, and drill and tap two 6-32 holes.


Refer to bearing blueprint.

1e. The trickiest bit of metalwork is the triangle piece, which connects the basket to the driveshaft. To start, I drew a paper template with the dimensions shown on the blueprint, and taped it to the leftover ¼″ thick aluminum bar.


Refer to triangle blueprint.

1f. Drill 4 holes in the aluminum, tap the large one, and saw the 3 slots to the small holes before cutting the triangle to shape. This piece is small and fairly precise, so go slowly and be safe. Then saw the triangle shape, file smooth, and put it in a vise to drill and tap the 3 clamping-screw holes.

image with no caption
image with no caption

1g. Thread 3 screws into the part and check its clamping action on small pieces of the brazing rod. It should hold the rods parallel and tight.

image with no caption


Hold the triangle in a vise for drilling and tapping.

1h. For the reinforcing ring, draw a 5¼″ circle as a template. Cut a strip of the aluminum bar, about wide and 19″ long, and slowly hand-bend it into a circle, comparing against the template as you go.

image with no caption


Use a vise to get a good grip for bending the very ends.

1i. Saw or file an overlapping joint at the ends, then drill a hole and use a pop rivet tool and a short rivet to join the ends together.

1j. Using a compass, mark at least 6 evenly spaced hole locations in the reinforcing ring. Drill the holes to .

image with no caption
image with no caption

1k. For the appearance ring, use metal snips to cut a strip of the aluminum flashing about 20″ long and 1″ wide, or wider to make the basket hold more beans. Mark the strip to match the locations of the holes on the reinforcing ring, and snip pairs of ¼″ notches to flank each hole. Bend the metal back and forth in the notches until the tabs break out.

image with no caption


2a. For the base, cut a 13″ length of the 1×8 and drill and countersink two holes 2½″ apart and from one end, with one hole from one side.


Refer to base blueprint.

2b. For the height adjustment block, cut down another piece of the 1×8 to . Use a table saw or router to cut a 3″ channel ¼″ deep down the block, to just fit around the support plate.


Refer to height adj block blueprint

2c. Nest the support plate in the height adjustment block, stand them up together on their bottom ends, and mark the very top of the slot on the block by tracing through plate. Drill a ¼″ hole through the block at this mark, for the height adjustment bolt.

2d. On a piece of ¼″ thick plastic, trace the screwdriver hold-down shape from the blueprint online, and saw it down to shape. The interior dimensions are fairly critical, to securely hold the screwdriver. Clamp it in a vise, and drill and tap two 6-32 holes matching the pair of holes at the top of the support plate.


Refer to hold-down blueprint.

2e. For the switch bracket, cut a 3″×3″ square of thick plastic. Saw or file 2 edges round, and drill two holes matching the holes near the slot on the support plate, and a larger hole on the other side to fit your switch.


Refer to switch bracket blueprint.

2f. For the bracket, wrap foil around the plastic to shield all but a wide bend-line. Holding the plastic with a gloved hand, heat it gradually over a stove. Press on it periodically, and when it’s soft enough, remove it from the heat, bend and hold it at a right angle, then run cold water over the bend to harden the plastic again.

image with no caption
image with no caption

2g. Remove the battery chamber of the powered screwdriver and drill a clearance hole in the end, angled to miss all internal parts. Thread two 1′ lengths of insulated wire through the hole and solder one to each battery contact. Note the polarity of the wires and replace the battery chamber. Test the connections by touching the wires to one or two 1.5V batteries in series and switching the screwdriver on.

image with no caption

2h. For the drive shaft, carefully mark the edges of the bolt’s head with a marker, then use a grinding or cutting wheel to cut it down so that it fits the chuck of the screwdriver, about ¼″ across. The new hex-head must be concentric with the shank of the bolt.

image with no caption
image with no caption


3a. Make the pressing ring tool using the circular template from Step 1h. Cut a 5¼″ diameter circle out of plywood by drilling in the center and then sawing out. File the inside edge of the ring on one side to make it round and smooth.

image with no caption

Then make a round form out of a wood block, 5″ diameter and approximately spherical or hemispherical. You can turn the form on a lathe, but the shape doesn′t have to be perfect, so you could also just cut down and shape it with a saw and a coarse rasp.

image with no caption


The form also needs something in the bottom that you can clamp in a vise. I epoxied a ¼″ dowel into the hole in its flat face.

3b. Draw an X in the exact center of the 1′ square wire cloth. Mark the front tip of the form, then drill a hole and screw the center of the cloth to the tip of the form with a ½″ #6 wood screw.

image with no caption

3c. Center the pressing ring, rounded edge down, above the form and wire cloth square. Apply downward pressure until the cloth looks like a bean basket. This is easier said than done, Gradually push a little, guide a little, and compress the wire cloth a little below the ring to help it go down.

image with no caption


The square holes in the wire cloth will deform into diamonds of various size and shape; this is as it should be.

3d. Towards the end of pressing the wire cloth, it will help to have a friend drive more small #6 screws in along the way, to hold the screen against the form. It also helps to cut off some of the excess material at the bottom with metal snips, but leave about 1″ all around, past the flat end of the form. Now take a break!

image with no caption
image with no caption

3e. Remove all the shape-holding screws, leaving just the one at the tip. It′s OK if your basket is distorted at this point; the reinforcing ring will circularize it. Lay the pressing ring and reinforcing ring on top of wide-open vise jaws. Flip the form and wire cloth assembly upside down and re-press it through the rings. Attach the reinforcing ring to the bean basket with machine screws, washers, and nuts.

image with no caption
image with no caption

For each attachment point, wedge a piece of scrap wood between the form and the basket and drill a hole through both the reinforcing ring and the basket before installing the screws. The basket should be a mini-

image with no caption


With all screws tight, trim the excess wire cloth as close as possible to the ring.

3f. Cut and bend the brazing rod into 3 pairs of ribs that reinforce the basket, extending out from its center point inside and out. On the 3 outer pieces, leave an extra bend as shown, to fit into the aluminum triangle piece.

Attach the rod pairs to the basket and each other by twist-tying them together with short lengths of uninsulated wire. Use at least 3 wire loops per pair. The pairs should converge close to the center inside and out, forming three 120° angles.

image with no caption


Refer to the brazing rod piece blueprint.

3g. Push the 3 outside pieces into the triangle, and tighten the 3 clamping screws securely. Make sure the bean basket assembly cannot be pulled off! Cut and file the ends of the rods flush with the face of the triangle.

image with no caption
image with no caption

3h. Thread the ¼″ nut onto the drive-shaft bolt until at least ¼″ of thread protrudes. Using pliers to keep the nut from turning, thread the triangle onto the driveshaft until it jams tightly against the nut.

image with no caption

3i. Loosen (but do not remove) all the reinforcing ring screws, and insert the appearance ring between the reinforcing ring and the raw edge of the wire-cloth. You may need to shorten it first. Re-tighten the screws.

image with no caption
image with no caption


4a. Stain, paint, or varnish the base as you wish, then attach 4 small feet cut from adhesive foam weatherstripping under the corners.

4b. Make a caution label (or print out the one online), and glue it to the base.

4c. Screw the height adjustment block to the base with two #10 ½″ long flathead wood screws.

4d. Attach the D-cell battery holder, wires pointing upward, to the bottom end of the support plate with two ¼″ machine screws. You may have to enlarge the holder’s mounting screws.

4e. Mount the switch in the switch bracket, and mount the bracket to the support plate with two ¼″ machine screws.

4f. File off any screw threads that protrude from the back of the support plate.

4g. Mount the bearing to the support plate with two machine screws.

4h. Attach the support plate assembly to the height adjustment block with the carriage bolt, washer, and knob.

4i. Thread the 2 screwdriver wires through the hole in the support plate’s bend. Use the hold-down and two screws to mount the screwdriver to the plate, with its chuck pointing up. Make sure the sleeve adjacent to the screwdriver chuck is set to “Power” position.

4j. Thread a screw into the bottom of the support plate, under the screwdriver’s central switch button. Tighten it enough to fully depress the button. This screw keeps the screwdriver switched on internally, and helps hold the tool. Briefly touch the 2 screwdriver’s power wires to a battery to make sure that it runs.

4k. Slide the bean basket’s shaft through the slot in the bearing and into the screwdriver chuck until it stops. You may have to adjust the bearing’s position slightly so the shaft doesn’t bind.

4l. Thread a piece of uninsulated wire through the support plate and wrap it around the screwdriver near the chuck. There’s even a convenient groove for this. Finger-twist and trim the wire ends. Avoid over-tightening, which would put an extra load on the motor.

4m. Lean the assembly on its back and, noting the wires’ polarity, solder the switch in series with the battery holder and the screwdriver wires.

4n. Put 2 fresh D-cell alkaline batteries in the holder.

4o. Make sure the camp stove is off, then screw it onto a standard 16.4-oz. disposable propane cylinder and center it onto the base with one of the burner’s flat sides toward the support plate. Position the propane flow-control knob so you can reach it easily.

4p. Flip the switch on, and check that the bean basket rotates freely, doesn’t wobble, and seems sturdy and safe. Use the height adjustment knob to position the basket at 1″ above the burner. Your Nirvana Machine is ready to roast!

image with no caption

Illustrations by Larry Cotton



Roast Your Coffee Beans

Use It

image with no caption

Proper Nirvana Procedure

  1. Take the Nirvana Machine to a well-ventilated place, preferably outdoors.

  2. Make sure the batteries are fresh, and put a drop of oil on the shaft bearing.

  3. Load up to ½ cup of green coffee beans into the bean basket.

  4. With the burner off, switch the screwdriver on and observe the beans’ rotation pattern. The 3 ribs inside should cause the beans to tumble nicely. The bulk of the tumbling beans should be centered above the burner. Green beans expand as they roast, so they should stay well away from the opening, to leave room for expansion.

  5. If the beans tumble properly, light the propane burner and set the gas-flow knob on low. The beans should begin to yellow in a couple of minutes, and should roast in 10 to 15 minutes.


Never roast coffee unattended, keep kids at a safe distance, and use plain old common sense.

image with no caption

As the beans darken, they will make cracking sounds and shed thin, parchment-like chaff, which drifts out of the opening, making somewhat of a mess. To me, this just adds charm to the experience, but your significant other′s opinion may vary.

If you roast outdoors in cool or breezy weather, you may have to crank up the heat, reduce the clearance between the flame and the basket or shield the basket from the elements. I’ve used aluminum flashing, but any windbreak should do.

As the beans turn even darker, you’ll hear lighter crackling. This is about when I think the beans are perfectly roasted. If you keep going, the beans smoke more, caused by the oil which seeps from the beans (this oil also makes the beans shinier). The smoke may smell great to you, but the odor can linger, which is another good reason for ventilation. Be careful not to scorch the beans!

When the beans are done to your liking, turn the screwdriver off and remove the burner. Beans like to be cooled fairly rapidly, so let them continue to rotate for a few minutes in the cooler air.

Dump the beans into a container and seal it. Purists say to wait anywhere from 4 to 24 hours before grinding the coffee. You will be amazed at how good it is. Good luck!

Get DIY Coffee now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.