Labs

AssignmentPrelab?Supporting FilesDue Dates (all times EDT)
Lab 0 None! Intro Video
CCS Install Instructions
blink.c
Lab 0 Demo template
Signoff due: Tue, 9 Jun by 7pm
Report due: Wed 10 Jun by 11:59pm
Lab 1 See assignment Intro Video
State machine example
Lab template
Signoff due: Tue, 23 Jun by 7pm
Report due: Wed, 24 Jun by 11:59pm
Lab 2 See assignment Intro Video
Demo Video
Lab 2 template
Decoder example
Stopwatch example
Phase 1a & b: Thurs. 2 Jul by 11:59pm EDT
Phase 2 & 3: Sun, 13 Jul by 11:59pm EDT
Report: Sun, 13 Jul by 11:59pm EDT

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. We will also need a few more small and cheap components for later labs–details on these will be available at a later date.

Please purchase the listed components for the start of class. You can order them from one of the vendors listed (either Digikey or Mouser), which are both reliable electronics distributors. If you can, please try to order the parts so you have them in time for the first week of class, but do not worry if this is not feasible–there is no need to pay for express shipping.

If you have questions on ordering parts, or if ordering these components problematic for you, please feel free to contact the instructor. If cost is a problem, let us know–we can help.

  1. TI MSP430F5529 USB Launchpad Evaluation Kit (MSP-EXP430F5529LP) (Info)
    Order from: [Digikey] [Mouser]
    Approx. Cost: ~$15
    This is a small development board containing the MSP430 microcontroller we will use. For our labs, we will connect additional peripherals to this board for each lab. 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 instead of buying another.
  2. Sharp 128x128 LCD and microSD TI BoosterPack (BOOSTXL-SHARP128) (Info)
    Order from: [Digikey] [Mouser]
    Approx. Cost: ~$30
    This module adds an LCD display to our development board. If you already have the older 96x96 version of this module that was used in previous vesions of the course, you can use the 96x96 version instead.
  3. A small electronics kit (Example: Elegoo Upgraded Electronics Kit) (Info)
    Order from: [Amazon]
    Approx. Cost: ~$18
    Starting with Lab 2, you will need a few small components typically used for prototyping (a breadboard, some wires, etc). The kit listed here is fairly inexpensive example that contains everything we will need and more. If cannot easily order this kit, or if you already have some of the components and want to purchase what you may be missing, see this page.
  4. (Optional, but highly recommended) An inexpesive digital multimeter (Info)
    Order from: [Amazon] [Amazon]
    Approx. Cost: $10-$30
    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

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!