Introduction: Automatic Tea Maker

About: I specialize in electronics, but I can operate a band saw, ride a skateboard, and brew a tasty cuppa. I blog incessantly.

I am scatterbrained. I like to drink hot tea. Oversteeped tea gets bitter. I am easily distracted.

The natural choice was to (over)engineer something with inexpensive hobby-grade electronics. Automatic tea timers are hardly new and people have made them from discarded toasters and K'Nex which I have a lot of respect for. People on this site have been making them with Arduinos and Servos for a long time so I'm hardly the first. This project has three major differences though.

  • Uses a text display
  • Clips on the cup rather than free standing
  • 3D printed for a finished look

Due to the printed parts the MATERIALS list is short. Most of the parts can be found on eBay very inexpensively.

  • 16x2 LCD character display
  • 5V Arduino Mini
  • 9g servo motor
  • Speaker
  • Potentiometer
  • Normally open (NO) switch
  • 3 position rectangular male header pins
  • 4-40 threaded rod or metric equivalent
  • 4 @ 4-40 3/8" bolts
  • 12 @ 4-40 nuts or metric equivalent
  • 2 @ 3mm bolts which are at least 6mm long
  • 2 @ 3mm nuts
  • 2 @ 5mm bolts which are lat least 12mm long
  • 2 @ 5mm nuts
  • 2 @ #4 wood screw
  • Male USB plug with cord
  • Small gauge wire
  • Solder

There are a minimal amount of TOOLS necessary for this build

  • Computer for printing and programming
  • 3D printer
  • Soldering iron
  • Small screwdriver for small bolts
  • Programming board for Arduino Mini

This project requires you to know how to solder and send a program to an Arduino Mini. The program has already been written so you don't need to write any code. There are plenty of instructions for doing both these things so I won't go into them here. This is a big change from my tCDS unit which had 72 steps and didn't rely on previous skills.

Step 1: Start Printing

There are two files to print. The first is the parts which do the tea dipping. The second file is for the enclosure. The enclosure isn't strictly necessary and if you chose to construct a wooden enclosure that would add a welcome touch of class to this project.

The source code for these files can also be found on my blog. Just check out the final posting of this project and look for the links at the bottom of the page. These links will open new windows or tabs.

Step 2: Soldering

Soldering comes next because it will be necessary to attach your communication pins to the Arduino before programming. Since we're already soldering we may as well attach the rest of the components.

The schematic above was generated with Fritzing and if you're curious the source file can be found on my blog by going to the final Tea Maker page.

Arduino Minis often come with the header pins unattached which is perfect because they would take up too much room in this project. The only exception is the data pins for programming. These are often right-angle pins and should be soldered to the board.

The speaker used in this project does not have to be anything special. I used a 16Ω headphone speaker and it's plenty loud. A piezo element would also work but NOT a piezo buzzer. A 5V piezo buzzer could be substituted with modification to the code.

The start switch and potentiometer are both expected to have roughly 6mm diameters for their mounting posts. This is pretty standard for inexpensive potentiometers. If you insist on using a different switch, and I encourage this kind of thing, go to the final Tea Maker page on my blog, download the OpenSCAD code and change the diameter as you see fit.

For the servo, be sure to solder the short ends of the rectangular male header pins so the servo can plug onto them. Alternatively, you could clip off the end of the servo wire and directly solder it to the Arduino.

Step 3: Program the Arduino Mini

The source code files have been zipped uploaded.

Tea Maker Arduino Files

Be sure keep your pins straight when attaching the programming board.

Step 4: Assemble

The two halves of the enclosure fit together by putting lengths of 4-40 threaded rod, or metric equivalent, through the holes in each corner and fastening nuts on each end. I tried to find bolts long enough to span this gap but my local hardware stores didn't stock anything appropriate. If you can find small bolts long enough to attach the two halves please say something in the comments, I'd love to hear more solutions.

The four short bolts and nuts hold the display in place.

The two 3mm bolts and their nuts hold the coffee mug clip (3 oval posts) to the platform (t-shaped). Glue could be used in place of these bolts.

The tiny wood screws hold the key shaped dipper to the servo horn. Use the servo horn which is two arms around the hub. The circular horn which also comes with the servo motor would probably work too. Glue could hold the dipper to a servo horn.

The 5mm bolts and their nuts hold the servo to the t-shaped platform. Glue could be used between the servo and the platform.

The potentiometer and switch should fit into the holes on the front of the enclosure and fastened with the included nuts and washers.


There you have it. Power up the tea maker by plugging in the USB cable. When the dial is turned the timer on the lower right of the screen will change to show the total steeping time. Add your hot water and position the base on the side of your cup. The text at the top of the screen will inform you of what kind of tea is steeped at that time. These times are not universally agreed upon so I used the resource from Art of Tea. If you wish to alter these times the Arduino code is freely available. Once the desired time is selected put a tea bag over the end of the key and wrap up the string. Press the start button and when the timer expires you'll have hot tea precisely brewed.

The two videos posted in this step show the tea maker in operation. These videos should provide answers to any assembly or operation questions. If not, please say something and I'll make corrections for everyone.

Step 5: About Me

As mentioned I run a blog where I talk incessantly about the things I build, including an unabridged version of this project that contains the source code which I am happy to give away. There are also other neat projects like a switchable voltage USB to serial adapter for programming Arduino minis and an inexpensive shock microphone mount you could use for podcasting or video blogging.

The purpose of this project was to inspire people to over-engineer solutions to their problems. I could have bought a digital timer from the dollar store and just lifted my tea bag out when it beeped but that wouldn't have been fun or saved my tea when I forget about it and walk away. If you look at a problem of your own and this project inspires you to over-engineer a solution then I wish you the best in going forth with your ideas.

Automation Contest

Participated in the
Automation Contest

Coded Creations

Participated in the
Coded Creations