Syllabus: ECE445L Embedded Systems Design Lab -- Fall 2026

Last updated: August 22, 2026  


Grading

Office Hours

Schedule

PCB Production Schedule

Class, Office and Lab Rooms

 


Teaching philosophy I am here to teach you about embedded systems. I am also here to share my experiences about what it is like to be an engineer. I have over 50 years of experience designing, building and testing medical devices and embedded systems. I strongly encourage students to attend all the lectures and take an active role in this class. Questions are always welcome before, during and after class.  Please feel free to email, visit or call me if you have questions.  You will find out that I am very accessible. 

My video recording philosophy: Dr. McDermott and I have over six years of experience with "Zoom" learning. Those students that did not attend the lectures or office hours and only watched recordings did poorly on ALL 3 exams!  That said, I do not record my lectures anymore.  I personally want you to become great engineers. To do so, you have to actively participate in person. I want you to attend all of the lectures, ask lots of questions and come to my office hours if you have any additional questions.


Course Catalog Description: Design of microcontroller-based embedded systems; interfacing from both a hardware and software perspective; and applications, including audio, data acquisition, and communication systems.

Course Specific Objectives of ECE445LThe primary objective of ECE445L is for the students to develop the ability to design microcomputer-based embedded systems. This class allows students to learn microcomputer interfacing from both a hardware and software perspective.

Professor's Specific Objective for the Course: My objectives for this course is for the software centric students to become proficient with hardware and the hardware centric students become proficient with software such that when you are in industry you make more money than those students who elect to be isolated in their comfort zone be it SW or HW. 

Outcomes: After the successful conclusion of ECE445L, students should be able to design embedded systems including hardware/software interfaces for devices like LCD displays, motors, keyboards, analog sensors, and microphone/speakers.

Attendance: Students are expected to attend all of the lectures in person. The book covers way more information than the class can cover and we will use lectures to map our way through the book. If you do not attend the lectures in person you may find it difficult to catch up. DO NOT assume that you can watch previous (ancient) recordings and do well in this class.

Once again, please attend all of the lectures, ask lots of questions and come to my office hours if you have any additional questions.

 


Prerequisites: All with a grade of C- or better.

  Programming: ECE312 or ECE312H or ECE412 or ECE412H;
  Microcontrollers: ECE319K or ECE319H or ECE419K or ECE419H;
  Circuits: ECE411 or ECE411H or BME343 or ME348E;
  Transforms: ECE313 or ECE313H or BME311
  Writing   BME333T or ECE333T or ME333T (credit or registration)

 

Note to ME/Robot minor students:

If your C programming skills are excellent, and you did well in ME340 and ME348E, then you should perform well in ECE445L. Conversely, if your C programming skills are poor, then ME students do very poorly in ECE445L. We strongly recommend ECE319K prior to ECE445L. However, if robot minor students have not had ECE319K, please complete ECE319K Labs 2, 5, and 7  prior to starting ECE445L. Don't worry about the ECE319K auto-graders, just build the hardware, write/debug code. For ECE319K  Lab 7 don't worry about the LCD, just sample the ADC using interrupts and calculate distance from the ADC sample.

 


Grading   

Assignment

% Date Notes

Quiz 1

15%

Thursday, 10/1, 15:30 - 16:45

 Closed book, no crib notes, in class, in person, no Zoom

Quiz 2

20%

Thursday, 11/5, 15:30 - 16:45

Closed book, no crib notes, in class, in person, no Zoom

Final

25%

Saturday, December 12, 1:00 PM - 3:00PM

Closed book, no crib notes. Room TBD, in person, no Zoom

Laboratory

35%

See below

 A larger grading weight is applied to the laboratory assignments for Labs 7A, 7B and 10

Teamwork

5%

 

Team dynamics and team participation is critical to the success of any project in school and in industry. If you are not a team player, then you should take another course.

 

When studying for quizzes, focus on the topics that apply to the ARM Cortex M and the lab assignments. You will find old quizzes and finals with solutions on the class web site or on Canvas. I have no expected grade cutoffs or expected GPA for this class. You can view the previous GPAs for most of your classes at UT. All professors want a 5/5 on their teaching evaluation, and all students want an A. Just like Dr. McDermott, I feel both the instructor and the student should only be awarded for excellence.

 


Instructor: Jonathan Valvano

Email

Office: EER 5.820

Office Hours:
     Mon 11-12,
     Tue 13-15,
     Thur 13-15, and
     Fri 11-12.
Check Canvas for the latest office hours.

NOTE: There is a direct correlation between attending office hours when you have questions and getting higher grades on the exams.

