Instructors
Name | Office Hours |
---|---|
Prof. Bernhard Boser | Th 10-11am in 490A Cory |
Prof. Kameshwar Poolla | |
Thanh-Phong Nguyen | W 1-2pm in 293 Cory and F 1-2pm in 400 Cory |
Mahsa Sadeghi | M 1-2pm and Tu 1-2pm in 504 Cory |
Description
Design interfaces between the physical world and the internet using sensors, motors, and inexpensive microcontrollers.
Outline
Electronics has become pervasive in our lives as a powerful technology with applications in a wide range of fields including healthcare, home automation, environmental monitoring, robotics, or entertainment. This course teaches how to build electronic circuits that interact with the physical world through sensors and actuators and communicate wirelessly with the internet to cooperate with other devices and with humans. In the laboratory participants design and build representative samples such as an autonomous solar weather station and robots that exchange information with and are controlled from the cloud.
Learning Outcomes
- To use and program low-cost and low-power microcontrollers for sensing, actuation, and information processing, and find and use program libraries supporting these tasks,
- Represent information with voltage, current, power, and energy and how to measure these quantities with laboratory equipment,
- Basic circuit analysis (Ohm's and Kirchhoff's Laws),
- Use electronics to sense and actuate physical parameters such as temperature, humidity, sound, light, and motion,
- Deploy electronic sensors and interface them to microcontrollers through digital and analog channels as well as common protocols (GPIO, I2C),
- Interface DC motors, steppers and servos to microcontrollers,
- Interact with the internet and cloud services using protocols and services such as MQTT, http, Blynk
- Design, build and test electronic devices leveraging these concepts.
Prerequisites
Familiarity with computer programming such as taught in E7, CS10, CS61A or DS8. The course uses the Python programming language.
Laboratory & and Project
In the laboratory and course project you apply the concepts taught in the lecture to representative applicaitions. Completing the laboratory assignments is mandatory for passing the course
Grades & Exams
- The midterm is in-class. Notify the GSI by the end of the second week of classes if you have a conflict for the midterm or final exam or if you need special accommodations.
- Scores are kept on bCourses. Please check regularly for accuracy and notify the GSI of any errors or omissions within two weeks of posting.
- Your grade will be computed from a weighted average of
- Labs (30%)
- Project (25%)
- Homework (15%)
- Quizzes (10%)
- Midterm (20%)
- The lowest homework and quiz scores will be omitted from grade calculation to account for absences, birthdays, bad days, and other realities of life.