Senior Design Team sdmay25-33 • Interactive Embedded Systems Learning Using the Prairie Learn Framework

Project Overview

The objective of this project is to use the Prairie Learn framework (https://www.prairielearn.org/) to develop an interactive learning environment for use in CPR E 288 (Embedded Systems), which can be found here https://cpre288-pl-f2024.ece.iastate.edu/pl/login. This will primarily involve:

  1. Using Python, JavaScript, and C to develop interactive questions/activities that can be randomized, and auto-graded
  2. Use the QEMU Emulator to emulate a Tiva TM4C123GH6PM Microcontroller to allow students to practice Embedded Systems concepts introduced in CPR E 2880

Interactive questions/activities developed will cover topics such as:

  1. Converting numbers between bases
  2. Writing simple C programs
  3. General Purpose I/O
  4. Bitwise operations
  5. UART communication
  6. Analog to Digital Conversion
  7. Timers
  8. Pulse wave generation
  9. Assembly Programming

Expected Deliverables:

  1. Have a working beta build ready by the end of Fall 2024 to be tested by CPR E 2880 students in Spring 2025
  2. Provide updates throughout the beta test, fixing any issues found by Students
  3. Have a finished production build by the end of Spring 2025
  4. Developer documentation and tutorial videos to help others learn how to set up a PrairieLearn server and develop interactive questions/activities for other courses in the department

Team Members

Caden Otis

Project Manager

Electrical Engineering

Rachel Druce-Hoffman

Notetaker

Cyber Security Engineering

Justin Cano

Technical Lead

Cyber Security Engineering

Devin Alamsya

Consultant

Software Engineering

Joey Krejchi

Quality Assurance

Cyber Security Engineering





Weekly Reports


Design Documents

Design Document 1: Introduction
Design Document 2: Requirements
Design Document 3: Project Plan
Design Document 4: Design
4910 Final Design Document
4920 Final Design Document

Final Documentation

4920 Final Documentation

Final Report
Final Presentation
Final Project Poster
Demo Video

4910 Final Documentation

Final Design Document
Faculty Presentation

Lightning Talks

Lightning Talk 1: Product Research
Lightning Talk 2: Problem and Users
Lightning Talk 3: User Needs and Requirements
Lightning Talk 4: Project Planning
Lightning Talk 5: Detailed Design
Lightning Talk 6: Contextualization and Design Check-In
Lightning Talk 7: Prototyping
Lightning Talk 8: Ethics and Professional Responsibility

Project Documentation

Documentation Repository
YouTube Channel