1 of 23

Lecture 1:�Introduction to �Embedded Systems

ENGR029

Spring 2026

Prof. Maggie Delano

2 of 23

Agenda

  • Introduction to Embedded Systems
  • Introduction to Course
  • In class exercise: Comparing Development Kits
  • Pick up supplies for Lab 0

3 of 23

About Me (and You)

4 of 23

Embedded Systems

Part of a complete device

Mechanical / Hardware

(Dedicated function)

5 of 23

Embedded systems examples

6 of 23

What about smart phones?

  • Are they / should they be considered embedded systems?��Processing power has improved, phones can play games that couldn’t be played on older computers��Touch screen and the display increases versatility, use lots of input/output devices��The “job” of a phone has gotten much more broad

7 of 23

Agenda

  • Introduction to Embedded Systems
  • Introduction to Course
  • In class exercise: comparing development kits
  • Pick up supplies for Lab 0

8 of 23

Course Overview

9 of 23

Focus of Course: Levels of Abstraction

Levels of Abstraction

Higher level prog. (Python, Java)

Operating System

Lower level prog. (ASM, C/C++)

Instruction Set

Circuits

Logic Gates

Transistors

Electrons

E29

(Embedded Systems)

E25/CS52

(Computer Architecture)

CS31

(Intro. To Comp.

Systems)

E15

E21

10 of 23

Let’s review the syllabus

11 of 23

Labs Overview

  • Labs are designed to combine two aspects of embedded systems:
    • Interfacing w/ physical world / hardware
    • Programming and program flow
  • Lab 0: basic setup
  • Lab 1: keypad + calculation
  • Lab 2: ECG system + peak detection algorithm
  • Lab 3: traffic system sensing + state machine
  • Lab 4: speaker + threading

12 of 23

Course expectations

  • Completing pre-class readings or quizzes is expected and part of your grade; see the Notion before each course about what to complete
  • This is a lab intensive course! You are strongly advised to complete different parts of the labs as indicated on the lab schedule. The labs are designed to be completed over the course of two weeks, and you may not finish during the lab period only. Plan for this in advance.
    • The labs all involve significant amounts of programming. If it’s been a while since you took a programming course, take some extra time to complete the review problems.
  • Please use the EdStem platform for questions whenever possible so others can benefit.
  • Some labs will involve groups; more to come on this.
  • You will get to design your own final project toward the end of the course. This should extend your knowledge in programming, hardware, or both.

13 of 23

Development Platform – STM NUCLEO-F401RE

14 of 23

Agenda

  • Introduction to Embedded Systems
  • Introduction to Course
  • In class exercise: Comparing Development Kits
  • Pick up supplies for Lab 0

15 of 23

Comparing our board with those from E15/E21

  • In E15, we used the Arduino Uno and the Adafruit Circuit Playground
  • In E21, we used the Adafruit Circuit Playground Bluefruit
  • In E29, we will be using one development kit and the Mbed Studio IDE: STM NUCLEO-F401RE
  • For this exercise, you will divide into teams and complete an exercise comparing/contrasting the different devices
    • Focus on how the similarities/differences might impact how we can use them in our course

16 of 23

Tasks for teams

First, introduce yourselves! (Name, course/year, one cool thing you did over break). Each team should answer one of these sets of questions!

  1. What sensors or peripherals do each of the boards have? (e.g. buttons, temperature, etc.)
  2. What microcontroller does each board use? How many bits is the processor? What voltage does it operate at? What is the clock frequency and memory of each microcontroller? How many built in timers does each one have?
  3. What is the form factor of each board? Can they be extended to connect other devices like Arduino shields? How many pins are available and what can they be used for?

17 of 23

Helpful links

  • Start w/ the Manufacturer pages
  • When in doubt, google it… “Arduino uno peripherals”
    • Be careful if referencing the “AI Overview” or another source; always verify information from the manufacturer page when possible

18 of 23

Team summary Q1

  1. What sensors or peripherals do each of the boards have? (e.g. buttons, temperature, etc.)

Arduino Uno:

  • Two buttons, built in LED

Circuit Playground (Bluefruit):

  • Motion sensor, temperature, light, sound, two buttons
  • BTLE

Nucleo:

  • Two buttons, LED, external oscillator

19 of 23

Team summary Q2

  1. What microcontroller does each board use? How many bits is the processor? What voltage does it operate at? What is the clock frequency and memory of each microcontroller? How many built in timers does each one have?

Uno:

  • ATMEGA328P, 8 bit processor, 5V, 16 MHz, 32 KB (FLASH), 3 timers (8 bit, 16 bit, 8 bit)

Circuit Playground (Bluefruit):

  • Nordic nRF52

Nucleo:

  • STM32 F401

20 of 23

Team summary Q3

  • What is the form factor of each board? Can they be extended to connect other devices like Arduino shields? How many pins are available and what can they be used for?

Uno:

Circuit Playground (Bluefruit):

Nucleo:

21 of 23

Mbed Studio vs. Arduino IDE vs. Mu

  • Similarities
    • Works with many different supported boards in respective ecosystems
    • Serial monitor
    • Easy build/compilation from IDE (for Mu, just save the program)
  • Differences (Mbed studio…)
    • allows easy use of Mbed OS for easier development (more powerful than Arduino built in functions)
    • has real time debugging capabilities
    • has version control
    • has autocomplete
    • has built in program manager / sidebar
    • detects correct board and port automatically

22 of 23

Agenda

  • Introduction to Embedded Systems
  • Introduction to Course
  • In class exercise: Comparing Development Kits
  • Pick up supplies for Lab 0

23 of 23

Lab 0

  • You should have what you need to complete Lab 0. Start now!
    • I will be available during lab hours Wednesday to help. We’ll meet in Singer 246 (overflow in Singer 240, 247).
    • Lab 0 should be completed ASAP (latest a week from today) and is ungraded, but you won’t be able to do future labs without it.
  • Available for pick up after lecture:
    • Dev kits
    • USB cable
      • Macs with an M series chip (most macbooks since 2021): take a USB-A to mini cable with a USB-C adapter
      • Macs with an Intel chip: take a USB-C to mini cable (unless you do not have a USB-C port)
      • Windows: take a USB-C to mini cable (unless you do not have a USB-C port)
      • Linux: take a USB-C to mini cable (unless you do not have a USB-C port)