When things break around the house it
usually means a trip to the hardware store for
replacement parts, but when my doorbell chime
stopped working, I saw it as an opportunity to use
some animatronics skills and make something
more fun and aesthetically pleasing than a
standard “ding-dong” type doorbell. This is how
ZenBot was born.
ZenBot is an Arduino device that, by means
of seven mallet-wielding 2-axis mini robots, can
play soothing percussive tones on a meditation
drum, aka tongue drum.
While ZenBot was meant to be a basic
doorbell, it has potential to be expanded into a
MIDI instrument by using available open-source
libraries, or even downsized to work with a
smaller drum in order to significantly reduce
material costs.
In this article I’ll cover my design process while
also providing enough explanation and online
resources for you to build one of your own. Along
the way you’ll learn about design organization,
setup and use of Dynamixel robotic servos, and
beginner-level Arduino programming. Before we
jump in, check out the video of ZenBot playing
Tears for Fears’ “Mad World” at makezine.com/
go/zenbot. You’re going to want to build this.
DESIGN GUIDELINES
As a starting point, I set a few guidelines and
limitations for myself in order to narrow down
the options:
• Utilize Robotis XL330-M288-T servos for their
low cost and programmability — and because
I already owned a box of 25 of them that were
longing to be used.
• Utilize a specific 14" tongue drum which I had
also recently purchased.
• All parts must be printable on my Ultimaker
2 Extended 3D printer. (All but one ended up
being done this way.)
• Design must be modern looking yet work
well with the more traditional feel of the
drum itself.
• Design must be axially symmetrical in nature.
• Design must mimic human hand motion using
rubber mallets. For a while I considered using
solenoids, but swinging mallets just felt like a
more fun and organic approach.
Matt Alavi
TIME REQUIRED:
1–2 Weeks
DIFFICULTY:
Intermediate
COST:
$350+
MATERIALS
» Tongue drum, 14" aka hand pan drum or
meditation drum. I used eBay #233595745739.
» Drum mallets, 1" ball end (7) Get two 4-packs
of wooden mallets, eBay #184510420465, or 4
pair of rubber mallets, Timber Drum Co. #TMD2.
FROM ROBOTIS (robotis.us):
» Servomotors, Dynamixel XL330-M288-T (14)
» Robot cables, X3P type: 240mm (10),
100mm (20), and 180mm convertible (10)
» U2D2 servo programmer
» Power Hub Board adapter for U2D2
» Microcontroller, OpenCM9.04-C
» Expansion board, OpenCM 485
FROM AMAZON:
» Power adapter, AC to DC AC input 100V–240V
50/60Hz 1.0A, DC output 6V 3A, #B07N18XN84
» Male headers, 0.1", 40-pin breakaway (1pk)
#B015KA0RRU
» Potentiometers, 10k
Ω
, linear taper (5)
#B09MS1T32Z
FROM MCMASTER-CARR:
» O-ring cord, Buna-N rubber, 0.07" wide, white
(10') #3286T11
» Machine screws, button head 6-32, ½" long
(28) #97763A143
» Machine screws, flat head 6-32, ⁄" long (21)
#93791A453
» Machine screws, button head 10-32, ½" long
(28) #97763A232
» Machine screws, socket head 4-40, ¼" long
(14) #92610A108
» Cast acrylic sheet, 24"×24"×¼", white
#8505K757
TOOLS
» Computer with USB-micro cable, Arduino
IDE, and Dynamixel Wizard software free
online from arduino.cc/en/software and
emanual.robotis.com/docs/en/software
» 3D printer with Tough PLA or similar filament
» Hot glue gun
» Drills, taps, reamers, and countersink for
finishing holes
» Basic electronic tools: soldering iron,
multimeter, wire, heat-shrink tubing, etc.
» Sandpaper, files, hobby knives, etc. for
cleaning 3D-printed parts
» Laser cutter (optional) or laser cutting service,
to cut the base out of acrylic. Base can also
be made from wood, or 3D printed in smaller
sections.
65
make.co
NOTES ON IMAGES: David provided PSD files for
use in relabeling his images if needed
PHOTOGRAPH CREDITS: David Covarrubias except
new hero shots by Matt Alavi
OTHER NOTES:
BODY <INTRODUCTION>:
[OPENER IMAGE: FPO Screen Shot 2.jpg, new
heroes coming from author’s friend]
When things break around the house it usually
means a trip to the hardware store for replacement
parts, but when my doorbell chime stopped working,
I saw it as an opportunity to use some animatronics
skills and make something more fun and
aesthetically pleasing than a standard “ding-dong”
type doorbell. This is how ZenBot was born.
ZenBot is an Arduino device that, by means of
seven mallet-wielding 2-axis mini robots, can play
soothing percussive tones on a meditation drum,
aka tongue drum.
While ZenBot was meant to be a basic doorbell, it
has potential to be expanded into a MIDI instrument
by using available open-source libraries, or even
downsized to work with a smaller drum in order to
significantly reduce material costs.
In this article I’ll cover my design process while
also providing enough explanation and online
resources for you to build one of your own. Along
the way you’ll learn about design organization,
setup and use of Dynamixel robotic servos, and
beginner-level Arduino programming. Before we
jump in, check out the video of ZenBot playing Tears
for Fears’ “Mad World” at makezine.com/go/zenbot.
You’re going to want to build this.
[OPTIONAL IMAGE: Screen Shot.png]
DESIGN GUIDELINES
As a starting point, I set a few guidelines and
limitations for myself in order to narrow down the
options:
• Utilize Robotis XL330-M288-T servos for their
low cost and programmability —and because
I already owned a box of 25 of them that were
longing to be used.
• Utilize a specific 14" tongue drum which I had
also recently purchased.
• All parts must be printable on my Ultimaker 2
Extended 3D printer. (All but one part ended up
being done this way.)
• Design must be modern looking yet work well
with the more traditional feel of the drum itself.
• Design must be axially symmetrical in nature.
• Design must mimic human hand motion using
rubber mallets. For a while I considered using
solenoids, but swinging mallets just felt like a
more fun and organic approach.
BUILDING THE ZENBOT
After coming up with a plan, I broke the project
down into several parts. All seemingly complicated
projects are just a combination of many much
simpler components. In the case of the ZenBot, this
M81_064-69_DoorbellBot_F1.indd 65M81_064-69_DoorbellBot_F1.indd 65 4/12/22 11:36 AM4/12/22 11:36 AM