AssignmentPrelab?Supporting FilesDue Dates (all times EDT)
Lab 0 None! Intro Video
Puzzles Demo
CCS Install Instructions
Lab 0 Demo template
Signoff due: Mon, 7 Jun by 7pm EDT
Report due: Tues, 8 Jun by 11:59pm EDT
Lab 1 See assignment Lab group survey
Intro Video
State machine example
Lab template
Prelab: Thurs, 10 Jun by 11:59pm EDT
Signoff: Mon, 21 June by 7pm EDT
Report: Tues. 22 June by 11:59pm EDT
Lab 2 See assignment Intro Video
Demo Video
Lab 2 template
Decoder example
Stopwatch example

Lab materials

For each lab, we will be assembling our own hardware platform from a set of components. The following list contains the core components we will use in the labs.

Please purchase the listed components for the start of class. You can order them from one of the vendors listed (eg. Digikey, Mouser), or another vendor that works for you. If you can, please try to order the parts so you have them in time for the first week of class.

If you have questions on ordering parts, or if ordering these components problematic for you, please feel free to contact the instructor.

  1. TI MSP430F5529 USB Launchpad Evaluation Kit (MSP-EXP430F5529LP) (Datasheet)
    Order from: [Digikey] [Mouser]
    Approx. Cost: $15
    This is a small development board containing the MSP430 microcontroller we will program for our labs. This is the standard “Launchpad board” typically used in ECE2049: if you already have a launchpad from a previous version of the course, you can use it here.
  2. Sharp 128x128 LCD and microSD TI BoosterPack (BOOSTXL-SHARP128) (Datasheet)
    Order from: [Digikey] [Mouser]
    Approx. Cost: $30
    This module adds an LCD display to our development board. Earlier versions of this course (C20 and earlier) used a similar 96x96 display–if you have this version, you can use it instead.
  3. Some small electronics components (Parts list)
    Either: Order a complete kit (Such as this one: [Amazon]) OR supplement an existing lab kit with parts from the list
    Starting with Lab 2, we will use few small components typically used for prototyping (a breadboard, some wires, etc). There are many ways to obtain these components. The example kit listed above contains everything we will need and more. If you already have an ECE/RBE lab kit, you may already have some of these materials–if so, check your kit against the list of parts and order what you need. For more details, see the parts list.
  4. (Optional, but recommended) An inexpesive digital multimeter
    Order from: [Amazon] [Amazon]
    Approx. Cost: >= $10
    We highly recommend you have a cheap digital multimeter on hand for debugging your circuits in later labs. Two examples are provided below, but any multimeter is sufficient.

Working on the labs

You will work on the labs during your scheduled lab section and on your own time. At the start of the lab section, the course staff will introduce the lab and discuss some important points about how to implement it. It is highly recommended that you attend your lab section to receive this information and so you have the chance to ask questions.

Our labs utilize the MSP430 development environment provided by Code Composer Studio (CCS). For instructions on how to install CCS on your computer, please see the install instructions.

Lab “signoffs”

In an in-person version of the course, we typically ask students to demonstrate their lab to the course staff for a signoff. We find that in-person signoffs are a good way to talk with you after the lab and hear about your experience and any questions you may have. This term, we offer two options for signoffs:

If it is feasible for you, we ask that you come to office hours or schedule a time with us to meet on Discord for a “real-time” signoff. During this time, we will ask you to share your screen and talk about your work. We are happy to schedule signoffs (or any other meetings) at other times outside normal office hours–just ask!

Submission guidelines

All labs have two separate deadlines: one for the completion of all signoff components, and one for completion of the report.

Signoff deadlines

You may acquire signoffs for portions of the lab during your schedule lab time or during office hours. If you need a signoff outside these times, please contact the course staff to set up an appointment and we will do our best to accomodate you. After the signoff deadline, you may not receive signoffs for other portions of the lab–the goal of this is so that you can focus on writing a good lab report.

Report deadlines

Lab reports are submitted electronically using Canvas. Your submission will include a copy of your report, and an archive of your code for the lab. Instructions on how to package your code for submission are included in the lab 0 assignment.

Late policy

See Late and Absence Policies.

Lab report guidelines

See each assignment for details on what you should include in each report. Also, make sure you answer all of the questions asked in the assignment!

You can view an example lab report here. Note that this report provides an example of the general structure and content you should include–you do NOT need to copy its exact formatting!

Example Survey

Want to help us understand how students write embedded code, and receive bonus points? If you encounter a bug, solution, or other aspect of the program that you think is interesting, please submit it using the Code Examples Survey.

For each submission, you will receive 5 bonus points added to the lab used for the example, up to 10 points per lab, starting with lab 1.

If you find more than 2 interesting examples per lab, you are still encouraged to submit them!