Embedded computing devices such as smartphones, wearables, and IoT devices have overtaken PCs as the predominant platform for computation and communication with billions of devices in use. The shift to the embedded platform has brought with it a host of new challenges. Embedded devices have severely constrained energy capacity, their network connectivity is exclusively provided by unreliable bandwidth-constrained wireless links, they carry a standard set of sensors that are seemingly insufficient for certain applications and also can inadvertently leak private information about their users. Also, embedded devices are notoriously difficult to secure because they lack hardware security primitives.
In this course, we will discuss research that addresses the challenges introduced by the mobile platform by inspecting the blurry lines between electrical engineering and computer science.
As with many other research seminars, the course will be predominately a discussion of a set of research papers. However, we will also discuss the origins of these research projects, the impact that they had on the research community, and their impact on industry (spoiler alert: the impact on industry generally is hard to predict). The course will also include a quarter-long project that will result in a draft of a conference-style paper.
Students must have taken an undergraduate systems course, either networking or operating systems. Some experience with embedded systems (e.g., Arduino hacking) and wireless communication (e.g., Software Defined Radios such as the RTL-SDR) is preferred.
If you would like to quickly spin up on embedded systems, read the following chapters from MIT's 6.02 course from MIT OpenCourseWare: 4, 10, 14, 15. Read the following chapters in "Introduction to Embedded Systems" by Lee & Seshia: 7, 8, 10, 17
If you are taking the course for full credit (4 credits - letter grade), grading will be based on the following breakdown: Individual or group project (50%), paper notes and discussion lead (25%), and class participation (25%).
If you are taking the course for partial credit (2 credits - pass/fail), grading will be based on the following breakdown: paper notes and discussion lead (50%) and class participation (50%).
Your discussion notes should serve the following two purposes: as a quick reference guide for the paper and as an outline of the discussion that you will lead in class.
You should answer the following questions about the paper for the quick reference guide:
Your discussion-lead notes should consist of a list of the questions that you plan to use to seed the in class discussion.
Day | Topic | Preparation for class |
---|---|---|
Week 1: Introduction to emdedded and mobile research | ||
Th Sep 26 | Introduction Lecture | Slides |
Week 2: How it all started | ||
Tu Oct 1 | Defining Ubiquitous (and Mobile) Computing |
1. The Computer for the 21st Century 2. Some Computer Science Issues in Ubiquitous Computing |
Th Oct 3 | IoT and Class Projects |
1. The Internet of Things 2. Discuss project ideas idea selection due next Tue. (Oct 8) |