Some of the projects (research/academic/fun) I am/was involved in:


Community Model of Cloud Computing

My 2nd Year Summer Project guided by Sorav Bansal.

The project aims at using the idle lab resources for cloud computing purpose.

As an observation that merely 5% of the Lab resources particularly lab machines are used and rest of the time they are sitting idle. So we are trying to make use of the idle lab resources by using their idle time for running virtual machines and migrating them from one physical machine to other as and when required so that it doesn't effect the normal lab user.

We are developing a web interface to manage the same with its backend based on KVM and a command line interface for the same.

The project is being awarded SURA-2011 (Summer Undergraduate Research Award) and is being funded by IITD and IRD.


Replacing VMWare by KVM in CSC

Currently Computer Services Center (CSC) at IIT Delhi is using VMWare's virtual machine manager software which is costing 10s of Lakhs of Rupees and is not according to our requirements. We are aiming to replace it by a software developed using KVM which is open source software and will be highly customizable.


Indoor Navigation System

I worked on this project in Summer of my First year i.e. 2010 under Vinay Ribhero. The project aims at calibrating three navigation devices that are Accelerometer, Gyroscope and Compass, so that once given the initial position to the device one can find his/her current position without using any internet or settilite connection.

Main problem that we were/are facing was/is to remove the error from the readings of the devices. By default if we keep the accelerometer at rest and double integrate its readings, it should give a net zero output as the device is at rest but due to noise in the readings the result is not zero but the error increases with time. For removing error we used Kalman filter, took the FFT(Fast Fourier Transform) of the readings, removed high frequency readings and then took its IFFT (Inverse FFT).

In other part of the project we observed the behavior of the devices with temperature, time and orientation. The findings include that the devices are not much sensitive to temperature and orienatition where as the major contribution comes from time as what i have already explained above.


Multiplayer Ping Pong game on FGPA

We implemented the logic of Multiplayer Ping Pong game on Vertex2-Pro Xilinx FPGA Board. Initially we used 8x8 LED matrix boards but due to a huge mess up of wires we shifted from LED matrix to VGA display.

The game could be played in 2 modes that are

  • Human Player vs Human Player
  • Human Player vs Computer Player(100% accuracy)
  • The best thing of the project was that we were able to move the ball and the two paddles very smoothly. Main problem in the initial stage was to put the display on VGA but thanks to bitvga-v2p.zip and car_race.zip which are basic vga codes for vertex2 pro and are available for free on net. They are quite helpful for beginners for VGA Display.


    Map Based Social Traffic Application

    This was a course project in CSP301 i.e. Design Practices in Computer Science taken by Sorav Bansal.

    The project aimed at implementing a web-server integrated with MYSQL. We developed a mobile/web based application to calculate shortest distance between any two points on IIT Delhi Map considering real time traffic. We maintained user profiles in the database and the user could add/remove/find friends on the map. We used ajax, javascript and css for the web development.


    Ping Ping: A multiplayer Network Game

    This was a course project in CSP01 i.e. Design Practices in Computer Science taken by Sorav Bansal.

    We made Multiplayer Network game based on server-client model and upto 4 players could play simultaneously with the rest among the four as computer players whose accuracy could be set. Main features of the game were

  • Implemented TCP/IP network protocol for communication between players.
  • Opengl implementation for drawing and rendering views
  • Rigorously tested the game under different network latency and bandwidth conditions.
  • Most important part of the project was testing the game with predefine test inputs with inputs from file. There are further possibilities of additions like UDP protocol for autodetecting the server and sending connection request to the available server.


    MIPS-32 Processor Design

    We designed a subset of instructions for the MIPS-32 architecture on a simulator. This was a part of the Computer Architecture (CSL211) course back in my second year of study.

    The simulator used was Logisim, a java based simulator. The input instructions were given using the register file, and the state changes in the outputs were displayed as the instructions got executed one by one.


    4-Floor lift control implementation on FPGA

    Implement a complete 4-floor Lift Control on Spartan 3E Xilinx FPGA board. It was a complete real time lift control whose controls and corresponding actions were based on ideal use conditions. The lift control had memory unit to keep track of the floors to be stopped at and a control unit which binded the complete schematic discription of Lift Control.