Classroom: BUR 108  Tue/Thu  15:30 - 16:45 

Lab Room: EER 1.806

 


Text (either print or electronic is OK):
    print: Real-Time Interfacing to Cortex M Microcontrollers, ISBN: 979-8192301272
    ebook: Real-Time Interfacing to Cortex M Microcontrollers,


TA's Office Hours:

See Canvas for details.

Lab Sections

Unique

Day

Time

TA

18790

MW

10:30 - 12:00

Avery Atchley

18795

TTH

11:00 - 12:30

Harish Eakambaram

18800

TTH

12:30 - 2:00

Preston King

18805

TTH

14:00 - 15:30

Toby Nguyen

18810

MW

15:00 - 16:30

Travis Beach

18815

MW

17:00 - 18:30

Samuel Tamayo

18820

TTH

17:00 - 18:30

Harish Eakambaram

18824

MW

12:00 - 13:30

Avery Atchley

 

 


 

Specific ECE419K topics needed for ECE445L:

LED interface, switch interface, busy-wait synchronization, serial communication concepts (start bit, data bits, stop bit, baud rate, bandwidth), UART programming, analog to digital conversion (range, resolution, precision, accuracy), ADC programming, digital to analog conversion (range, resolution, precision, accuracy), interrupt concepts (arm, enable, acknowledge, vector), Output compare interrupt programming.

Specific ECE412 topics needed for ECE445L:

Modular programming, differences between pointers and numbers, when to use permanent allocation and when to use temporary allocation, definitions of char, short and long, understanding and use of static, const and volatile,  understanding call by value versus call by reference, stack frames, structures, linked lists, fifo queues, verification. The most important component students must be able to accomplish is the translation of a problem statement into software code. The second most important skill we expect students to have is the ability to debug software. 

Specific ECE402/ECE411/EE313/ECE438 topics needed for ECE445L:

RLC circuits, NPN and PNP transistors, input impedance, output impedance, linear amplifiers using op amps, oscilloscopes, sampling, frequency response, Bode Plots, Fourier Transform, spectrum measurements.

Microcomputer Architecture (ECE419K review)

An introduction to the microcomputer, architecture, The Cortex M0 Instruction Set, Cortex M0 Addressing Modes, I/O and Memory Organization and the memory map of the MSPM0.

 

Programming Microprocessors (ECE412 review)

Data Structures in C (arrays, tables, linked lists, stacks, and fifo queues), Writing Quality Programs in C, Passing Parameters (Conceptual and Implementation Levels), Modular Programming, Verification and Testing, Documentation

 

Microcomputer Bus Interfaces

Digital Hardware, Modules and Signals, Drivers, Registers, Timing equations, Timing diagrams,

 

Parallel and Serial Input-Output

MSPM0 Parallel I/O Devices,  Device Driver Software, Buffered Input and Output,  Table and Linked List Interpreters, MSPM0 Synchronous and Asynchronous Serial Input-Output, Synchronization in I/O devices, Blind-Cycle Synchronization, Busy-Wait Synchronization, Interrupt Synchronization, Polled Interrupts, Vectored Interrupts, Interrupt Priority

 

Parallel Port Interfaces

Keyboards, Key Debouncing, Keyboard Scanning Techniques, LED Scanning Techniques and LCD Interfacing

 

Data Acquisition Systems

Bridge circuits, op amps, low pass filters, instrumentation amplifiers, DAC, ADC, audio amplifiers

 

Motor interfacing

Stepper motors, DC motors, pulse-width modulation, proportional-integral (PI) control


Equipment to buy:

1) Board

Every student will be required to have a Texas Instruments MSPM0 LaunchPad by Friday August 29th. Since we will be using the MSPM0 kit in ECE402/ECE319K/ECE445L/ECE445M for a few years, you will have the option of selling it at the end of the semester. The LP-MSPM0G3507 LaunchPad is available at the University Coop. Put your name on the following page to get a notification when it is ready. LaunchPad at the University Coop. We have been using the MSPM0 board in ECE319K for many years, so you might be able to find one used. If you do purchase a used microcontroller board, ask a TA or me to run the board tester to make sure all the pins work. If it still works at the end of the semester, you will be able to sell this board to students in the next semester.

 

2) LCD

Each group of two students will need to a LCD graphics display. We will be using Sitronix ST7735R 18-bit color 1.8" TFT LCD display for $20 plus shipping, http://www.adafruit.com/products/358   If you want a lower cost version you could order it from China (search ST7735R on Amazon or  EBay). ECE445L has a design competition where students build embedded system. Using the same LCD for labs and for the project will save you time. Just like the microcontroller board, you will have the option of selling the Sitronix LCD to students next semester.

 

