Introduction: Otto DIY Humanoid Robot

About: Product Design Engineer & maker, roboticist, 3D modeling professional and 3D printing enthusiast. Creator and Founder of Otto DIY, a project that follows my passion for robotics, toys, open source hardwar…

Otto bipedal robot now got arms to look similar to a "Human" and an LED matrix to express emotions. 3D print by yourself and then gather the parts to build by yourself.

Otto is truly Opensource; it means the hardware is easily discerned so that others can make it, Arduino compatible, 3D printable and customizable, the perfect opportunity to build and have your very first robot, learn robotics and have fun, you will learn the logical connection between code and action, and by assembling it, you will understand how its components and electronics work. Visit for more detailed info.

Otto DIY Humanoid walks, dances, makes sounds and avoids obstacles, like the basic but also has 2 arms, one LED matrix to express emotions and a gyroscope to measure orientation and movement for interactions.

Please note that Humanoid is an advanced robot compared to the simple biped Otto, it will require you to have EXPERIENCE BUILDING ROBOTS AND MORE TIME, WE RECOMMEND YOU TO FIRST BUILD THE BASIC Otto DIY AT LEAST, otherwise take it as a challenge :D


1 x Nano ATmega328

1 x Nano Shield I/O

1 x cable USB-A to Mini-USB

1 x ultrasound sensor HC-SR04

6 x Micro servo MG90s

1 x Buzzer 24 x Female/Female Jumper Wire

1 x LED Matrix 8x8

1 x sound sensor

1 x touch sensor

1 x BLE Bluetooth module

1 x charger + power booster

1 x Micro Switch Self lock On/Off

1 x Gyroscope sensor (optional)

1 x3D printed head

1 x 3D printed body

4 x 3D printed legs (2 are the arms)

2 x 3D printed grip

2 x 3D printed foot

1 x Small Phillipis screwdriver
8 x extra M2 screws

Scissors or pliers.

Computer for programming and smartphone for controlling.

Step 1: 3D Printing

Otto is very well designed for 3D printing, so wont give you trouble if you follow this common parameters:

Recommended to use a FDM 3D printer with PLA material. No need supports or rafts. Resolution: 0.30mm Fill density 20% it should take around 9 hours to 3D print a full set of parts for one Otto Humanoid.

I made it in TinkerCAD so that you can play around and customize your own robot!

Find STL files here

Step 2: Blockly

For beginners it is recommended to start coding by using our new Otto Blockly a simple visual programming software:

Otto Blockly is completely autonomous (no need for Arduino IDE, or libraries setup and no Internet access is required).

  1. Download from our website here
  2. Install.
  3. Open the example for Humanoid.
  4. Connect your Otto robot.
  5. Select Arduino nano,
  6. Select USB port where your robot is connected.*
  7. Check/Upload and yes is that easy!

*If your computer did not recognize the USB device you should install the driver CH340 for your Operative System find it here:

Learn more about Otto Blockly here

Step 3: Arduino

For more advanced programmers you can alternately use Arduino IDE.

Download Otto Libraries here

It will allow you to really exploit the potential of your robot, you will be able to try many example codes (sketch) that you can just simply upload and modify them for your own programs.

  1. Download Arduino IDE software for free
  2. Install Arduino IDE software in you computer.
  3. Download the Otto libraries that are here
  4. Open Arduino IDE, navigate to Sketch > Include Library > Add .ZIP Library. At the top of the drop down list, select the option to "Add .ZIP Library''.
  5. You will be prompted to select the library. Navigate to the .zip file's location, that you just downloaded and open as it is.
  6. Return to the Sketch > Include Library menu. menu. You should now see the library at the bottom of the drop-down menu. That means is ready to use Ottos codes!
  7. Connect your Otto through USB.
  8. Select in Arduino Tools/ Board: “Arduino Nano” Processor: “ATmega328 (Old bootloader)" Port COM# (where your Otto is connected)
  9. Open in File/Examples/OttoDIYLib/dance/Otto_allmoves_V9.ino
  10. Check/Upload the code.

Step 4: Electronics

Before using any batteries you should check your connections and test your robot with the USB cable connected to a computer.

As a good practice you should check your electronics and software in your computer, before assembling all robot to avoid having to disassemble the whole robot to fix something. You can do this by just connecting at least all the servos, in the place indicated in the wring below and upload any code that makes Otto move. If you are ready for Batteries you can also check if your power source works, depending of the type of batteries you have there are plenty options

There are actually plenty options to power your Otto robot in multiple ways, we explore in more detail in this blog post article:

This is a basic wiring using Tinkercad Circuits, with a basic program that you can code basic to make sure your servos are centered and everything is working (please note that the components in Tinkercad Circuits are not the same like the Arduino UNO instead of nano but the principle is the same.

Step 5: Assembly Instructions

Now after we check all the tech is working properly we can start to finally build! gather all parts that you'll need for this assembly.


Before starting the assembly, download and read carefully the instruction manual.

Or just follow along the video.

If you see some misalignment in the movements check that have aligned to the center your servos before assembly but if you want more precise walk and movements then you can do some electronic calibration as we explain in this blog post article:

Step 6: Bluetooth APP

Many people just want to do directly this but i recommend to doing some coding first ;)

We have a great App that controls and also programs basic sequences to Otto, for both iOS and Android, If you are ready for this

1.Make sure the Arduino Libraries of Otto were installed properly

2. Then connect your Bluetooth module like this:

RX pin to 12 on the board

TX pin to 11

Vcc to any 5V

Gnd to any G

Uploading the Bluetooth code with Arduino IDE is simple but you have to make sure libraries are correctly installed (you do not need to repeat this step, if you already did it before)

3. Navigate to File/Examples/OttoDIYLib/Bluetooth/Otto_APP.ino or Open the Arduino .ino sketch from the code folder.

4. Connect your Otto through USB. Select in Arduino Tools/ Board: “Arduino Nano” Processor: “ATmega328 (Old bootloader)" Port COM# (where your Otto is connected)

5. Check and then Upload code via USB.

6. Download and Install the APP in your smartphone

7. In your phone settings Enable Bluetooth, search and pair with the module 1234 as password. (this is to link to your phone and only needs to be done one time)

8.Then Open the actual APP and follow the connection process within the APP.

9. Done! your Otto is ready to control and program from your phone.

Step 7: ​Join the Otto Builder Community!

Congratulations you have made a Humanoid robot! basically.

Real humanoids have more articulations do you think you can create a more complex robot? Learn more about coding, electronics , design, 3Dprinting and robotics in general in our Open EDU (Open Education) program here.

Share your creativity. The idea of Otto is that once you learn the basics you hack and create your own!

Join our community here

Group in Facebook. to share and ask for help in the community and like our Facebook page

YouTube channel for more how to videos and tutorials.

Instagram follow us and share #ottodiy

Twitter follow us and share #ottodiy

Be a part of this friendly community of robot builders, teachers and makers! Welcome to our Otto Builder community!

see you there ;)

Arduino Contest 2020

Participated in the
Arduino Contest 2020