Click to know What VIM:PY does ->

Highslide JS

Watch VIM:PY Device Demo! ->

The only thing worse than being blind is having sight but no vision. -Helen Keller


A Reading Device that can read out the contents of a printed document. VIM:PY is an assistive technology that can prove to be great use to the blind community all over the world. It can be of major importance in bridging the gap between the vast physical knowledge bank and its electronic version. The reliance of the blind on the sighted people as well as the higher costs of accessing information can be greatly reduced.

VIM:PY has been shortlisted as one of the top 20 Bachelor Level projects across India by the Indian National Academy of Engineering.
The Vim:py technical paper titled "Vim:py - A Yapper for the visually Impaired" has been published by IEEE Proceedings,
Issue Date : Oct. 30 2012-Nov. 2 2012

A screenshot of VimpyOS© Booting...

VIM:PY© is a standalone device which uses it's own special Operating System called VimpyOS© to provide an interface to the user. VIM:PY© helps the user to "read-out" a printed A4-size document. Also, the user can save a soft copy of the document in the memory. The user also has an option of making the soft copies of the documents portable using a USB drive.
The VimpyOS© ensures a perfectly running environment for the Vimpy© Program where no DISPLAY DEVICES (screens) are needed. The OS has been designed to interact with the user via speech.

To promote the freedom of the software under GNU GPL v3 license, VimpyOS is an open source OS and can be downloaded from this site.

Supported Devices
The latest version of VimpyOS©, Vimpy1.0 has been tested on the following devices. If you have downloaded VimpyOS©, and plan to integrate the hardware, the following hardware devices are recommended.

All i3 and i5 compatible motherboards

ACER 5742G,
COMPAQ PRESARIO B1800 notebook,
HP DV 51201

VIMPY© uses scanners compatible with SANE(Scanner Access Now Easy).In order to check the scanner compatibity with SANE, visit the SANE website.

*AMD testing is pending


After switching on Vimpy, several options are read out to the user. The user can select any of these options using arrow keys and enter.
The description of all the options is given below.

1) Scan and read,
2) Scan and save,
3) Read previous,
4) USB transfer,
5) Options,
6) Help,
7) Exit

Kindly select an option to get more information about it.

1> Scan and read
The user can scan and read the document and save it after reading according to the users choice.The required files are stored in a folder called temp. If the file has to be saved, the text file is moved to text folder else removed. The file is saved into a folder which has the current system date as its name for example, 19.03.2012 or 20.03.2012. The text file is saved in the appropriate folder with a number as its name for example, the first file will be 1.txt.The file name is auto increments each time. You can press p to pause, q to stop and arrow keys to move forward and backward in the file.In order to scan a page horizontally, press alt plus enter. This can be used to scan double pages placed horizontally or pages with text written horizontally.

2>Scan and save
This option lets the user scan and save the file without reading. This option is basically for bulk usage. The text file is saved in timestamped folders. The file is saved into a folder which has the current system date as its name(for example, 19.03.2012 or 20.03.2012). The text file is then saved in the appropriate folder with a number as its name(for example, the first file will be 1.txt). The file name is basically a counter which is incremented whenever a new image is scanned by the program. You can press p to pause, q to stop and arrow keys to forward or rewind during the playback. In order to scan a page horizontally, press alt plus enter. This can be used to scan double pages placed horizontally or pages with text written horizontally.

3>Read Previous
This option allows you to browse the text folder which contains the files previously scanned and saved and select a particular file to read it again. You are first given the options of the various timestamped folders in the 'text' directory. You can select the any one the folders. Then, the files present in the folder selected are given as options to you. You can select the file you want to read.

4>Read from USB
This option enables the user to import his or her own text files into vimpy. This tool browses through all the text files present in the pendrive and lists them out to the user. With the help of the arrow keys. The user is then free to navigate through the files and finally select the file he or she wants to be read out. A major feature of this tool is that it allows its users to read Hindi or Marathi. The user is prompted to select a script from English or Devnagiri. The file is then read accordingly in the selected script. This way files in Hindi and Marathi can also be read.

5>USB transfer
This feature of vimpy allows the user to dump the entire 'text' folder into a USB drive for portability.

