Introduction: Raspberr Pi Robot- a Hybrid Robot With Advance Features

About: I am software programmer(c/c++/python/java), web & graphic designer(Ps,Ae,Pr) with over 2 years of personal and professional experience.
A robot may not injure a human being or, through inaction, allow a human being to come to harm. A robot must obey orders given it by human beings except where such orders would conflict with the First Law. A robot must protect its own existence as long as such protection does not conflict with the First or Second Law.

“ADDY:RaspberryPi Robot” Ver.1, its raspberrypi based robot with lot of wide features and modules associated with it few of them are: Wifi, Arm & Gripper, Speakers, 5mp PiCamera 1080p, USB microphone, L293D motor driver, Lights. Integrating all these modules I am trying to develop autonomous robot with features like track faces, objects, voice control, lift light weight things. Also, I have developed software to manually control the robot using pyqt4 package in Python. Last, semester I went to Techfest 2015 at IIT-Mumbai for BLOCK WARRIOR competition and here’s a demo video link:


  1. Control ADDY using any language: C/C++, JAVA, Python.
  2. Track and locate places using its camera which can be rotated 180 degrees.
  3. Connect to any device with internet connectivity for remote control.
  4. Webserver & Website on localhost/live to control ADDY(
  5. GUI & key controls for GPIO and its parts.

In, this tutorial I have written short steps to build a robot with all references and tutorial links because of time shortage. Also, I have excluded steps for setting up servo control of camera rotation. You can comment for any queries would love to answer you.









Step 1: Hardware Parts Required

1. RaspberryPi B+ : To control ADDY and provide signals to GPIO for its I/P & O/P.

Processor-Broadcom BCM2835 ARMv6, Chipset-HD multimedia app processor, 512MB SDRAM @400MHz, Storage-MicroSD, 4xUSB Ports, 1.8A@5V, 40GPIO Pins.

2. Gripper Module: For lifting blocks.

3. Power Bank: Intex PB-4K 4000mAH to power RaspberryPi 5V supply.

4. L293D IC: To control 2 single shaft motors @ 300rpm.

5. Speakers: To make ADDY interactive.

6. USB Wifi Adapter: For wireless control & internet connectivity.

7. Breadboard, Jumper Wires, LAN Cable, 16-Gb Micro SD Card, 8V DC Rechargeable Battery: Buy two 4V DC rechargeable batteries from any electrical shop.

8. 2 x 4 Base Wheel Drive(included 2 Single Centered Shaft Motors).

9. Pi Camera.

10. Pi Case.

Step 2: Assembling ADDY Robot

1.You can assemble in any way but make sure that it holds all parts tight use tapes or glue-gun.

2. Make sure Pi camera get 180 degree flexibility to capture.

3. You must be able to attach/de-attach LAN and USB devices.

4. No part should touch wheels.

5. you can attach both batteries below the base plate using threads/wires to hold it tight.

Step 3: Wiring ADDY Robot

GPIO wiring on breadboard.

Please check the GPIO-PIN numbers to connect.

PIN Numbers of GPIO to connect motors of wheel, gripper module and LED.

Motor1A = 15 Motor1B = 13 Motor1E = 11

Motor2A = 36 Motor2B = 38 Motor2E = 40


ARM1A = 19 ARM1B = 21 ARM1E = 23

ARM2A = 16 ARM2B = 18 ARM2E = 22


LED = 37

Please Check this tutorial to make connections on breadboard using L293D IC: TutsPlus

Step 4: Configuring and Starting ADDY Robot RPI

To boot/set-up rpi for first time for ADDY Robot check all:-

1. Install Rasbian/Noobs: Tutorial

2. Install XRDP to connect rpi with your laptop: Tutorial

install: sudo adpt-get install xrdp
status: /etc/init.d/xrdp status

3. Install wpagui to connect to your wifi: Tutorial

Double click desktop icon to start wpagui

4. Update and Upgrade your RPI.

5. Enable Camera & SSH Module of your RPI. Tutorial

capture image raspistill -o cam.jpg

capture video: raspivid -o video.h264 raspivid -o video.h264 -t 30000

Step 5: ADDY Camera Setup

I am controlling camera using rpi web interface which has features:-

1. Capture images/videos.

2. Download images/videos.

3. Change preview, image, video size and quality.

Check this tutorial to configure rpi camera: Elinux

After setting-up visit your PC/laptop browser which is connected to ADDY(rpi) using LAN.
http://RPI IP ADDRESS/rpiwebinterface

Step 6: Wifi Control

To control using internet/wifi:-

Check this tutorial: Instructable

1. Open your developer weaved dashboard:

2. Click on SSH option.

3. Open "putty" fill ip and port number. PuttyDownload

4. Login to your rpi.

5. Now, you can give commands from anywhere in the world to your robot.

*Weaved is limited for 30 mins. only you can use "port forwarding" method to create your own rpi server.

Step 7: Coding and Testing ADDY Robot

I have some demo codes and keyboard control using Pygame in python

1. Install pygame for python in rpi: Tutorial

2. Download ADDY Controller Software:-

Pygame for keyboard control:

Tkinter for touch interfaces:

*Make sure you download all files and install required packages.

I am working on ADDY Controller ver.2 which will be cross-platform and more advance event-handling methods using pyqt4 with .exe files also. You can check regular updates here:

Robotics Contest 2016

Participated in the
Robotics Contest 2016