Skip to main content

Embedded Systems Development Course Outline

Course Progress Overview

WeekDateContent
Week 111/18 - 11/22MOIL System Introduction
Linux Basics
Week 211/25 - 11/29Yocto Project Development Practice
Week 312/02 - 12/06GStreamer Multimedia Framework
Week 412/09 - 12/11Qt Graphical Interface Development
Course Discussion and Summary

Detailed explanation of course units

Basic environment construction

Introduction to Development Environment

  • MOIL system introduction
  • Development environment architecture description
  • Course learning path description

Ubuntu system and Linux basics

Basic settings and operations
  • Ubuntu Server installation and configuration
  • Basic Linux command operations
  • Practical exercises and problem solving

Containerization technology practice

Docker Infrastructure
  • Introduction to Docker architecture
  • Docker installation and configuration
  • Docker container management
  • Practical exercises and problem solving
Docker reference resources

WSL development environment configuration

WSL system settings
  • Introduction to WSL 2 architecture
  • WSL installation and configuration
  • WSL instance management
  • Practical exercises and problem solving
WSL Technical Resources

Development tool integration environment

IDE and version control settings
  • VSCode installation and basic configuration
  • VSCode remote development environment settings
  • SSH connection configuration
  • WSL development environment integration
  • Docker container development settings
  • Git version control and GitHub collaboration
Development tool resources

Technical Document Management System

Docusaurus Document Platform
  • Docusaurus installation and configuration
  • Markdown file writing
  • File deployment and version management
  • Practical exercises and problem solving
File system resources

Embedded system development

Yocto Linux system setup

Development environment preparation steps
  • Yocto development environment setup

    • Docker container environment configuration
    • Installation and settings of related tools
  • Yocto system customization

    • Add the required meta levels
    • Recipe file modification
    • System configuration file adjustment
  • System construction and deployment

    • BitBake build process instructions
    • Customized Linux image file generation
    • SD card burning and system startup
    • Development board function verification
Yocto Development Resources

GStreamer application practice

GStreamer basic concepts
  • Architecture introduction
  • Commonly used commands and tool operations
  • Pipeline design principles
Cross-platform development and performance comparison
  • PC development

    • GStreamer Development Kit Installation and Settings
    • Pipeline implementation and testing
  • RZ/G2L development board integration

    • Yocto recipe modification
    • Rebuild system image file
    • SD card writing and development board startup
    • Pipeline implementation and testing
  • Performance analysis and optimization

    • Performance data collection methods
    • Performance comparison between PC and RZ/G2L
    • System resource usage analysis
    • Performance tuning suggestions
GStreamer technical resources

Graphical interface application development

Qt framework integration
  • Qt development environment setup
  • Qt application development
  • RZ/G2L Qt integrated development
Qt development resources

Hardware interface control development

GPIO system programming
  • Development environment preparation
  • Qt GPIO program development
  • RZ/G2L GPIO control implementation
GPIO Technical Resources

Basic course requirements

Necessary skills background

  • Basics of programming languages

    • C/C++ programming basics
    • Python programming basics
  • Linux system operating experience

    • Basic command operations
    • File system management
    • Permission setting concept

Course Evaluation Items

1. Environmental construction project

  • Complete development environment configuration
  • Development tool installation and settings
  • Basic operation files

2. Linux system development project

  • Customized Linux system
  • Development board startup test
  • Build process documentation

3. Multimedia application project

  • Pipeline design files
  • Functional test report
  • Performance analysis report

4. User interface project

  • User interface design
  • Function implementation code
  • Application documents

5. Hardware control project

  • Hardware control program
  • Test verification report
  • Technical documents

6. Technical Documentation Project

  • Development environment setup guide
  • Application manual
  • Troubleshooting guide