x360 schedule


basic info
instructor: Karon MacLean (maclean at cs dot ubc dot ca)
office: ICICS/CS2-X641
tel: 604-822-8169
office hrs: by arrangement; open door policy
website: http://www.cs.ubc.ca/~cs543
discussion group: Slack
team coordination: student-writable twiki
instructor: Slack

Term: 2018/19 Winter 1
lec + lab:

open lab
-- Mon 13:00-16:00 (required)

-- Anytime
location (all): FSC 2333
schedule: course dashboard
Registration in CPSC 543: This year, offered directed-studies style to a very small section.
course description

This is a graduate-level introduction to the inception, creation and evaluation of physical and multimodal human-computer interfaces. It emphasizes control and/or display of virtual environments through the sense of touch for the purpose of human-system communication, as well as perceptual/attentional foundations. Types of communication include tactile signaling, affective touch, and shared control between human and smart system.

Format: lectures, assignments and labs, reading and discussion of current literature; culminating in a team design or evaluation project of the student's choice. Labs and projects will employ available active-haptic display hardware ("active" means it can generate force), and/or prototyping of passive physical interfaces; they should focus on creative crafting of the interface to suit the application.

hardware component

This course's labs and projects are based on Arduino-based "haptic sketching:" a rapid iterative cycle in design explorations.

Each student will be required to purchase an Arduino prototyping kit, costing about $100 CAD (bought in bulk by the department and passed at cost to class), the contents of which you will use throughout the course (labs and project) and keep at the end. In addition the lab will stock tools and extra components and materials. You may find worthwhile for creativity's sake to scavenge and possibly purchase other low-cost sensors, actuators and materials in your project explorations (recycling encouraged!)

background & current hot research areas

Physical user interfaces are anything we touch to learn something from a computer or networked system, or to direct it in some way. While this includes the computer mouse and the power button, programmed physical interfaces can be powerful information displays, intuitive and undemanding of attention. Exactly how to make them work well, in an age of attentional overload, is what makes this a hot research topic. In this course, we'll use haptic force-feedack and tactile display technology as the means, either alone or in combination with other sensory modalities, and focus on the interaction design that's necessary for solving real problems.

Today, we know how to build and control small safe robots, we have mastered some techniques for haptic rendering, and we understand some of the key human psychophysic and cognitive abilities that translate into specifications for haptic displays. This has paved the way to the current research frontiers:

  • Communication: How do we ideally use these devices? What is the languague with which we will communicate with or through them? How should they be integrated into the world?
  • Contextual Responsiveness: How can recent advances in sensor technology, machine learning methods, and other relevant technology be repurposed to problems of physical interaction -- for example, creative use of touch sensing to render an interface contextually sensitive and responsive (i.e. implicit as well as explicit sensing and reactions of the interface)
  • Evaluation: How do we know when a physical interface has improved an application in some way? In many cases the benefits are long-term, health-related (physical or emotional), or emotional/aesthetic; despite their importance, these can be difficult to measure and quantify. When immediate performance improvement is expected, it may be in dynamic situations tough to reproduce in a test lab. Coming up with trustworthy and practical test scenarios that will satisfy both the academic community and a venture capitalist is a challenge with rich potential rewards.
  • Cost: At present, active haptic displays may be [relatively] cheap or high performance, but are rarely both at the same time. Creativity is required to make cheap devices feel good, and/or find new technologies to reduce the cost of high performance.
  • Power: Some of the most provocative applications for force-feedback displays are in handheld and portable devices; yet the added power and bulk of state-of-the-art displays make this impractical. New actuation technology and unconventional uses of existing technologies are needed.
  • Applications: Above all, what will ultimately be their best, most irresistable uses?

approximate course outline
The detailed schedule is maintained the course dashboard.
I. Introduction - Physical Interaction Design
  • Course overview; what and why
II. Technology, 1st pass
  • Simple force and tactile feedback: overview, actuation and sensing
  • Haptic control architectures
III. Ways to Physically Communicate
  • Signals: haptic icons
  • Affect: haptic and gestural
  • Sharing control using forces
  • Tactile sensing and responsive interfaces
  • Abstractions and higher level control of information
Technology, next step
  • Intro to controls: the PID
  • Rendering: Rigid surfaces and static linear building blocks
  • Rendering: Dynamic systems, Textures
Appropriate Evaluation
  • Workload theory and multimodal interfaces
  • Experiment Design/Analysis - overview; ethics
  • Experiment Design/Analysis - workload
Human Haptics
  • Human haptic sensing & motor control
  • Cross-modal interactions
course wide learning goals

A student who successfully completes this course will ...

