Desktop companion robotMicrosoft Applied Robotics Research
Open Build CaseMIT licensed

gestureBot Design Kit

An open design kit for building a virtual or physical semi-humanoid desktop robot that renders human gestures from Labanotation data.

3D printedHuman–robot interactionOpen sourceGesture control
Official gestureBot browser model raising one armOfficial project media
Browser model previewVerified against Microsoft documentation
Content modeOpen build case
Reuse licenseMIT
Evidence coverage100%
Case completeness82%
01 / What it does

A robot for making human gestures legible in motion.

gestureBot is a semi-humanoid research and education platform. It turns gestures stored as Labanotation keyframes into coordinated movement on either a browser model or a physical desktop robot.1

01

Gesture performance

Renders recorded human gestures as coordinated upper-body movements.

1
02

Text-to-gesture matching

A sample Gesture Engine maps text phrases to gesture concepts with word2vec.

1
03

Physical and virtual simulation

The same controller can animate a physical robot and browser-hosted virtual models.

1
02 / How it works

From notation to coordinated servo movement.

12× XL-320
Dynamixel 2.0
3D printed shell
X
Y
SauceSnap system view

A simplified engineering map of the documented control chain. It is a reading aid, not an official mechanical drawing.

01

Gesture source

Loads Labanotation JSON files and sequences gesture keyframes.

LabanotationJSONBrowser UI
1
02

Gesture engine

Matches input phrases to concepts in the gesture library.

Pythonword2vecGesture Library
1
03

Robot controller

Converts keyframe goals into timed servo commands.

Dynamixel Protocol 2.0Browser UI
1
04

Motion output

Twelve smart servos articulate the head, torso and arms.

Robotis XL-320OpenCM9.04c
2
03 / Hardware

The core physical stack.

Official parts list
ComponentQtyRoleEvidence
ActuatorXL-320 servo motorRobotis
12

Articulates the robot's upper-body joints.

reported2
ControllerOpenCM9.04cRobotis
1

Controls the Dynamixel servo network.

reported2
ConnectivityPowered USB 3 hub
1

Provides powered USB connectivity between the host PC and robot electronics.

reported2
Mechanical23 listed 3D-printable part models

Forms the base, torso, head, arms and covers.

reported2
04 / Open build guide

Build a physical gestureBot in 10 guided sessions

SauceSnap has reorganized the official construction sequence into a scan-friendly build path. The source material remains credited to Microsoft and covered by the project's MIT License.24

Open Build CaseMITAttribution required
Requirements
  • x64 Windows PC
  • USB 3 port
  • Desktop FDM 3D printer
  • PLA filament
  • The purchased and printed parts listed in the official guide
Tools
  • Wire stripper / cutter
  • Small Phillips screwdriver (PH0)
  • Small flat-blade screwdriver (2 mm)
  • Pen and light-colored tape for servo labels
  • Needle-nose pliers and a rivet tool (optional)
Safety note

Use light hand pressure when driving screws or handling printed plastic parts. The official guide warns that tool leverage can crack parts or strip plastic threads.

Official project photo of the powered servo controller electronics after Session 1Official project image · MIT
Session 01

Set up the servo controller electronics

Begin printing the base frame while connecting the controller, powered USB hub and a single servo.

  • Start printing the base frame
  • Prepare the servo connection cable
  • Connect the controller and powered USB hub
Verify in official guide ↗
Official project photo of the labeled gestureBot servos after Session 2Official project image · MIT
Session 02

Configure the servos

Print torso components and assign a unique ID to each servo with Dynamixel Wizard 2.0.

  • Print the torso components
  • Connect servos one at a time
  • Program and label each servo ID
Verify in official guide ↗
Official project photo of the completed gestureBot torso after Session 3Official project image · MIT
Session 03

Assemble the torso

Print the head components while assembling the articulated torso structure.

  • Print the head components
  • Join the torso servos and brackets
  • Route cables before closing the structure
Verify in official guide ↗
Official project photo of the head structure and torso after Session 4Official project image · MIT
Session 04

Assemble the head structure

Print components for both arms while attaching the head structure to the torso.

  • Print the arm components
  • Assemble the head frame
  • Attach the head structure to the torso
Verify in official guide ↗
05Source image remains in the official guide
Link-only media
Session 05

Assemble the right arm

