Biped Arduino Humanoid Robot

I wanted to make a Biped Robot ‘from basics’ instead of a kit, using some sheets of metal that I could saw and bend myself, standard strong servos and an Arduino based development environment.

This is the result so far. It’s a work-in-progress, so I’ll probably make changes to it. The software isn’t done yet, but it can at least crouch and stretch, lift a leg etc.

Here is a video of it’s first steps. It fell forwards after the video was over. Will improve the software and then post it here later.

First steps

The version 1 plans of the robot are as shown on the image.

I basically cut along the solid lines and bend along the stapled lines. In fact I didn’t quite do it as on the plan, but it’s pretty close. There’s a full size pdf available here. The drawing is drawn using CadStd Lite and if you ask you can probably have the original file.
The main components are A and B. The servos are attached in A.

Some comments:

  • Component A could be made a bit narrower (30mm/35mm/30mm instead of 35mm/35mm/35mm), which might help the servos a bit. The servo could be placed along the ‘wall’. Maybe other components could be optimized also.
  • It’s quite tall (about 35 cm or about a foot). That together with no torso, makes it hard to balance. (and no feedback from servos).
  • It requires 12 really strong servos. I’m using Power HD 1501MG, which is said to have torque. The one that struggles the most is the hip that lifts the leg outwards. It might be that the design could be changed to make it easier for that servo.
  • I used a 1mm thick aluminium sheet, but it can probably be done with other materials also, for example steel or plexi glass.
  • I put some bigger feet on it to make it a bit more stable and easy to program, using plexi glass (see the picture).
  • Cut it with a jig or contour saw, drill the holes and bend the pieces along the dotted lines (check YouTube on how to bend sheet metal without special tools). It doesn’t take long to make. Before you drill, use a nail and hammer to make a mark where you want the hole. This makes the placement more accurate and makes it easier to drill.
  • The controller board is a self made AtMega328 board using Arduino as the development environment. It’s using 12 digital outputs to drive the servos. I’m using the servo library that’s part of Arduino. I can share more on the software later, but if you have questions or suggestions, please comment below.
  • I’m using separate batteries for the servos and the electronics to prevent voltage drops caused by the servos to reset the controller. For the servos I’m using a 6V NiMH battery. These servos draw a lot of current, in total somewhere between 5 and 10 A. I wanted to use LiPo batteries, but they’re quite high voltage and will probably damage the servos unless I use a regulator. There are LiPo capable servos, but they’re quite expensive.

If you want to try also, please go ahead using the Attribution + Noncommercial + ShareAlike (by-nc-sa) Creative Common License. Let me know if you have improvements, questions or comments. If you want to make your own biped robot and you find the kits too expensive, this is the way to go. It works, it’s not toooo much work and you learn a lot.
If you’re wondering where the parts go, here’s a picture trying to explain it.

I’ve used a 1mm thick aluminium sheet. It’s probably possible to use both steel and plexiglass instead. Some of the joints would benefit from thicker aluminium or steel.

As the project progresses, I’ll put in some more info here and maybe post a video and some code. If you have comments or questions, please post. I’ve got an antispam on that may make your comment take some time to appear.

Here is a picture of one of the servo mounts in more detail.


