This course is used as the capstone in a three course sequence, including Linux System Programming and Introduction to Buildroot and Linux Kernel Programming and Introduction to Yocto Project. Both of these courses must be completed before starting this course.
This course builds on the content in the previous two prerequisite courses to develop a final project of your choosing targeting Linux device targeting hardware. The final project is delivered using concepts from Agile Scrum. Several pertinent, recent, and relevant Embedded System development related topics are covered as a part of the course curriculum, which you may optionally choose to incorporate into your final project.
Linux Embedded Systems Topics and Projects can also be taken for academic credit as ECEA 5307, part of CU Boulder’s Master of Science in Electrical Engineering.
This course includes specific hardware and software requirements. Please review the FAQ below for complete details.
This module will provide an overview of the requirements for your Final Project, as well as introduce Agile Scrum concepts we will use for the project development. We'll discuss some Buildroot related hints related to supporting a physical hardware platform for those who plan to use Buildroot in their final project. In addition, we'll cover some topics which are relevant as we move to a physical hardware platform, including bootloaders, device trees, and linux networking
涵盖的内容
6个视频4篇阅读材料4个作业1次同伴评审
显示有关单元内容的信息
6个视频•总计63分钟
Agile Overview•12分钟
Final Project Overview•18分钟
Buildroot Additional Hints•4分钟
Bootloaders and Device Trees Part 1•12分钟
Bootloaders and Device Trees Part 2•13分钟
Linux Networking Overview•5分钟
4篇阅读材料•总计31分钟
Course Updates and Accessibility Support•1分钟
Non-Credit Students: Welcome and Where to Find Help•10分钟
Hardware & Software Requirements•10分钟
Final Project Proposal•10分钟
4个作业•总计38分钟
Agile Overview•30分钟
Buildroot Additional Hints•2分钟
Bootloaders and Device Tree Part1 & Part 2 •3分钟
Linux Networking Overview•3分钟
1次同伴评审•总计600分钟
Final Project Peer Review•600分钟
Final Project Sprint 1, Device Updates, and Embedded System Topics
第 2 单元•小时 后完成
单元详情
In this module you will complete the first iteration of your final project implementation.
You will also learn about topics which could potentially be incorporated into your final project, or are otherwise relevant for modern embedded system projects, including Linux Device Update, MQTT and IoT, Read Only Root Filesystems, and Application Containers and Docker for Embedded.
涵盖的内容
7个视频1篇阅读材料4个作业1次同伴评审
显示有关单元内容的信息
7个视频•总计92分钟
Final Project Sprints•14分钟
Linux Device Update Part 1•10分钟
Linux Device Update Part 2•12分钟
Linux Device Update Part 3•17分钟
MQTT and IoT Platforms•10分钟
Read Only Root Filesystems•14分钟
Application Containers and Docker For Embedded•15分钟
1篇阅读材料•总计10分钟
Final Project Sprint 1•10分钟
4个作业•总计17分钟
Linux Device Update•5分钟
MQTT and IOT•3分钟
Read Only Root Filesystems•4分钟
Application Containers and Docker For Embedded•5分钟
1次同伴评审•总计600分钟
Final Project Sprint 1•600分钟
Final Project Sprint 2, Development Tips and Strategies
第 3 单元•小时 后完成
单元详情
In this module you will complete the second iteration of your final project implementation.
You will also learn about topics which could potentially be incorporated into your final project, or are otherwise relevant for modern embedded system projects, including Git Workflows, C++ Templates and STL, and C Dependency Generation
涵盖的内容
5个视频1篇阅读材料3个作业1次同伴评审
显示有关单元内容的信息
5个视频•总计39分钟
Git Workflows•8分钟
C++ Templates and STL•12分钟
C Dependency Generation Part 1 GNU Make•8分钟
C Dependency Generation Part 2 Automake•6分钟
C Dependency Generation Part 3 CMake•6分钟
1篇阅读材料•总计10分钟
Final Project Sprint 2•10分钟
3个作业•总计12分钟
Git Workflows•2分钟
C++ templates and STL•5分钟
C dependency Generation•5分钟
1次同伴评审•总计600分钟
Final Project Sprint 2•600分钟
Final Project Sprint 3 and Demo, Software Testing
第 4 单元•小时 后完成
单元详情
In this module you will complete the third and final iteration of your final project implementation.
You will also learn about Software Testing and Software Test strategies releavnt to Embedded System development
涵盖的内容
4个视频2篇阅读材料1个作业2次同伴评审
显示有关单元内容的信息
4个视频•总计41分钟
Embedded Test Part 1 Concepts•11分钟
Embedded Test Part 2 Automated Testing•12分钟
Embedded Test Part 3 CI-CD•12分钟
Embedded Test Part 4 TDD and BDD•6分钟
2篇阅读材料•总计20分钟
Final Project Sprint 3•10分钟
Final Project Demo Video and Outline•10分钟
1个作业•总计10分钟
Embedded Software Test•10分钟
2次同伴评审•总计660分钟
Final Project Sprint 3•600分钟
Final Project Demo Video and Outline Updates•60分钟
获得职业证书
将此证书添加到您的 LinkedIn 个人资料、简历或履历中。在社交媒体和绩效考核中分享。
攻读学位
课程 是 University of Colorado Boulder提供的以下学位课程的一部分。如果您被录取并注册,您已完成的课程可计入您的学位学习,您的学习进度也可随之转移。
查看符合条件的学位
攻读学位
课程 是 University of Colorado Boulder提供的以下学位课程的一部分。如果您被录取并注册,您已完成的课程可计入您的学位学习,您的学习进度也可随之转移。
CU Boulder is a dynamic community of scholars and learners on one of the most spectacular college campuses in the country. As one of 34 U.S. public institutions in the prestigious Association of American Universities (AAU), we have a proud tradition of academic excellence, with five Nobel laureates and more than 50 members of prestigious academic academies.
What are the hardware and software requirements for this course?
System Requirements
You must have access to a computer configured with the following specifications to complete this specialization:
Operating System:
Ubuntu 22.04 (64-bit) is required, but Ubuntu 20.04 (64-bit) may also be used. Other versions of Ubuntu, or other distributions, are not officially supported and may not work properly with assignment instructions.
The build system host must use an x86_64 (amd64) architecture. ARM-based systems are not supported.
Windows Subsystem for Linux (WSL) is not supported for ECEA 5306: Linux Kernel Programming and Introduction to Yocto Project, which includes Linux kernel development and Yocto projects. If you plan to continue to this course, please prepare a dedicated build host or virtual machine.
Memory (RAM):
At least 8 GB RAM is recommended. You may be able to complete assignments with less, but 4 GB or less may cause build failures.
Disk Space:
At least 200 GB of free disk space is recommended.
Hardware Requirements
Embedded hardware of a student’s choosing is required for the final project. Supported boards include:
Raspberry Pi (suitable for Buildroot & Yocto projects)
When will I have access to the lectures and assignments?
To access the course materials, assignments and to earn a Certificate, you will need to purchase the Certificate experience when you enroll in a course. You can try a Free Trial instead, or apply for Financial Aid. The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
What will I get if I subscribe to this Specialization?
When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile.
Is financial aid available?
Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.