Course

Linux Embedded System Topics and Projects

University of Colorado Boulder

This course, part of CU Boulder’s Master of Science in Electrical Engineering, serves as the capstone in a three-course sequence. Building on Linux System Programming and Introduction to Buildroot and Linux Kernel Programming, it emphasizes Agile Scrum methodologies and the deployment of Buildroot or Yocto projects on embedded hardware.

Throughout the course, you will explore relevant Embedded System development topics, including Linux networking, final project proposal and peer reviews, Linux device updates, MQTT and IoT platforms, read-only root filesystems, application containers and Docker for embedded systems, Git workflows, C++ templates and STL, C dependency generation, software testing, and more.

By the end of the course, you will have developed a final project targeting Linux devices, applying Agile Scrum concepts and incorporating recent Embedded System development topics.

Certificate Available ✔

Get Started / More Info
Linux Embedded System Topics and Projects
Course Modules

This course consists of four modules covering Agile Scrum overview, final project sprints, device updates, embedded system topics, development tips and strategies, software testing, and more.

Final Project Overview and Agile Scrum Overview

This module provides an overview of Agile Scrum concepts and the final project, including hints for Buildroot, device trees, and Linux networking. It culminates in a final project proposal and peer review.

Final Project Sprint 1, Device Updates, and Embedded System Topics

Module 2 focuses on final project sprints, Linux device updates, MQTT and IoT platforms, read-only root filesystems, application containers, and Docker for embedded systems.

Final Project Sprint 2, Development Tips and Strategies

Module 3 delves into Git workflows, C++ templates and STL, C dependency generation using GNU Make, Automake, and CMake. It also includes development tips, strategies, and final project sprints.

Final Project Sprint 3 and Demo, Software Testing

The final module covers embedded software testing concepts, including automated testing, CI-CD, TDD, and BDD. It concludes with the final project sprint and demo, including a demo video and outline updates.

More Software Development Courses

Data Structures and Algorithms

Tsinghua University

Data Structures and Algorithms is a specialized course that delves into the principles and methods of designing and implementing various data structures, equipping...

An Introduction to Interactive Programming in Python (Part 2)

Rice University

An Introduction to Interactive Programming in Python (Part 2) is a hands-on course that teaches the fundamentals of building interactive applications using Python....

Distributed Programming in Java

Rice University

Dive into Distributed Programming in Java and master the use of multiple nodes in a data center to enhance application performance and reduce latency.

Introduction to Object-Oriented Programming in C++

University of London

Introduction to Object-Oriented Programming in C++ is a comprehensive course that equips learners with the fundamentals of C++ and object-oriented programming, culminating...