WiFi Turtlebot


This open source project is driven from a thingiverse project - turtlebot to build an inexpensive WiFi quadruped robot . The quadruped robot it is controlled via WiFi by any devices (iphone,android phones,tablet,iPads and computers) with web browser. So it is much more fun to make and play.  WiFi Turtlebot uses cheap commodity components which people can easily find and buy them in the market.

WiFi Turtlebot in Actions  - Video Demo

What you need to build it?

3D Prints the Body. Get the models and print them.

1G SD Card, download SD image for model b and model b+
The program controls the robot auto run while RPi booting the SD.

8 x 9g Servos

12 of M3 bolts and nuts
Power source - power bank


WIFI Connection - USB WiFi Dongle
e.g Ralink RT5370 USB Wireless Adapter

Servo Wiring

The RPi P1 header GPIO pins are used to connect 8 servos. The pin assignment is as following. There are 2 servos for each leg. The one is close to the body is named thigh and the one is far end named leg for describing in connection to the GPIO pins.

Servo number   Pin in P1 header
     s1           P1-7
     s2           P1-11
     s3           P1-12
     s4           P1-13
     s5           P1-15
     s6           P1-16
     s7           P1-18
     s8           P1-22

Facing to the turtlebot, 

left /      \ right

s1 - right_front_thigh
s2 - right_front_leg
s3 - right_back_thigh
s4 - right_back_leg
s5 - left_back_thigh
s6 - left_back_leg
s7 - left_front_thigh
s8 - left_front_leg

PWM expansion board is for the connection of servos and RPi GPIO pins. It also take input power from power bank and giving to RPi. That's a pair of -,+(5v) is the power source of RPi. It can be made using general-purpose board.

 The servos should be calibrated to following degrees as the initial positions (stand).
s1_right_front_thigh_center 117°
s2_right_front_leg_center  36°
s3_right_back_thigh_center 54°
s4_right_back_leg_center  117°
s5_left_back_thigh_center 117°
s6_left_back_leg_center  36°
s7_left_front_thigh_center 54°
s8_left_front_leg_center  117°
Stand Position

How to play?

Turn on RPi, when WIFI is ready, it will boardcast SSID - turtlebot-color, join the WiFi with password 12345 then open a web browser, access, you should see a control page as below.

The control page can also be access by via LAN port.
Press the buttons to trigger the actions


This project is open source.  Source code is hosting https://bitbucket.org/vmmgrs/wifi-turtlebot/. People are welcome to improve the program. Currently the implementation of kinematics is not good enough, see if someone can solve the inverse kinematics. It is good exercise of kinematics, anyway.

One More Thing...

The internal OS of WiFi turtlebot is OpenWrt. OpenWrt user friendly web admin page (see below figure) can be access by the URL on LAN port or on WiFi. You can change WiFi authentication or system setting by it. OpenWrt Wiki provides documentations. A beginner should read them.


  1. what to do to wifi worked?
    loaded system.
    RT5370 purchased

  2. connect to LAN port of RPi, access to have web admin,
    then click network tab, wifi tab, lastly the enable button
    this is an example http://postimg.org/image/gsind786h/

  3. I have a problem:
    will you help me?

    1. From the video, it is part to tell what's wrong

    2. the control page via LAN port

    3. you are able to access it?

  4. Turtlebot body plates for Raspberry Pi

  5. This comment has been removed by the author.

  6. I have access!!!
    but the system restarts

    1. you might have wiring problem, try to disconnect everything, just with rpi to see if you can get access to control page normally.

    2. Can u pls share you code to the IMU3000 sensor? :)

  7. The code to this video: https://www.youtube.com/watch?v=oUSlduL0UCc
    It would be so nice of you!