This tiny robot will help you reduce your caffeine intake.

Mornings are hard for a caffeine addict. The headaches and grumpiness are bad enough, but then you have to deal with the noise of the grinder before you get the anti-migraine juice you so desperately crave.

This silent coffee grinder uses a hand grinder and a strong motor to grind coffee slowly and quietly. It connects to the internet, so you can set it to run automatically or run it from your phone. You can even set it to grind less and less coffee over time, imperceptibly reducing your caffeine intake until you’re back to more tolerable levels of dependence, or breaking the coffee habit entirely.

The best part? You can build it yourself! Check out the instructions below. If you have questions about the build or are looking for more hacks, find me on Twitter at @christinesunu or check out hackpretty.com.

Materials

Motor Controller (like this one)

Motor (I used a 12V, 10RPM motor)

Motor Adapter with Set Screw

Hario Skerton Ceramic Coffee Mill

3D Printed Parts, available here

#6 ⅜ Inch Flat Head Screws (x4)

4-40 ½ Inch Flat Head Screws (x4)

Breadboard

MOSFET (I used a 30N06L)

Particle Electron

Jumper Wires

Alligator Clip Jumper Wire

Barrel Jack Cable Connector Plug

12V Power Supply

Electrical Tape

Side note: This is a no-solder project meant to work with a few 3D-printed parts. I’m currently working on something a bit more robust, for those of you who want more solder and metal. If you’re interested, get in touch!

Build It!

Get your prints started. (This may take a while.)

In the meantime, set up your Electron using the tutorials in the Particle Docs. Copy and flash this firmware to your Electron.

Cut an alligator clip wire in half and strip the ends. Screw one alligator clip into the + terminal and the other into the - terminal of the MOTOR terminals of the motor controller.

Screw a male-male jumper wire into the - terminal of the POWER IN terminal of the motor controller. Screw a different wire into the + terminal.

If you were to clip the alligator leads to the motor now and plug the jumper wires into power and ground, you could turn on the motor by clicking the button. When you click the button, it sends a signal to the motor controller to turn on. We’re going to “hack” into the button, cutting the signal to the motor controller and sending our own signal instead. To do that, we’ll need to make it possible for us to plug the red wire connecting to the button into the breadboard.

Find the red wire leading to the button. Cut it in half and strip the ends. Cut a jumper wire in half and strip those ends as well. Splice in a male header on the end of the wire leading back to the display. Splice the other male header onto the end of the wire leading back to the button. You can do this without solder by twisting the ends together and wrapping them with electrical tape.

Wire up your parts like this:

Now it is time to upgrade our hand grinder. Get your 3D printed parts and clean off any supports. Fully dismantle your grinder into these pieces:

Screw the motor into the lid using your four 4-40 machine screws.

Secure your motor adapter to your motor, sandwiching the lid between the motor and adapter. Make sure that the flat side of the adapter is exposed, and that the motor’s turbine is flush with the end of the adapter.

Secure the printed barrel to the motor adapter, using your four #6 screws.

Find the metal prongs from your grinder. Put them into the printed barrel, prongs facing out. Secure this part using the half-circle inserts for the barrel grinder.

Screw the burr grinder into the top of the funnel. Fill with coffee.

Carefully set and screw down the lid.

Screw the entire apparatus onto the jar.

Clip your alligator leads onto the motor and turn it on. You can set off the grinder by clicking the button manually, or by triggering the grinder using functions online. Adjust the potentiometer to the lowest percentage at which it will still grind.

Feel free to encase your electronics in interesting enclosures!

Now you’re ready to grind coffee silently!

Reducing your caffeine intake

You can change the amount of coffee your grinder makes each day by changing the `grindTimeList` variable. To schedule your coffee each week, change this list to reflect the number of minutes your bot should grind each day, starting with Monday. Then, re-flash the code to your Electron.

You can also change the time your coffee grinder goes off by changing the `coffeeHour` variable, which is a weekly schedule keeping track of when the grinder should go off. Don’t forget to set `timezone` to your time zone’s UTC offset.

If you prefer to use Google Calendar to set off your grinder, set up an account on IFTTT. Set up an applet like this one:

This will allow you to grind coffee up to 45 minutes before any “coffeebot” calendar appointment. The number of minutes it should grind ought to be placed in the event’s description:

Happy caffeining!