17-422/722,05-499/899, Spring 2021: Building User-Focused Sensing Systems

Latest Announcements

3/17: Moving Courses Online!
Changes to the Course for the rest of the semester
3/5: Assignment A3 Assigned! (Due 3/31)
Sensing and Machine Learning

See all announcements
RSS 2.0 feed

NOTE: We are using Canvas for the SPRING 2021 Semester and this page is **OUT OF DATE**
We will auto-redirect you to in 10 seconds.


These days we are surrounded by sensing and computation. Smart devices, such as smartphones, smartwatches, are packed with sensors. While they are already very useful devices, we have only started to scratch the surface here. The aim of this class will be to introduce the students to building and understanding smart sensing devices. The course will include discussion into contribution of various fields, including human-computer interaction, embedded computing, computer vision, distributed systems, machine learning, signal processing, security, and privacy. We will discuss how these various disciplines are coming together to form an end-to-end system that generates useful and user-actionable data.

In this course we will take a hands-on approach towards building and evaluating these systems. The students will gain practical experience in developing sensing systems in different application domains, such as activity recognition, health sensing, gestural interaction, etc. You will learn about embedded systems and understand the advantages and limitations of different platforms. You will learn about sensors and how to interface them with the real world to be able to get useful and actionable data. You will learn how to build a network of sensors that can communicate with each other. You will also learn about storing the sensor data for visualization, analysis and presentation both locally and to the cloud.

The course will be a combination of lectures, tutorials, class discussions, and demonstrations. Students will be evaluated based on 3 (3.5 actually) mini-projects/assignments, class participation, weekly reading summaries, and a final project. All hardware resources will be provided to the students and they will be given an option to take their final prototypes with them for the cost of the hardware components.

Course Staff


NameEmailOfficeOffice HoursZoom Links
Mayank Goel TCS 3xx TBD OH Link
Yuvraj Agarwal TCS 327 TBD OH Link

Teaching Assistants

NameEmailOfficeOffice HoursZoom Links
Karan Ahuja TCS 235 TBD OH Link

Course Secretary

Jennifer Cooper TCS 3xx

Office Hours

See individual course staff entries above.


The only requirement for the class is that the students should have reasonable programming experience and an interest in tinkering. Please email Mayank if you are unsure whether the course matches your interests and experience.

Course Policies


Students are encouraged to talk to each other, to the TAs, to the instructors, or to anyone else about any of the assignments. Any assistance, though, must be limited to discussion of the problem and sketching general approaches to a solution. Each student must write out his or her own codes to the homework.

Consulting another student's or group's solution is prohibited, and submitted solutions may not be copied from any source. These and any other form of collaboration on assignments constitute cheating. If you have any question about whether some activity would constitute cheating, please feel free to ask the instructors.

You may not supply work that you complete during 08-735/421 to other students in future instances of this course or for use in future instances of this course (just as you may not use work completed by students who've taken the course previously).

Piazza Policy

This course uses the Piazza web site for answering questions. The home Piazza page for this course is at: https://piazza.com/class/k5ijeyq0tf46mx. When posting questions on Piazza, students must keep in mind the collaboration guidelines noted above, and use those guidelines to determine:

Part of the learning process is struggling with the material until you arrive at the right insight for you to understand it. Posting too much detail in response to a request for assistance can impair learning. On the other hand, sometimes it's great to be nudged in the right direction when you're not able to get out of a rut. And, of course, misunderstandings of the assignment or tools available should be helped rapidly. Please use your best judgement when posting to the Piazza site, as if you were collaborating with your friends in person. A few rough guidelines:

Please use your judgement between these two examples. If you post privately, please let us know whether or not it would be OK to mark the post public if we feel it would be beneficial to the class to make it public.

Submitting your work

Late Policy

Take project and homework deadlines seriously. Our experience is that students often seriously underestimate the effort involved in programming assignments and projects. If we give you 4 weeks to complete an assignment, there is typically a reason. In the interest of fairness, we have adopted the following late policy:


If you think we made a mistake in grading, please consult the instructors or TAs with a note explaining your concern via e-mail or private Piazza post no later than two weeks after the day the assignment was returned. We will have the question re-graded by the person responsible for grading that question.

Also, in this course, do not forget to demo your assignment to instructures.


The course staff in 08-735/421 strongly encourage participation and asking questions during lectures, and to attend our office hours and interact there. Therefore, to protect the privacy of your fellow students, no audio or video recordings may be made of the class without the prior permission of the instructor. If the course staff make audio or video recordings of the course, we will notify the course before such recordings are made (and will make it extremely obvious because there will be a big camera in the back of the room...).

Partner Problems

Please try to avoid having partner problems. Seriously! Share your hopes before they turn into concerns, your concerns before they have problems, and your problems before they inflate into crises.

Also, in order for the course staff to help you and your partner work through issues, or for us to provide an appropriate response to serious partner problems, you must contact us well before the relevant due date! While some problems can never be truly solved, it is likely that your career after CMU will you to sometimes "involve management" to address issues with co-workers, and will certainly require you to work out all sorts of problems with your co-workers. If you find yourself in a situation which you can't resolve, it will provide you with an opportunity to practice interacting with management.

A special case to avoid is coming to us a day or two before a major deadline to tell us that your partner has been ill (etc.) for multiple weeks. We, and thus you, have many more options if you inform us while a problem is developing, instead of after the fact.

Take care of yourself

Do your best to maintain a healthy lifestyle this semester by eating well, exercising, avoiding drugs and alcohol, getting enough sleep and taking some time to relax. This will help you achieve your goals and cope with stress.

All of us benefit from support during times of struggle. You are not alone. There are many helpful resources available on campus and an important part of the college experience is learning how to ask for help. Asking for support sooner rather than later is often helpful.

If you or anyone you know experiences any academic stress, difficult life events, or feelings like anxiety or depression, we strongly encourage you to seek support. Counseling and Psychological Services (CaPS) is here to help: call 412-268-2922 and visit their website at http://www.cmu.edu/counseling/. Consider reaching out to a friend, faculty or family member you trust for help getting connected to the support that can help.

If you or someone you know is feeling suicidal or in danger of self-harm, call someone immediately, day or night:

CaPS: 412-268-2922
Re:solve Crisis Network: 888-796-8226

If the situation is life threatening, call the police:

On campus: CMU Police: 412-268-2323
Off campus: 911

Last updated: 2021-03-08 10:38:47 -0500 [validate xhtml]