Human Computer Interaction Institute School of Computer Science Carnegie Mellon University Mobile Devices for Control Brad A. Myers bam@cs.cmu.edu http://www.cs.cmu.edu/~pebbles Mobile Devices Mobile Devices for communication As a “Personal Information Manager” As a “Personal Digital Assistant” As a PC replacement “PocketPC” For Remote Control of other devices Remote Control of PCs Remote Control of appliances Brad Myers 2 Problem Appliances are too complex Brad Myers 3 Problem Too many remotes Brad Myers 4 Problem User Interfaces of Mobile Devices themselves are too hard to use Brad Myers 5 Problem PC’s have only a keyboard and mouse as input devices Brad Myers 6 Approach Use a personal Mobile Device as an Interface to the PC and to the Appliances Brad Myers 7 History ParcTab – continuous communication Early “organizers” – no communication Newton – extra cost for synchronization Palm – HotSync once a day WindowsCE/PocketPC – ActiveSync once a day Brad Myers 8 Now, Handhelds will be Communicating Toshiba e740 802.11 (“Wi-Fi”) BlueTooth Cell-phone network (G3) (Infrared) (Wires or cradle) HP iPaq 3870 Microsoft SmartPhone Brad Myers 9 Premises of our Research “With the coming wireless technologies, connecting the PCs and PDAs together will no longer be an occasional event for synchronization. Instead, the devices will frequently be in close, interactive communication.” — Brad Myers Brad Myers, “Using Hand-Held Devices and PCs Together,” Comm. ACM, Vol. 44, No. 11. Nov., 2001. pp. 34 - 41. 10 Pebbles Project Performed as part of the Pebbles Project Overall goal: Use of multiple devices at the same time Palm and desktop PC Mobile Phone and “Smart Home” Multiple handhelds in a meeting Pocket PC and appliances Multiple users with their devices Single user with multiple devices Brad Myers 11 Pebbles is: P DAs for E ntry of B oth B ytes and L ocations from E xternal S ources. http://www.pebbles.hcii.edu/ Brad Myers 12 Controlling a PC Remote Commander Slide Show Commander “Semantic Snarfing” Scrolling Shortcutter http://www.pebbles.hcii.edu/ Important Work by Others PARCTab [Want 95], [Weiser, CACM’93] Abowd: eClass using Handhelds [CHI’98] Greenberg: public and private data [Personal Technologies, 3(1), 1999] Jun Rekimoto: [UIST’97, CHI’98, CHI’99, …] Pick and drop; handhelds with big displays Brad Myers 14 Remote Commander Allow PDAs to control a PC Can be used with any application Uses the standard (single) cursor Don’t have to jump up and grab mouse All mouse and keyboard functions Use PDA like touchpad Graffiti or our own pop-up keyboard Word prediction and completion Brad Myers 15 For People with Muscular Disabilities Using handhelds as interface to PCs People with Muscular Dystrophy have fine-motor control but lose gross motor control Difficulties with mouse and keyboard, but stylus OK So use Remote Commander as PC’s keyboard and mouse Brad Myers 16 PocketPC version Get PC’s screen onto PocketPC Full view, or one-to-one zooming Scroll with iPaq’s buttons Control or scribble Brad Myers 17 Power Point Control Use PC to give the presentation Use hand-held to control the PC Two-way communication Hand-held shows picture of slide, notes, timer Brad Myers 18 SlideShow Commander, cont. See list of slide titles Scribble Tap on on-screen buttons and links Preview other slides Control demonstrations Brad Myers 19 Control at a Distance Controlling a PC from across the room Meetings, etc. Use a laser pointer? Studies Difficult due to: Jitter of hand (+/- 10 pixels) No button on the laser pointer People not accurate at where beam will go on and off Brad Myers 20 Idea:“Semantic Snarfing” Grab contents to handheld Picture “Semantic” because reformat based on the meaning of the contents Menus Text Re-visualization Brad Myers 21 Command Post of the Future Large DARPA funded project Make commanders more effective Private drill-down of public information Brad Myers 22 Classroom Investigations Investigate improving large lectures with frequent in-class “concept tests” Provide immediate feedback to instructor Easy for instructor Brad Myers 23 Scrolling Desktop Applications Scrolling using the non-dominant hand Parallel and efficient use of both hands Generates Windows Time to Scroll 10 Pages Sec scrolling events 100 Study showed can be faster for some tasks 80 60 40 20 0 Trial 2 Brad Myers ButtonScroller Mouse AbsScroller Trial 3 SlideScroller Scroll Wheel RateScroller 24 Shortcutter User-created panels of controls Create custom interfaces and extensions to PC applications And then take them with you Direct manipulation for edit, then set properties PocketPC or Palm Brad Myers 25 Shortcutter Widgets Buttons Virtual Joy stick Virtual Knob Sliders Mouse pad Gesture panel Brad Myers 26 Shortcutter Actions Send any keyboard key, mouse button, scrolling action or string to PC Open a file or URL Run an application Invoke any PC menu or button Windows message Recorded Switch to a different Shortcutter panel Control the Mouse Brad Myers 27 Shortcutter Actions, cont. Control external devices through PC’s serial port Macro Directly (e.g., projectors) X-10 for electrical devices Can be multi-application Application-specific Same button, different messages Useful for application sets: browsers, compilers Brad Myers 28 More Scenarios of Use Lean-back mail reading Controlling media players … and many others Brad Myers 29 Controlling Appliances PhD research of Jeffrey Nichols http://www.pebbles.hcii.edu/puc/ Problem Too many complex devices, each with its own idiosyncratic interface Stereo system Telephones ATM Fax machine Photocopier Hotel alarm clock Increasingly computerized Low usability Problem Brad Myers 32 Existing “universal” controls Pre-programmed at the factory with a subset, Or, Laboriously hand-programmed by the user Brad Myers 33 Important Work by Others Xweb [Olsen Jr. 2000] INCITS V2 standardization effort: Alternative Interface Access Protocol (AIAP) [Zimmermann, CHI’02] Stanford iRoom, iCrafter [Ponnekanti, UBICOMP 2001] Brad Myers 34 Our Approach Handheld is a “Personal Universal Controller” (PUC) Two-way communication Appliance describes its functions Handheld PUC Automatically creates interface Controls the appliance Displays feedback about appliance status Specifications Control Feedback Brad Myers 35 Automatic Generation of UIs Benefits All interfaces consistent for a user With conventions of the handheld Even from multiple manufacturers Addresses hotel alarm clock problem Can take into account user preferences Multiple modalities (GUI + Speech UI) A Hard Problem Previous automatic systems have not generated high quality interfaces Brad Myers 36 Research Challenges 1. Automatic Design of Graphical User Interfaces 2. Automatic Design of Speech User Interfaces 3. Connection with real devices Through various protocols X-10, AV/C, HAVi, UPnP, etc. Also, custom hardware and software Brad Myers 37 Hand-Generated Graphical Interfaces First, Hand-Designed PocketPC interfaces: AIWA Shelf Stereo (Tape,CD,Tuner) AT&T Telephone/Answering Machine Used Embedded Visual Basic Ensured quality with heuristic analysis and think-aloud studies Compared with manufacturer’s interfaces Brad Myers 38 Results of Comparison Using PUC, users took 50% less time & made 50% fewer errors All differences are significant (p < 0.05) Brad Myers 39 Discussion of Comparison Our hand designed interfaces succeeded for several reasons Good organization Each button has one function Good labels Only available functions are active Others, hidden on tabs or grayed out Better feedback and error messages Brad Myers 40 Current PUC Specification Language XML Full documentation for the specification language and protocol: http://www.pebbles.hcii.cmu.edu/puc/ Contains sample specification for a stereo Brad Myers 41 Properties of PUC Language State variables & commands Each can have multiple labels Typed variables Useful when not enough room Base types: Boolean, string, enumerated, integers, fixed-point, floating-point, etc. Optional labels for values Hierarchical Structure Groups Brad Myers 42 Dependency Information Crucial for high-quality interfaces Expressed as <active-if> clauses Operations: Combined Logically Equals, Less-Than, Greater-Than AND, OR Used for: Dynamic graying out Layout Widget selection Brad Myers 43 Specifications Have working specifications for: Audiophase stereo X-10 lights control Sony CamCorder Windows Media Player Audio ReQuest hardware MP3 player WinAmp Media Player Elevator Brad Myers 44 Examples of Generated GUIs Stereo and X-10 Brad Myers 45 More Examples Elevator Brad Myers 46 Generating Speech Interfaces “Universal Speech Interface” (USI) project Creates grammar, language model and pronunciation dictionary from PUC specification Prof. Roni Rosenfeld of CMU http://www.cs.cmu.edu/~usi Pronunciation from labels using phonetic rules Can provide other pronunciations as labels for fine-tuning Will use dependency information to help with disambiguation and explanation Supports queries and spoken feedback Paraphrases as confirmation Brad Myers 47 PUC Architecture Brad Myers 48 Adaptors “Adaptors” provide the interface to existing (and future) appliances If do not support specification language directly AV/C (standard protocol) Custom hardware Custom software Audiophase Stereo ARQ MP3 player SIMA MP3 player (future) X-10 Light switches, etc. Brad Myers HAVi (current work) Sony CamCorder PlayStation, etc. (future) Mitsubishi HDTV 65” TV Mitsubishi HDTV VCR UPnP (future) ?? 49 Adaptor using Custom Hardware for Stereo Pretends to send IR codes Reads LED panel signals to decode state Created by Pittsburgh company: Maya Design Brad Myers 50 Adaptor for AV/C PUC Java Proxy Hand-written spec of AV/C devices Multiple device controllers PUC Java Library Our Java device code Automatic GUI generation Automatic Speech UI generation Our C++ code Microsoft DirectShow library AV/C protocol Firewire cable (IEEE 1394) Brad Myers Digital Video Camera or VCR 51 Demonstration X-10 Camcorder through AV/C protocol for IEEE 1394 (Firewire) Two way communication: When state changes from appliance, GUI is updated and can query state with speech Brad Myers 52 For More Information Many papers on the Pebbles web site On PUC and other work Most programs available for free downloading: http://www.cs.cmu.edu/~pebbles SlideShow Commander available commercially http://www.slideshowcommander.com Brad Myers 53 Conclusions Study The Big Picture: How mobile devices fit into users’ entire information and control space As more and more electronics are computerized, mobiles devices can help control them Mobile devices can improve the user interfaces of everything else Not just be another gadget to be learned Brad Myers 54 Thanks to Our Sponsors! The Pebbles research project is supported by grants from: DARPA Microsoft NSF Pittsburgh Digital Greenhouse General Motors And equipment grants from: Hewlett Packard Lucent Technologies Mitsubishi Palm Computing Symbol Technologies Brad Myers IBM SMART Technologies VividLogic Synergy Solutions Handango 55 Human Computer Interaction Institute School of Computer Science Carnegie Mellon University Mobile Devices for Control Brad A. Myers bam@cs.cmu.edu http://www.cs.cmu.edu/~pebbles