Scanning Ambiguous Keyboard (SAK)I. Scott MacKenzie
Dept. of Electrical Engineering and Computer Science
Toronto, Ontario, Canada M3J 1P3
Last update: 11/11/2013
BackgroundThere is a long history of research in accessible computing on text entry using single-switch scanning. There is also a long history of research in human-factors and HCI on text entry using ambiguous keyboards. See the “design space” figure below.
An interesting possibility is to consider an input method that combines the central features of single-switch scanning and ambiguous keyboards. See the modified design space below.
The result is a Scanning Ambiguous Keyboard (SAK). The design details are quite involved, since decisions must be made on the number of keys, the letter-to-key assignments, the scanning pattern, and so on. Details of an initial design, an implementation, and an evaluation of a scanning ambiguous keyboard (SAK) are found in the following two references:
- The One-key Challenge: Searching for a Fast One-key Kext Entry Method (ASSETS 2009)
- SAK: Scanning Ambiguous Keyboard for Efficient One-Key Text Entry (ACM TOCHI 2010)
Follow-on implementations and evaluations using eye blinks for input are found in the following two references:
- BlinkWrite: Efficient Text Entry Using Eye Blinks (UAIS 2011)
- BlinkWrite2: An Improved Text Entry Method Using Eye Blinks (ETRA 2010)
A key purpose of this research note is host a download site for the SAK software. The download is a zip file containing the Java source and class files, as well as the API, related text files, image files, etc. A good way to get started is to unzip all the files into a directory and then open
SAKExperiment.htmlin a browser and read the API.
- SAK download: click here
The software in the zip file was used for the experiment described in the first two papers above. The software for the eye-blink implementation was mostly the same. Modifications are described in the papers.
If you have any problems, questions, or comments, please let me know.
Scott MacKenzie (firstname.lastname@example.org).