bkb is a program to control keyboard/mouse with eyes

Applications of eye tracking for accessibility, augmented communication and health care

Re: bkb is a program to control keyboard/mouse with eyes

Postby JeffKang » 08 Aug 2014, 23:03

Ah, so I’m guessing that this is the “repeating click” option that you were mentioning (I think it’s in the GazeMouse program too).
Thanks for adding it.
JeffKang
 
Posts: 129
Joined: 15 Feb 2014, 23:59

Re: bkb is a program to control keyboard/mouse with eyes

Postby MastaLomaster » 11 Aug 2014, 22:03

No, the repeating click is in the main toolbar. The tool is called "Left,.."
Image
MastaLomaster
 
Posts: 37
Joined: 03 Mar 2014, 16:35

Re: bkb is a program to control keyboard/mouse with eyes

Postby f.decillis » 23 Jan 2015, 19:08

MastaLomaster wrote:bkb is a program to control keyboard/mouse with eyes
It supports The Eye Trybe eye tracker, TobiiREX eye tracker, and any device that can move a mouse cursor (e.g. an airmouse).

Program and the source code are available for download here:
https://github.com/MastaLomaster/bkb


Installation
Just unzip the bkb32c-English.zip to any folder. Make sure that this folder remains the working directory of the program. Otherwise the program won't load messages.bkb and keyboard.bkb files, and you'll get Russian interface instead of English one.

(updated)
To run the program you also need Microsoft Visual C++ Redistributable for Visual Studio 2012 Update 4. It can be downloaded here:

http://www.microsoft.com/en-us/download ... x?id=30679

If it is not installed, you'll get the error message complaining that the file "msvcrt110.dll" cannot be found.

Using the program with The Eye Tribe tracker

The "Eye Tribe Server" program must be running. Also you need to calibrate the device with the "Eye Tribe UI" before running the bkb32c.exe

Using the program with the Tobii REX eye tracker

(updated)
You need the "TobiiGazeCore32.dll" file from the Tobii Gaze SDK 4.0 to be copied to the working directory of the program. By the way, I found it in my "C:\Program Files (x86)\Tobii\Tobii EyeX" directory after installing the "Tobii Eye Experience". Alternatively, Gaze SDK 4.0 can be downloaded from: http://developer.tobii.com/downloads/ (registration required). Look for the "TobiiGazeSdk-CApi-4.0.X.XXX-Win32" file, where X-current release numbers.

Before starting the program, visit Windows Control Panel, run the "Tobii EyeX Settings (32 bit)" program, and calibrate the device.

Keyboard click sounds
There is a click sound when you press the keyboard buttons. If you don't like the sound, place a WAV-file with the desired sound into the working directory of the program and name it "click.wav".

Basic work principles
After program started and a supported device is selected, you may see the toolbar on the right side. If you ise an eye tracker, the transparent window with the cursor will be shown, it will follow your eyes movements. When using an [air]mouse, the regular cursor is used. To select a tool fixate your eyes on the tool button.

Take a look at these videos to understand the modes of operation:

http://youtu.be/O68C4d2SNC8

**IMPORTANT**: choose Swahili language to watch English subtitles. Sorry, I don't know other ways to switch off the subtitles by default.

http://youtu.be/rqcN9IZ39_4

Known issues
- no easy way to exit the program. One have to close windows in the task bar
- doesn't work with fullscreen applacations so far
- doesn't work with the Metro-style interface of Windows 8/8.1, you have to use good old desktop
- drag-and-drop doesn't work in some cases, for example you cannot move desktop icons on some PCs
- windows moved and doesn't work properly after logout/switch user
- you cannot define timings (keyboard press, fixations, etc.) [fixed]
- impossible to click with a mouse holding the keyboard button pressed (e.g. Ctrl + click) [fixed]
- and many more small things....

Translate to other languages:
One can easily translate the User Interface and modify a keyboard. Just edit the "messages.bkb" and "keyboard.bkb" files. These are text unicode files. But (!) the file format and contents can be changed in future!!!

Compiling the source codes
(updated)
As for now, you have to use Microsoft Visual Studio 2012 (latest update preferred). This is due to the fact that the libraries used (from the Tobii Gaze SDK 4.0) are compiled the same way.

In the project properties enable unicode support

Include directories must contain the "include" one from the Tobii Gaze SDK 4.0. Gaze SDK 4.0 can be downloaded from: http://developer.tobii.com/downloads/ (registration required). Look for the "TobiiGazeSdk-CApi-4.0.X.XXX-Win32" file, where X-current release numbers.

No Tobii Gaze SDK libraries needed during the compilation/build.

You need just standard Windows libraries: Ws2_32.lib, winmm.lib,Msimg32.lib

The project must be linked dynamically to the MSVCRT110.dll, if you link statically, this will be in conflict with the Tobii Gaze SDK libraries used!