62 thoughts on “Biped Arduino Humanoid Robot”

  1. good job guys .. like it …

    i am from india .. i did a similar one for hands.. but long hands.. some how managed to have some torque at 8 volts…

    it would be pleasure to contact you guys to discuss a few things…

    my id is [email protected]….com

  2. For 8 volts, don’t you need special servos? I thought 6 was max for standard cheap ones, though I haven’t tried 8 in fear of burning them.

  3. I don’t think you can do steppers instead of the servos. Stepper motors are typically heavier compared to the weight. The robot would be too heavy.

    About the price. This robot uses 12 metal gear servos, all relatively expensive, so the price is typically relatively high. I would think something like 150-200 USD in total. But you could probably use cheaper servos and also cut out some of the servos, and still be able to walk ok. Hobbyking is a good source for cheap servos.

    It may be that digital servos would be more accurate. My problem with this robot was that without feedback, the battery voltage/charge was not constant, leading to different torque and different behaviour. If I was to do this again, I would add a gyro or accelerometer to compensate, or use feedback on the servos. I’ve been thinking of repeating it with for example the cheap Gyro-board that can be picked out of a 10 USD Wii accessory from That may have prevented it from falling over.

  4. Hi Lars, very cool project using arduino for Humanoid robot, I try your code and compile it code, but coe is error, can you check out your code please?

    the code have comment error like this (stray in program)

    1. 铭盛卡行(QQ1228557129)所出售卡均为一级卡源,全新无任何交易记录,资料齐全,真实身份办理,亦可指定名字办理,诚信淘宝担保交易! 例如—可以给你淘宝店刷提高您的淘宝信用记录。 例如—你想接受汇款,但又不想让对方知道自己的真实姓名。 ä™Âº‹Ã¥Â¦Â‚—您想给领导送礼办点事情,但是又不想辮©è‡ªå·±çš„隐私暴露!这时您就需要到我们提供办理的卡,我们的卡可以让您随意的a转帐–送礼。ç»ÂÂ客户保密了隐私的同时也去除了客户的后顾之忧。本团队以真实代开卡【QQ:1228557129】办理、分别提供7大银行卡;中国银行—工商银行—建设银行—农业银行—交通银行—招商银行—邮政银行[网上银行(口令卡,电子证书,U盾)长期供应,保证全新开户,保证开户资料齐全,保证带真实有效开户原件,承接指定名字开户我们的宗旨是:质量+速å¦+信誉!我们希望与 有长期需要的客户建立长期合作关系,彼此信任,共同赢利。如有需要请联系!非诚勿扰! 客户的满意是我们的心愿欢迎光顾公司宗旨: 公司执行国家金融方针和政策,在法律、法规规定的范围内开展业务, 自主经营、自负盈亏、自我约束、自担风险、切实为小企业、农民、农业及农村经济的发展服务。公司文化: 诚信—用心做事,诚信为人 规范—规范管理,依法治企 高效—真诚服务,高效便捷 和谐—同舟共济,创建和谐公司口号: 以实力、效率立足于市场 用服务、便捷来赢得口碑 崇尚职业道德,遵守法律法规  急您所急、思您所思温馨提示:在本卡行购买的卡可用于收藏使用!

  5. good work but i think, at the robot need ad accellerometer or alse.. and robot need a new perfectioned script for walking .

    1. Yes… this was one of my first projects. There are so many things I would have done differently. Maybe use a gyro/accelerometer etc. Thanks for the feedback anyway.

      1. Sir this is really good project . I want to try like this one .please sir help me with the connection diagram and code please sir

  6. Hello Lars,

    First of all I would like to congratulate you for this amazing project.
    I’m from Brazil, student of Computer engineering, and I’m very interested in your project because I’m developing a conclusion work for my degree about a protesis to inferior members with some colleagues where we’re planning to use arduino as you did.
    I would like to ask you if are you open to discuss some points about your project helping us to solve some issues that we’re having while planning our prototype. We’re “fresh” in these subjects once we just studied the basics in the college.
    your help would be really appreciated, granting you the proper contribution you did in our work.

    Thanks in advance!

    (sorry for my broken English)

    1. Sure, send me questions here or on email (as you have already done). The email alert for my messaging functions aren’t working properly, so safer to reach me on email.

  7. Hey Lars,
    Im an electrical engineering student in my final year, planning to do a humanoid robot as my graduation project, i have looked at this project and it looks great..the design is quiet simple and works fine,it could use some more sensors as you have mentioned.. i was wondering if a torso and an upper body could be developed and attached to this one..what do you think?please let me know if you have any ideas, i would appreciate your help.
    Thanks and best wishes,

    1. I think it would work better with a torso, since this could help balance it. I would consider building some of the parts in plastic to lower the weight.

    1. Good blog! I really love how it is easy on my eyes and the data are well written. I am wondering how I might be notified whenever a new post has been made. I have sueicrsbbd to your RSS which must do the trick! Have a nice day!

  8. you dont happen to know of a similar design for torso,do you? or maybe a link that would help? im actually not familiar with all the mechanical work but trying to learn it… my main idea is the addition of a kinect sensor with an arduino to work as the vision system for the whole robot..but still stuck with the mechanical design!

  9. Hi Lars,

    First, a very nice designed robot. I intend to build a biped robot for my son as a gift. But, as newbie, I don’t have any experience. I would really appreciated if you can share me with your design, specifically, how you mount the servo motors?

    Thank you.

  10. Can I ask for some more detailed information about your bipedal robot? We need to make this for our class and we are hoping you could help us. Your reply is much appreciated. You could contact me through [email protected]. THANK YOU!

    1. Hi. Yes, it’s a bit difficult to see on the picture (you saw the picture with the characters on it, right?). F is on the bottom, glued onto E and D is also on the bottom. Sorry for the late reply. If you haven’t already figured it out or lost interest, I can try to take a better picture. Let me know.

      1. Jo this is so brilliant! I loved it! Although I didn’t know at times whether to laugh or cry as it is so true. I would love to see this published in print – must be somewhere or someone who wo#2&du8l30;.. it so good! Thank you!

    1. A good reason for using a separate controller could also be to have feedback of the servo position. That’d make the controls a lot more accurate (I think).

  11. hi guys
    can any one tell me how does the lower parts fit (D,E and F) a sketch or pictures would be very helpful

    1. The main problem with the servos I use is that there’s no feedback. That makes it very difficult to control, as the servo force reduces when the battery fades. So feedback would improve it tremendously.

    2. wait for it….. in the scene where McG finally removes his pants, Strip can be playing in the bao0Arcund&#823k;..MUSICgL DIRECTION FOR H50, CALL ME!!! (u can all thank me later- I like gift cards)

  12. Hello,
    I read is a AtMega328 board, I use Arduino Mega 2560 R3, their is not errors in code, but doesn’t work in Arduino Mega 2560 R3, somebody knows how to convert AtMega328 to ATmega2560 R3.
    Thanks a lot

    1. The servos are the expensive parts… the aluminium board itself is cheap. Servos would typically be 10-20 USD each for strong enough servos.

  13. do I need to connect the servos in a definite output pin or can we connect it to any output pin.
    And can we connect extra servos then the required number for more power.

    Thanks in advance.

  14. Can you make a humanoid robot with hand legs and height of a human and talking if you can than post it on Google I liked your idea very much its hard for me but I’ll make it its hard because I m of only 12 years where you live

    Purchasing a new or used automobile could be a hard approach should you not know what you are carrying out. By teaching yourself about auto shopping prior to go to the dealership, you can make things easier yourself. The following tips might help your next shopping getaway be pleasant.

    Always deliver a auto mechanic along when shopping for a whole new car. Auto sellers are notorious for marketing lemons and you do not desire to be their next patient. When you can not get yourself a auto technician to consider vehicles together with you, no less than ensure that you have him evaluate your last option before you purchase it.

    Know your limitations. Before starting buying for your forthcoming auto or pickup truck, determine what you can afford to shell out, and follow it. Don’t overlook to incorporate fascination with your calculations. You will probably shell out around 20 % as a down payment as well, so be ready.

    Just before seeing a dealership, know what type of automobile you desire. Study each one of you possibilities just before purchasing so you can decide what works for your budget and loved ones requires. Shop around to discover how much you ought to pay for a prospective car.

    Before you sign any contract spend some time to read every line, like the fine print. If you have nearly anything shown that you just do not recognize, will not indicator till you get an answer that you simply understand. Unsavory salesmen can use a binding agreement to insert numerous costs which were not reviewed.

    If you keep the previous guidance in your mind the next time that you go buying a vehicle, you may be more prone to get a good package. Buying a car lacks to become head ache. Simply use the ideas with this write-up and you will have the car you desire at a very good price.

Leave a Reply

Your email address will not be published. Required fields are marked *