A DIY quadruped that waves and walks


Maker builds a 3D-printed, Arduino-based social quadruped that can wander freely or be controlled via Bluetooth.


The Makecourse at the University of South Florida teaches the basic skills for engineering design projects, and, unlike most classes of this type, is open to all USF students with no prerequisites. For his part in it, Chomba Waihenya decided to build a quadruped robot. The bot can be controlled via a Bluetooth connection (including a phone app that he wrote), or it can be set free to wander about, avoiding obstacles using an ultrasonic range finder.

build-own-walking-waving-3d-printed-social-quadruped-robot-1

The first design for the quadruped involved three servos, or three degrees of freedom (DOF), per leg, but after initial testing he decided to go with a simpler two servo/DOF design. The robot takes advantage of a sliding gait to move, as shown in the videos below. The outer servo makes the leg either stretch out or contract, affecting the amount that it grips the smooth floor. Depending on how these two servos are positioned and moved, this allows the ‘bot to move forward, backward, left, or right. Additionally, it can lie down on command, as well as do a friendly wave with either of its front appendages, making it a “social” quadruped.

build-own-walking-waving-3d-printed-social-quadruped-robot-4

Control is accomplished via an Arduino Uno (ATmega328) with a Bluetooth module, with an Arduino V5 sensor shield for simplified wiring. As eight servos plug into the shield in this application, the term “sensor shield” probably doesn’t give its abilities enough credit!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s