The speech variables (i.e amplitude,pitch and speed in words per minute) are read out in this option. Also,you can change the values if required. The variables can be incremented/decremented using the up/dowm arrow keys. This also allows for an option called Factory Reset. This option resets the system to its initial settings deleting all the folders and the users preferences. This is good for memory management.

Selecting this option turns off the system.

The source code of Vimpy as well as the VimpyOS can be downloaded from here.

The latest version of VimpyOS is:VimpyOS1.0
Also, the source code is:vimpy
To allow freedom of the system, VimpyOS© can be downloaded from here.

A step by step guide to help you through the process is provided here.

Vimpy Software

To allow free use of this Operating System(VimpyOS©) can be downloaded from this page under the rules of the licensing provided.



md5: aed9cc51f4dcd85f1cba99d728510bcc

VimpyOS-amd64(in progress)

Updates of software changes are posted here
*Saturday, April 07 2012*
-Corrected SNS(scan and save) input feed
-Added More help options
-Added Read from USB mode
-Added Read text files in Hindi And Marathi (Language Localization)

*Tuesday, April 17 2012*
-Option to choose between languages
-Hindi Read bug fix

*Saturday, September 06 2012*
-Added Voices to Vimpy
-Updated Help

*Saturday, January 12 2013*
-Added "alt + x" command to read pages horizontally
-Added option to Factory Reset

Avanish Pathak
e-mail: avaneesh@engineer.com

Amruta Rodrigues
e-mail: amruta.rodrigues@gmail.com

Charu Chaudhari
e-mail: charu6790@yahoo.com

-=Technical Advisors=-

Amiya Kumar Tripathy

Krishnakant Mane

In case of any queries or any issues regarding VIMPY, contact us.
If you would like to join us to help improve this project and do service for a social cause feel free to contact us.
You can submit patches and snippets of improvements to this project. Credits will be given on the site as well as the program.

Vimpy© Program

The C program can be run in a gcc compiler.

The commands for the same are:

Ensure you run the program as root or single user to avoid prompts

After un-tarring the program it can be compiled. The vimpy.c program runs and sets its base where it is compiled.

To compile the .c file
$ gcc vimpy.c -o vimpy -lncurses -lmenu

And in order to run it
$ sudo ./vimpy

Kindly ensure you are running Vimpy Program on single user or sudo mode.

The following dependencies need to be met in order to use Vimpy:

1> ncurses library - This is a library that helps make a GUI-like application. In case you do not have this library already installed, you can install it by typing
$ sudo apt-get install libncurses5-dev
2>eSpeak: eSpeak is a talking software which is used by Vimpy to interact with the user as well as read the documents aloud. In order to download eSpeak type the following in the terminal.
$ sudo apt-get install espeak

3>Cuneiform: This is a software that converts images to text using OCR. To download cuneiform, use this bash command.
$ sudo apt-get install cuneiform

4>mplayer: This is a software is a media player and plays various audio formats. To download mplayer, use the command.
$ sudo apt-get install mplayer

5> SANE backend: SANE is an API that interfaces the Scanner with the Operating System. For instructions as to how to install SANE, please visit this page.


Steps for making VimpyOS© bootable from a pendrive in Ubuntu.

1.Download the VimpyOS© from the site provided above.

2.Insert a Pendrive.

3.Go to the MAIN MENU select SYSTEM.

4.Select ADMINISTRATION and click on "Startup Disk Creator". The following window will open.


5.Select the Source Disc image/.iso (VimpyOS iso image that you downloaded) by clicking on the "Other" tab and browse for VimpyOS in Downloads.


6.In "Disk to use" select the USB drive that you have inserted, click on the tab "Erase Disc" to format the drive.


7.It is advised to select the "stored in reserved extra space" so that any files created by a user can be retrieved later on live booting again else you can use the "dump to USB" option while in the Vimpy Program.


Select how much space you want to reserve for the same (advised approximately 50% of the pendrive capacity).
8.Click on "Make Startup Disk".


Once completed the pendrive can be used to install the VimpyOS.


Now, in order to use VimpyOS©, restart the system.

Make sure that your BIOS settings boot from a USB drive first.
For dependecies of hardware, please see Supported Devices
And, you are good to go!