3) Breadboard.

You will need a solder-less breadboard. We strongly recommend you do not buy used or borrow a breadboard, because as the breadboards get old they fail in mysterious and extremely annoying ways (shorts and opens).  The Twin Industries TW-E40-1020 is a breadboard that is easy to find. You can find it for sale on the internet by searching https://octopart.com/search?q=TW-E40-1020   Any breadboard, any size will be OK. Another approach is to search "solderless breadboard" on amazon.com or ebay.com

 

4) Wire strippers and voltmeter.

You will need own your own pair of wire-strippers and a digital multimeter. You will be stripping a lot of 22 or 24 gauge wire as you build the interface circuits. Your meter must be able to measure voltage and resistance, so a meter costing around $20 will suffice.  Since you will be making hundreds of solder joints this semester, we suggest you use the high-quality irons available on the first floor. 


LAB Safety warnings:

Due to the minute amounts of lead in most solder, please wash your hands after soldering, before eating or drinking.

If you drop the soldering iron, let it fall to the ground. Do not try and catch it.

If you are pregnant or think you might be pregnant, have someone else do the soldering!!


 

Lab Partners:


ECE445L Lab Sessions (see your TA for the latest information).

 


Lecture & Lab schedule: (NOTE: This is the master Lecture & Lab schedule)

 

LECTURES

LABS

Week

Date

Day

TOPIC

Lectures 

1st Lab Session

2nd Lab Session

Friday

LAB Comments

1

8/25

Tue

Introduction to ECE445L

Intro to Embedded Systems

Lec01

Lec02

 

 

Buy MSPM0 and LCD

by August 28th. 

Meet the TA this week

 

Get started on Lab 1
Install CCS21.0


Test the LaunchPad

8/27

Thu

ARM Cortex M architecture, MSPM0

Fixed-point

 

Lab1 Overview

Lec03

Lec04

 

 

2

9/1

Tue

Interrupts

Debugging techniques

Lec05

Lec06

 

Lab 1 Prep

Partners

selected

Demonstrate debugging techniques

Kicad (SCH) demonstration 

9/3

Thu

Nyquist Theorem and CLT

Introduction to Data Acquisition Systems

ADC Conversion Techniques

 

Lab2 Overview

Lec07

Lec08

Lec09

 

 

3

9/8

Tue

Edge-triggered interrupts
Graphics

Critical Sections, reentrant code

Lec10

Lec11

Lec12 

1 Demo

2 Prep

1 Report

Oscilloscope demo

9/10

Thu

BJT/MOS transistor interface

HW/SW synchronization

 

Lab 3 Overview

Lec13

Lec14

 

 

4

9/15

Tue

Internet, Wireless communication, client server, WiFi

Lec15

2 Demo

3 Prep

2 Report

Logic analyzer demo

 

9/17

Thu

Internet of Things (IoT), Smart Objects

CC3100 Weather Monitor Example

ESP8266 Weather Monitor Example

 

Lab 4 Overview

Lec16

Lec17

Lec18

 

 

5

9/22

Tue

Sound Generation

Audio amplifiers

SPI interface & timing analysis

Lec19

Lec20

Lec21

3 Demo

4 Prep

3 Report

Spectrum analyzer demo

9/24

Thu

DAC fundamentals

DAC performance measures

 Quiz #1 Review

 

Lab 5 Overview

Lec22

Lec23

 Quiz_1_Review

 

 

6

9/29

Tue

Transducers: Sensors & Actuators

Operational Amplifiers

 

Lab 6 Overview

Lec24

Lec25

 

 

 

 

4 Demo

 

5 Prep

 

4 Report

 

Project Teams formed 

 

10/1

Thu

 

Quiz #1

 

 

7

10/6

Tue

Introduction to PCBs

Lab 6 Demo

Lec26

Lec27

5 Demo

6 Prep

5 Report

KiCad (PCB) demo

10/8

Thu

Getting Started in Lab 7

Low power design, Regulators, Power Supplies

 

Lab 7A Overview

Lec28

Lec29

 

 

8

10/13

Tue

Specifications and software style

System level design, clock, power, packaging

Lec30

Lec31

6 Demo

7A Pre-Prep

6 Report

Video: Building a box in the Maker Space

10/15

Thu

SDC
File system using FAT16

Enclosures, connectors
Resistors, capacitors

Lec32
Lec33

Lec34
Lec35

9

10/20

Tue

Analog filters: HPF, LPF, 2-pole Butterworth LPF