1) Know some basics about haptic interfaces, their actuation, control and programming, able to:

  • describe a variety of types of physical interfaces
  • list and deploy a number of methods to sense the user-imposed state of a physical interface, and for actuating active-haptic interfaces
  • haptically render a rigid surface, several different surface properties, and a deformable surface
  • reate a simple dynamic haptic virtual environment

2) Be aware of application areas, and how to think about new ones, able to:

  • list several current and potential applications of haptic feedback
  • describe essential features of handheld tools, both traditional and computationally augmented
  • list and use a number of methods for rapidly prototyping and designing physical application interfaces

3) Possess a rudimentary understanding of haptic psychophysics, able to:

  • identify the primary mechanisms of human haptic sensing
  • describe key cross-modal relationships between the haptic sense and vision / audition
  • design a simple psychophysical test

4) Take a physical interface concept through multiple iterative cycles of design and description, able to:

  • use a sequence of complementary prototyping methods to explore, develop and demonstrate a physical interface concept
  • explore the relation between a physical interaction modality and some kind of content
  • [possibly] use basic experimental techniques to evaluate the effectiveness of that interface
  • document and share process and findings in a variety of formats, including an online blog
  • design and deliver a research presentation
target audience

Physical user intefaces are intensely interdisciplinary: I encourage students from Computer Science, Engineering (Mech, ECE) and Psychology with interests in HCI and novel interface technologies to take this course. It will make both our discussions and our projects more interesting.


Given the interdisciplinary part, prerequisites are minimal, but be prepared to absorb new information in a variety of areas.

    strongly recommended
    • decent programming skills, ideally in 2 or more languages to facilitate picking up more (C/C++, Java). The main language used within class is Arduino, but your project may benefit from other tools.
    • basic physics (phys 170 or equivalent)
    • Introductory HCI: cpsc 344/544 or equivalent, pre- or co-req. Students coming from other departments (and welcomed for their diverse background) may find it difficult to access this recommendation or fit it into their curriculum. These individuals will have a mild but overcomable handicap; if a minority, you should be able to pick up necessary background in part from your team and classmates.

Skills that are especially welcomed: The following are not necessary, but if you have one or more it will come in handy!

  • introductory level controls (you can write and rapidly tune a PID controller).
  • introductory robotics
  • hardware programming experience. Familarity with multithreaded coding and device I/O on at least one platform, with ability to transfer knowledge to another.
  • basic mechatronics experience (circuits, micros and mechanisms)
  • basic experiment design & statistical analysis
  • basic haptic and/or auditory psychophysics
  • basic modelmaking or machine design / fabrication experience & access to facilities

Finally, bring your creative and artistic side. While a technical background is essential to build interfaces, some of the best ideas and intuitions for them come from the hours you spend with old-fashioned hand tools, musical instruments, drawing/painting/sculpting implements, and anything else where you've found the physical medium allows you some control over content that a keyboard and mouse doesn't.

late policy

Deliverables need to be turned in on time and according to instructions to allow marking, feedback and collaboration / peer review with your team and classmatees to proceed smoothly. Please familiarize yourself with the class rhythm and adhere to it.

Late deliverables (reading questions, assignments/labs, project blog posts and other project deliverables) will be reviewed as possible, but will suffer a subtantial late penalty:

  • reading questions: no credit given for late emails; marked down for not following instructions on format that allows efficient filtering
  • assignments/labs and project blog posts: immediate 10% reduction, increasing by amount late
  • other project deliverables: case by case. If there's a problem, clear it with instructor ahead of time.

This is a highly participatory and project-oriented course. Final distribution of credit (adjusted slightly at end of term to more accurately reflect effort distribution observed by instructor, as well as appropriate representation of merit of project-related contributions.).


assigned readings & discussion questions [individual] --- 1-2 papers are assigned for reading for each leacture. Students must complete the readings before class and send written questions/comments to the instructor PRIOR to class. (details)

15% assignments and labs [indiv & group] --- several deliverables during first half of course.

team project [group] --- the iterative design project (several phases) will be a primary activity throughout the course, and replaces a formal final exam. Time in and outside of class is available for progress checking and consulting with the instructor. The group project mark includes a variety of components, including both the content of what was done, end-term report and presentation, and management of work throughout the term. While a variety of approaches to the project may be taken (e.g. iterations that branch, or conversely build upon one another), marks will depend on:

  • originality and elegance of concept and approach
  • stretch and ambitiousness of explorations
  • progress over the term, according to criteria provided in class
  • adherence to progress milestones
  • timelieness and quality of interim deliverables
  • quality of final public presentation and demo
  • completeness and quality of final team-written report
10% personal project blogs [individual] --- individuals maintain personal blogs documenting their perspective and contributions to their team project. These blogs are assessed on a 4-level mark scheme and shared with the class.
5% peer evaluation [individual] --- teammates will assess your contribution to the project.














physical user interface design and evaluation 2015/16 W2 -- MacLean