BCI Virtual Keyboard using Raspberry Pi

SKU: PAN_EMB_028 Category:
Ask For Price


                           In our society there are more people suffering from paralytic diseases causes them several disabilities like they are unable to talk and unable to move physically and unable to express their everyday basic needs, but they can still use their eyes and sometimes move their heads. This Project is working under the principle of Brain-Computer Interface (BCI). BCI Virtual Keyboard using Raspberry Pi

                          Our model helps them to type the letters using the virtual keyboard, which is displayed on the monitor, designed using python programming. This system is having a core system like Raspberry Pi. The virtual keyboard contains alphabets, numbers, and some punctuations. The mouse pointer gets automatically shifted through every key, characters can be chosen by making an eye blink at a particular position of the mouse pointer at a certain character.


                           The Brain-Computer Interface (BCI) is one of the communication channels used to make an interaction between the human brain and a digital computer. BCI monitors EEG waves from the Brain. EEG? Electroencephalography monitors an Electrical property of the Brain along with the Scalp (Non-invasive). The Neurosky Mind wave mobile / Brain Sense measures intentionally directed EMG activity (blink strength). ? A brain-computer interface (BCI) is a new communication channel between the human brain and a digital computer. The ambitious goal of a BCI is finally the restoration of movements, communication, and environmental control for handicapped people.

                         The Raspberry Pi is a credit card-sized single computer or SoC that uses ARM1176JZF-Score. SoC, or System on a Chip, is a method of placing all necessary electronics for running a computer on a single chip. Raspberry Pi needs an Operating system to start up. In the aim of cost reduction, the Raspberry Pi omits any onboard non-volatile memory used to store the bootloaders, Linux Kernels, and file systems as seen in more traditional embedded systems. Rather, an SD/MMC card slot is provided for this purpose. After bootload, as per the application program, Raspberry Pi will get executed.


                         In the existing system, every application is developed using Matlab, it requires a computer for processing signal and processing applications through Matlab.


                         Since the system uses Raspberry Pi, it does not require Matlab for processing the signal. Raspberry Pi has inbuilt Bluetooth so that there is no need for external Bluetooth. In this proposed system virtual keyboard is designed using python programming by having the Tkinter library for virtual keyboard design and the Pyautogui library for the mouse pointer movement.


Virtual Keyboard


                          Since Raspberry Pi is a small Pc, It is having the option to connect a monitor. Raspberry Pi contains an HDMI port; the monitor can be connected by using VGA to HDMI converter cable. Brain Sense is connected with Raspberry Pi using Bluetooth. The virtual keyboard, which is created using python programming, got displayed in the Monitor.


In this system, Raspberry Pi acts as a core, and these applications don’t require any laptop/pc with Matlab. Since it is a mini Pc, it will process the signal on its own. When the system begins to run, it opens the Virtual keyboard which contains alphabets, numbers, and symbols. Then mouse pointer gets automatically moves throughout every key, whenever we make an eye blink at certain keys, the letter got selected and got typed. Before opening that virtual keyboard, we have to place the cursor on a notepad or anywhere where we have to type the sentence. After that by making an eye blink at every position of the mouse pointer, the character got chosen and got typed.


  • Raspberry Pi

    Virtual Keyboard

  • Mind wave mobile or Brain sense


  • Raspbian OS
  • SD Card Formatter
  • Win32 disk imager


  • Brain sense
  • Raspberry Pi
  • Source Code


                      This system can be easily reconfigurable for further keys. Further, we can develop by including dictionaries with it, as well as we can develop this application with voice output. The intensity of Eyeblink differs for every human, we can reconfigure the code for high accuracy for blink detection.

Customer Reviews

There are no reviews yet.

Be the first to review “BCI Virtual Keyboard using Raspberry Pi”

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