Resistance bridge, instrumentation amplifier

Lec36

Lec37

 

 

 7A Prep

 

Rough draft

 

List of components

that have

been ordered 

 

10/22

Thu

Threshold detection

Input capture, period measurement

Temperature Acquisition

 

Lab 7B Overview

Lec38

Lec39

Lec40

 

 

10

10/27

Tue

DC  Motors, PWM,  Interface Electronics

Input capture, tachometer interface

Lec41

Lec42

7A Demo

7B Prep

7A Report

Upload SCH/PCB files to Canvas

for TA review by

9am Friday 10/30

10/29

Thu

Quiz #2 review

 

Lab 8 Overview

Quiz_2_Review

 

 

11

11/3

Tue

Control Systems

Control System Demo

 

Lab 9 Overview

Lec43

Lec44

 

 

7B Demo

8 Prep

7B Report

Final SCH/PCB files due on

 Canvas at 10am Tue 11/3

 

 

 

11/5

Thu

Quiz #2

 

 

12

11/10

Tue

Communication Theory,

Sound

FFT

Lec45
Lec46
Lec47

8 Demo

9 Prep

8 Report

 

11/12

Thu

BLDC, Servos, Stepper Motors

Stepper Motors

Lec48

Lec49

 

13

11/17

Tue

Real-time systems

Engineering Ethics

Lec50

Lec51

9 Demo

10 Prep

9 Report

 

11/19

Thu

Case studies

Lec52
Lec53

 

 

Thanksgiving Break  11/22 -- 11/27

 

 

 

 

14

12/1

Tue

 

Final exam review

 

Final_Review

10 Demo

 

 

10 Report

Turn in checked out equipment by Friday 12/4

12/3

Thu

Expo

 

 


PCB production schedule

- Rough draft due to the TA for review by Friday 10/30 @  9am on Canvas
- ATTENTION:  PCB files are due Tuesday 11/3 @ 10am on Canvas (if you miss this deadline you will have to pay for your own board)
- TA downloads files from Canvas and creates an XLS sheet
- PCB ordered on Tuesday 11/3 by 12 noon
- Boards received between 11/10 to 11/15
- For Lab 10 prep: All parts soldered and microcontroller ready to be programmed.

We will be using KiCad for the PCB design. Install the latest free version KiCad (do not spend any money). Download and install here: https://www.kicad.org

Bookmark this site, which has tutorials and videos:      https://www.kicad.org/help/learning-resources/        See TAs for how to install the 445L KiCad libraries.

 


Software applications:

To complete ECE445L labs it will take time outside of the 3 scheduled lab hours. It will be necessary for you to configure a development system on your laptop ( CCS21.0 and KiCad). For KiCad see ECE419K PCB camp The PuTTy application is optional. For PuTTY see http://www.putty.org/.


Hardware Components

Search engine for parts:    http://octopart.com/
Game engine:     http://www.3dgamestudio.com/
Hobby parts:    http://www.sparkfun.com/
Full line Suppliers:

      http://www.digikey.com/
      http://www.mouser.com/
      http://www.newark.com/

Put your embedded system in a box (not free, but a good source for choices)
    http://www.okw.co.uk/                     OKW Enclosures Ltd
    http://www.tekoenclosures.com/        Teko Enclosures Solutions
    http://www.pactecenclosures.com/     PacTec Enclosures


ABET Relationship of the Course to Student Outcomes: Bold applies to EE445L
     a. An ability to apply knowledge of mathematics, science, and engineering.
     b. An ability to design and conduct experiments, as well as to analyze and interpret data.
     c. An ability to design a system, component, or process to meet desired needs within realistic constraints such as economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability.

     d. An ability to function on multidisciplinary teams.
     e. An ability to identify, formulate, and solve engineering problems.
     f. An understanding of professional and ethical responsibility.
     g. An ability to communicate effectively.

     h. The broad education necessary to understand the impact of engineering solutions in a global, economic, environmental, and societal context.
     i. Recognition of the need for and an ability to engage in life-long learning.
     j. Knowledge of contemporary issues.
     k. An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

For more information see http://www.ece.utexas.edu/about

 


Legal Stuff: The 12th class day is Sep 9th. The drop policy is extremely complicated. See your academic advisor or the Dean of Students for more information. Course evaluation is conducted on the last class day in accordance with the Measurement and Evaluation Center form. The final exam is at the time and place stated in the course schedule. The University of Texas at Austin provides upon request appropriate academic adjustments for qualified students with disabilities. For more information, contact the Office of the Dean of Students with Disabilities at 471-6259, 471-4241 TDD.