Print the base component while assembling the right arm from its servos and printed structure.

  • Start printing the base
  • Assemble the right arm joints
  • Check servo labels and cable orientation
Verify in official guide ↗
Official project photo of the completed left arm after Session 6Official project image · MIT
Session 06

Assemble the left arm

Print the eye and ear components while building the matching left arm assembly.

  • Print the eyes and ears
  • Assemble the left arm joints
  • Confirm the arm mirrors the right-side assembly
Verify in official guide ↗
Official project photo of the torso, arms and head structure after Session 7Official project image · MIT
Session 07

Attach the arms and test the servos

Print the hood, attach both arms and verify motion with Dynamixel Wizard 2.0.

  • Print the hood
  • Attach both arms to the torso
  • Test servo IDs and movement limits
Verify in official guide ↗
Official project photo of the completed gestureBot head after Session 8Official project image · MIT
Session 08

Complete the head

Print the hands and arm covers while installing the eyes, ears and remaining head components.

  • Print the hands and servo covers
  • Install the eyes and ears
  • Complete and test the head assembly
Verify in official guide ↗
Official project photo of the gestureBot with hands and covers after Session 9Official project image · MIT
Session 09

Install the body covers

Print the torso covers while installing the arm covers and hands.

  • Print the front and rear torso covers
  • Install the arm servo covers
  • Attach both hands
Verify in official guide ↗
Official project screenshot of the gestureBot controller application used in Session 10Official project image · MIT
Session 10

Run the gesture applications

Finish the body and prepare the completed robot to run the Labanotation applications.

  • Finish attaching the body covers
  • Set safe servo rotation limits
  • Launch and verify the gesture applications
Verify in official guide ↗
Reuse & attribution

Adapted from the gestureBot Design Kit.

Copyright © Microsoft Corporation. Licensed under the MIT License. Construction content has been summarized and restructured by SauceSnap; Microsoft and Robotis trademarks belong to their owners.

Review license evidence ↓
05 / AI & software

A 2020-era Python stack with a semantic gesture layer.

Python

3.7.8

Runs the sample Gesture Service and control modules.

3

Google word2vec

Version not specified

Maps text phrases to gesture concepts in the sample engine.

1

Dynamixel SDK

3.7.31

Communicates with the Robotis servo network.

3
06 / Sources & evidence

Read the evidence without leaving SauceSnap.

Open each source preview to inspect the captured facts and their original locations. The external page is available only as a deliberate final step.

SAUCESNAP / SOURCE READER4 official documents
1gestureBot Design KitMicrosoft Applied Robotics Research · 7 captured factsPreview
On-site preview

SauceSnap keeps the useful evidence here so you can continue reading the case without leaving the page.

  • What is the gestureBotMimics human gesturesreported
  • System Modules > Gesture EngineGoogle word2vecreported
  • System Modules > Real and Simulated gestureBotsPhysical and browser-hosted virtual robot controlreported
  • System Modules > Labanotation ControllerLabanotation Controllerreported
  • System Modules > gestureBot ControllergestureBot Controllerreported
  • Introduction350reported
  • Introductionfalsereported
Retrieved 2026-07-18Open original source ↗
2gestureBot Construction GuideMicrosoft Applied Robotics Research · 4 captured factsPreview
On-site preview

SauceSnap keeps the useful evidence here so you can continue reading the case without leaving the page.

  • Parts List > Purchased Parts > P112 Robotis XL-320 servo motorsreported
  • Parts List > Purchased Parts > P3Robotis OpenCM9.04creported
  • Parts List > Purchased Parts > P2Powered USB3 hubreported
  • Parts List > 3D Printed Parts3D-printable body-part models and assembly instructionsreported
Retrieved 2026-07-18Open original source ↗
3Gesture Service System SampleMicrosoft Applied Robotics Research · 2 captured factsPreview
On-site preview

SauceSnap keeps the useful evidence here so you can continue reading the case without leaving the page.

  • Software Installation > Tested System SoftwarePython 3.7.8reported
  • Software Installation > Python Modulesdynamixel_sdk 3.7.31reported
Retrieved 2026-07-18Open original source ↗
4gestureBot Design Kit MIT LicenseMicrosoft Corporation · 1 captured factsPreview
On-site preview

SauceSnap keeps the useful evidence here so you can continue reading the case without leaving the page.

  • Repository LICENSEMIT Licenseverified
Retrieved 2026-07-18Open original source ↗