Hi, I'm a biomedical engineer and I'm working with the EyeTribe device, I did some tests with your program and I've to say you have done an excellent job :D
Now I would like to change some things with Visual Studio 2013, such as the choice of the device at the start of the program, but in the "source" folder of the repository in addition to .cpp and .h files I don't see the .sln file of the project to create a new .exe file
how can I do?
thank you
f.decillis
 
Posts: 1
Joined: 13 Jan 2015, 12:36

Re: bkb is a program to control keyboard/mouse with eyes

Postby MastaLomaster » 09 Feb 2015, 12:47

f.decillis@unicampus.it wrote:Hi, I'm a biomedical engineer and I'm working with the EyeTribe device, I did some tests with your program and I've to say you have done an excellent job :D
Now I would like to change some things with Visual Studio 2013, such as the choice of the device at the start of the program, but in the "source" folder of the repository in addition to .cpp and .h files I don't see the .sln file of the project to create a new .exe file
how can I do?
thank you


Hi.

These configuration files (.sln,vcxproj, etc.) depend on the directory structure I use.
You'd better create a new empty C++ project, add all the .cpp and .h and .rc files there.
Then define YOUR include directory (mine is, for example, "D:\TobiiGazeSdk402\include").
Don't forget other settings from the "Compiling the source codes" part.
MastaLomaster
 
Posts: 37
Joined: 03 Mar 2014, 16:35

Re: bkb is a program to control keyboard/mouse with eyes

Postby shehan.desilva » 29 Mar 2015, 09:01

This is an excellent piece of software! thank you!.

i am using it with the eye tribe tracker.

i have been having problems with the pointer getting stuck on top of a key. the computer remains fully responsive with no CPU spikes etc. when i have the eye tribe GUI running, these "freeze moments" can be associated with blinking or when the tracker loses the eyes. given this, it might be an idea to gracefully handle this situation by graying out or completely dissapearing the pointer, reappearing when eye tribe finds the eyes.

thanks again, this is a wonderful tool
shehan.desilva
 
Posts: 1
Joined: 24 Mar 2015, 18:32

Re: bkb is a program to control keyboard/mouse with eyes

Postby MastaLomaster » 07 Apr 2015, 10:16

I'm happy the program is useful for you.

Unfortunately I'm not able to make significant changes right now, will return to this later.
To be honest, the issue with losing the eyes - is an issue with the device, not with the high-level software.
If your engine has oil leaks - it is good to have the oil pressure lamp in your dashboard. But you'd better repair or replace the engine.

Regards,
Mikhail.
MastaLomaster
 
Posts: 37
Joined: 03 Mar 2014, 16:35

Re: bkb is a program to control keyboard/mouse with eyes

Postby MastaLomaster » 01 Jun 2015, 09:18

New build (revision D) includes larger toolbar buttons, keyboard magnifying, progress bar on toolbar, more settings.
MastaLomaster
 
Posts: 37
Joined: 03 Mar 2014, 16:35

Re: bkb is a program to control keyboard/mouse with eyes

Postby MastaLomaster » 04 Jun 2015, 09:29

shehan.desilva@gmail.com wrote:i have been having problems with the pointer getting stuck on top of a key. the computer remains fully responsive with no CPU spikes etc. when i have the eye tribe GUI running, these "freeze moments" can be associated with blinking or when the tracker loses the eyes. given this, it might be an idea to gracefully handle this situation by graying out or completely dissapearing the pointer, reappearing when eye tribe finds the eyes.


You were right. It is necessary to monitor the quality of eye tracking. So far I've added the following metrics window:

Image

This [running] chart shows the speed of the eye movements.
1 - the movements are above threshold, no fixation
2 - the movements are below threshold, waiting for the eyes to stay still for a predefined time to click or perform other action. The fixation time is defined in the "Settings" dialogue, as well as a movement threshold.
3 - grey area: the tracker has lost your eyes. (Blinking, head movement, bad distance, lighting conditions, etc.)

The window can be switched on/off in the settings dialogue.
MastaLomaster
 
Posts: 37
Joined: 03 Mar 2014, 16:35

Re: bkb is a program to control keyboard/mouse with eyes

Postby JeffKang » 10 Jun 2015, 22:42

Thanks for the work, MastaLomaster.
JeffKang
 
Posts: 129
Joined: 15 Feb 2014, 23:59

Re: bkb is a program to control keyboard/mouse with eyes

Postby MastaLomaster » 13 Jun 2015, 11:24

JeffKang wrote:Thanks for the work, MastaLomaster.


My pleasure, Jeff.
Please check the latest build, it now contains the fixation progress bar in the cursor window:
Image
So you know whether your eyes are considered to be fixating or not when you stare at some point.

Also there is a "Sleep" button. You need to fixate your eyes 3 times on it for the program to switch into the black screen mode. This is for the persons who can't switch off the monitor, but need it to have rest.
Return to the main operation mode - fixate your eyes on the right-bottom corner of the screen (with 3 small points). Also 3 times.
MastaLomaster
 
Posts: 37
Joined: 03 Mar 2014, 16:35

PreviousNext

Return to Accessibility & Health Care



cron