![Page 2: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/2.jpg)
2
Questions for today
1. How do common input devices work?
2. How can we think about the larger space of all possible input devices?
3. Can we predict human input performance?
Next class: What about uncommon input devices (music controllers, multitouch, …)?
![Page 3: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/3.jpg)
3
Today’s lecture in graph form
time
Level of abstraction
concretedetails
abstractmodels Functional
Dissection of Mouse & Keyboard
Design Space of
Input Devices Modeling
Human Performance
![Page 4: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/4.jpg)
I spilled coffee on my keyboard.
Now 25% of the keys don’t work anymore.
But some of the defective keys are nowhere near the spill.
What’s going on?
![Page 5: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/5.jpg)
5
![Page 6: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/6.jpg)
![Page 7: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/7.jpg)
Key cap
Top conductive layer
Bottom conductive layer
Separating layer(with hole)
![Page 8: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/8.jpg)
Key cap
Top conductive layer
Bottom conductive layer
Separating layer(with hole)
![Page 9: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/9.jpg)
9
![Page 10: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/10.jpg)
10
Row/Column Scanning
Q W E R T
A S D F G
Z X C V B
R1
R2
R3
R4
C1 C2 C3 C4 C5
9 lines
20 keys
![Page 11: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/11.jpg)
Mouse. Engelbart and English ~1964Source: Card, Stu. Lecture on Human Information Interaction. Stanford, 2007.
![Page 12: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/12.jpg)
A Layered Framework
12From: Hartmann, Follmer, Klemmer: Input Devices are like Onions
![Page 13: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/13.jpg)
13
![Page 14: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/14.jpg)
14
![Page 15: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/15.jpg)
15
Right button
Left buttonEncoder wheel for scrolling
![Page 16: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/16.jpg)
16
IR emitter IR detectorslotted wheel(between emitter & detector)
![Page 17: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/17.jpg)
17
Sensing: Rotary Encoder
High
![Page 18: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/18.jpg)
18
Sensing: Fwd Rotation
Low
![Page 19: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/19.jpg)
19
Sensing: Backwd Rotation
Low Oops!
![Page 20: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/20.jpg)
20
Solution: Use two out-of-phase detectors
High
High
![Page 21: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/21.jpg)
21
Sensing: Rotary Encoder
Low
High
![Page 22: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/22.jpg)
22
Sensing: Rotary Encoder
High
Low
Coding:HH-> LH: dx = 1HH-> HL: dx = -1
![Page 23: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/23.jpg)
23
Transformation
cxt = max(0, min( sw, cxt-1+dx*cd ))
cyt = …
cxt: cursor x position in screen coordinates at time tdx: mouse x movement delta in mouse coordinatessw: screen widthcd: control-display ratio
![Page 24: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/24.jpg)
24
Device Abstraction Click, DoubleClick, MouseUp,
MouseDown, MouseMove …
![Page 25: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/25.jpg)
25
What about optical mice?
Source: http://spritesmods.com/?art=mouseeye
![Page 26: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/26.jpg)
26
bbbbbbbbbb
Source: http://spritesmods.com/?art=mouseeye
![Page 27: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/27.jpg)
27
Trackball, Trackpad
![Page 28: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/28.jpg)
28
Trackpoint Indirect, force sensing, velocity
control Nonlinear transfer function
Force
Velo
city
(cc) Image by flickr user tsaiid
![Page 29: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/29.jpg)
29
Joysticks
![Page 30: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/30.jpg)
A design space of input devices…
Card, S. K., Mackinlay, J. D., and Robertson, G. G. 1991. A morphological analysis of the design space of input devices. ACM TOIS 9, 2 (Apr. 1991), 99-122.
![Page 31: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/31.jpg)
![Page 32: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/32.jpg)
Implicit Assumptions: Desktop-centric computing
![Page 33: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/33.jpg)
33
Which device is fastest? For what task? Pointing.
Combination of two factors: Bandwidth of human muscle group
(upper limit) Bandwidth of device itself
![Page 34: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/34.jpg)
Bandwidth of Human Muscle Groups
Source: Card, Stu. Lecture on Human Information Interaction. Stanford, 2007.
![Page 35: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/35.jpg)
Fitts’ Law Time Tpos to move the hand to
target size S which is distance D away is given by: Tpos = a + b log2 (2D/S)
Time to move the hand depends only on the relative precision required
Source: Landay, James. “Human Abilities”. CS160 UC Berkeley.
![Page 36: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/36.jpg)
Mouse vs. Headmouse
Source: Card, Stu. Lecture on Human Information Interaction. Stanford, 2007.
![Page 37: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/37.jpg)
Headmouse: No chance to win
Source: Card, Stu. Lecture on Human Information Interaction. Stanford, 2007.
![Page 38: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/38.jpg)
Fitts’ Law in Windows & Mac OS
Windows 95: Missed by a pixelWindows XP: Good to the last drop
The Apple menu in Mac OS X v10.4 Tiger.
Source: Jensen Harris, An Office User Interface Blog : Giving You Fitts. Microsoft, 2007; Apple
![Page 39: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/39.jpg)
Fitts’ Law in Microsoft Office 2007
Larger, labeled controls can be clicked more quickly
Mini Toolbar: Close to the cursor
Magic Corner: Office Button in the upper-left corner
Source: Jensen Harris, An Office User Interface Blog : Giving You Fitts. Microsoft, 2007.
![Page 40: Stanford hci groupFeb 9, 2009 Björn Hartmann bjoern@cs.stanford.edu Understanding & Modeling Input Devices](https://reader036.vdocument.in/reader036/viewer/2022062516/56649d2e5503460f94a05df4/html5/thumbnails/40.jpg)
stanford hci group Feb 9, 2009
http://bjoern.org