Skip to main content

Introduction to Haptics

Enrollment is Closed

UPDATE: This course will be re-offered as a self-paced class in 2014! See the new course website ( for details.

About This Course

Students in this class will learn how to build, program, and control haptic devices, which are mechatronic devices that allow users to feel virtual or remote environments. In the process, students will gain an appreciation for the capabilities and limitations of human touch, develop an intuitive connection between equations that describe physical interactions and how they feel, and gain practical interdisciplinary engineering skills related to robotics, mechanical engineering, electrical engineering, bioengineering, and computer science. We will send each student a free Hapkit to be assembled, tested, and programmed at home. Laboratory assignments using Hapkit will give students hands-on experience in assembling mechanical systems, making circuits, programming Arduino-based micro-controllers, and testing their haptic creations. After the class, we hope that you will continue to use and modify your Hapkit, and let us know about your haptic creations.

Limited Enrollment

Enrollment is limited to 100 students physically located in the US for this first offering, and an application (due Oct. 28 at 11:00 pm PDT) is required. If you click the "Register for Haptics" button above, you will receive a message that enrollment is closed. You must first complete the application to be considered for this offering. If your application is accepted, you will receive an email invitation to join the course by Oct. 31, 2013. Please note that Hapkits will be distributed to students after they complete the first week's assignment.


The required background for this course is high-school physics (non-calculus is fine) and pre-calculus. Programming is experience is helpful, but not required. Haptic device design, robotics, and mechatronics experience are not required -- this is designed as a gateway course for these topics.

Course Staff

Allison Okamura (Instructor and Hapkit co-designer)

Allison is an associate professor in the Stanford University mechanical engineering department and (by courtesy) computer science department. She is the director of the Collaborative Haptics and Robotics in Medicine (CHARM) Laboratory. Allison creates robots and human-computer interfaces that use haptics (the sense of touch) in order to improve human health, safety, and quality of life. She and her students study applications of haptic technology in robot-assisted surgery, prosthetics, rehabilitation, simulation and training, space teleoperation, and education. Allison is committed to sharing her passion for research and discovery, using robotics and haptics in outreach programs to groups underrepresented in engineering. Outside academia, she enjoys spending time with her husband and two children, running, and playing ice hockey.

Tania Morimoto (Principal Designer for Hapkit)

Tania is a graduate student in the mechanical engineering department at Stanford University. She received her bachelor’s degree from the Massachusetts Institute of Technology in 2012. She is a 2013 National Science Foundation Graduate Fellow. Her research interests are educational haptics and personalized medical robotics for minimally invasive surgery. Tania was the principal designer of Hapkit.

Paulo Blikstein (Hapkit co-designer and course content contributor)

Paulo is an assistant professor at Stanford University’s school of education and (by courtesy) computer science department. His research focus is on the confluence of expressive technologies for learning and critical pedagogy. He adapts cutting-edge technologies for use in inner-city schools, such as computer modeling, robotics, and rapid prototyping, creating constructionist learning environments in which children learn science and mathematics by building sophisticated projects and devices. His research interests also include the applications of complexity sciences in education and computational literacy, particularly the new knowledge representation infrastructures emerging from the use of computational representations.

We would also like to thank the many students and collaborators who have exchanged ideas with Allison about haptics education in the past (including Katherine Kuchenbecker, Will Provancher, Jake Abbott, Karon MacLean, Blake Hannaford, and Mark Cutkosky), as well as people who contributed to the design of Hapkit and previous versions of Stanford's Haptic Paddle (including Mark Cutkosky, Jesse Dorogusker, Chris Richard, Marlo Kohn, Danya Volkov, Ian Connolly, Kunal Chawla, Matthew Weber, Zhan Fan Quek, Nick Colonnese, Ann Majewicz, Darrel Deo, Melisa Orta, Lester Su, Alexander Miller, Robert Webster, Jenna Gorlewicz, William Provancher). This course is supported in part by the Stanford University Office of the Vice Provost for Online Learning, the Stanford University School of Engineering, and the National Science Foundation.

Frequently Asked Questions

What kind of computer do I need?

You need a computer both to access videos/quizzes/assignments on this site and to control your haptic device. Just about any computer with a USB port should suffice. We can provide support for setting up the Arduino software on a Mac or Windows-based PC, but if you want to use Linux you are on your own.

Do I need to buy a textbook?

There is no textbook; we will provide or give you links to any documents that you need to read.

Are there any other materials I need?

You will need a ruler and a small flathead screwdriver (the type you can get in a jewelers screwdriver set). We will provide all the other tools you need to assemble your Hapkit and complete the laboratory assignments. (Hapkit assembly does require allen keys, which will be provided as part of the kit.)

Can I keep my Hapkit at the end of the course?

Since this is the first time we are trying out the Hapkit in a class, it is free for you, and you may keep it at the end of the course. We hope you'll keep using it and share your haptic creations with the world!

What is the course schedule?

Each week, students will view online lectures, take online quizzes (interspersed with the lectures), and complete a laboratory assignment. Data for each lab assignment will be submitted online. This is not a self-paced course; students need to complete quizzes and assignments on a weekly basis. Note that the first week's assignment must be completed before we will mail each student his or her Hapkit.

Week 1: Nov. 4 Introduction to haptic technology and human haptics
Week 2: Nov. 11 Hapkit mechanical design and assembly
Week 3: Nov. 18 Hapkit mechatronics
Break (Week of Nov. 25 is Thanksgiving break)
Week 4: Dec. 2 Programming virtual environments
Week 5: Dec. 9 Mechanical characterization and simulation

How will I be graded?

The pass/fail grade will be based on your quiz responses and submitted laboratory data. 30% of the grade is based on the quizzes and 70% is based on the laboratory assignments. To receive a "Statement of Accomplishment" for this course (i.e., a passing grade), you must receive a score of at least 70%.

Hapkit photos © 2013 Megan Chiou.

  1. Course Number

  2. Classes Start

  3. Classes End

  4. Estimated Effort

    Expect to spend 5-10 hours per week on this class, including watching videos, taking quizzes, and completing lab assignments
  5. Price