Sharing of Course Materials is Prohibited: No materials used in this class, including, but not limited to, lecture hand-outs, videos, assessments (quizzes, exams, papers, projects, homework assignments), in-class materials, review sheets, and additional problem sets, may be shared online or with anyone outside of the class unless you have my explicit, written permission. Unauthorized sharing of materials promotes cheating. It is a violation of the University's Student Honor Code and an act of academic dishonesty. I am well aware of the sites used for sharing materials, and any materials found online that are associated with you, or any suspected unauthorized sharing of materials, will be reported to Student Conduct and Academic Integrity in the Office of the Dean of Students. These reports can result in sanctions, including failure in the course.

Religious Holy Days By UT Austin policy, you must notify me of your pending absence at least fourteen days prior to the date of observance of a religious holy day. If you must miss a class, an examination, a work assignment, or a project in order to observe a religious holy day, I will give you an opportunity to complete the missed work within a reasonable time after the absence. 


Policies for using artificial intelligence:

We know how engineers write reports. We do not award extra points for polished report writing. Therefore, a lab report written with polished technical writing will be a red flag to the TA. We will run lab code through a plagiarism checker. So if two students ask the same question to AI, get the same answer and both turn it in, it may be triggered as plagiarism. To be clear, we expect students to copy/paste code from the book or ECE445L web site (just reference the source).


Scholastic dishonesty: "Faculty in the ECE Department are committed to detecting and responding to all instances of scholastic dishonesty and will pursue cases of scholastic dishonesty in accordance with university policy. Scholastic dishonesty, in all its forms, is a blight on our entire academic community. All parties in our community -- faculty, staff, and students -- are responsible for creating an environment that educates outstanding engineers, and this goal entails excellence in technical skills, self-giving citizenry, an ethical integrity. Industry wants engineers who are competent and fully trustworthy, and both qualities must be developed day by day throughout an entire lifetime. Scholastic dishonesty includes, but is not limited to, cheating, plagiarism, collusion, falsifying academic records, or any act designed to give an unfair academic advantage to the student. The fact that you are in this class as an engineering student is testament to your abilities. Penalties for scholastic dishonesty are severe and can include, but are not limited to, a written reprimand, a zero on the assignment/exam, re-taking the exam in question, an F in the course, or expulsion from the University. Don't jeopardize your career by an act of scholastic dishonesty. Details about academic integrity and what constitutes scholastic dishonesty can be found at the website for the UT Dean of Students Office and the General Information Catalog, Section 11-802." 
 

You are encouraged to study together and to discuss information and concepts with other students. You can give "consulting" help to or receive "consulting" help from such students in oral form. However, this permissible cooperation should never involve one student having possession of a copy of all or part of work done by someone else, in the form of an email, an email attachment file, a portable storage device, or a hard copy. Copying of any part of a program is cheating without explicit reference to its source. We do enter lab assignments turned in by ECE445L students through a plagiarism checker, comparing them to assignments of this and previous semesters. If we find two programs that are copied, there will be a substantial penalty to both students, e.g., failure in the course. Students who cheat on tests or in lab will fail. Prosecution of cases is very traumatic to both the student and instructor. It is appropriate to use software out of the book, class website as long as all copy-pasted software is explicitly referenced. Copy-pasting software from current or past students is scholastic dishonesty.

 

Policies concerning the use of other people's software in this class:
    - I strongly encourage you to study existing software.
    - All applications and libraries must be legally obtained. E.g.,
        You may use libraries that came when you bought a compiler.
        You may use software obtained from the web.
        You may copy and paste from the existing source code.
    - You may use any existing source code that is clearly referenced and categorized:
        original: completely written by you,
        derived: fundamental approach is copied but it is your implementation,
        modified: source code significantly edited to serve your purpose,
        copied: source code includes minor modifications.

 

The University Honor Code is:

 "The core values of the University of Texas at Austin are learning, discovery, freedom, leadership, individual opportunity, and responsibility. Each member of the University is expected to uphold these values through integrity, honesty, trust, fairness, and respect toward peers and community."  http://registrar.utexas.edu/catalogs/gi09-10/ch01/


Emergency Preparedness and Emergency Plan Instructions
Please visite https://emergencymanagement.utexas.edu/ for detailed information. Every member of the university community must take appropriate and deliberate action when an emergency strikes a building, a portion of the campus, or entire campus community. Emergency preparedness means we are all ready to act for our own safety and the safety of others during a crisis. It takes an effort by all of us to create and sustain an effective emergency preparedness system. Your support is important to achieving the best possible outcomes during a crisis event.


Last updated: August 22, 2026