Real-Time Project for Embedded Systems (Coursera)

Real-Time Project for Embedded Systems (Coursera)

The final course emphasizes hands-on building of an application using real-time machine vision and multiple real-time services to synchronize the internal state of Linux with an external clock via observation. Compare actual performance to theoretical and analysis to determine scheduling jitter and to mitigate any accumulation of latency.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

The verification of the final project will include comparison of system timestamp logs with a large set of images which can be encoded into a video. The final report will be peer reviewed and the captured frames and video uploaded for scripted assessment.
Course Learning Outcomes:

  • Outcome 1: Decompose a problem and set of basic real-time requirements into software modules and Linux POSIX real-time threads
  • Outcome 2: Analyze services in terms of C (execution time), T (request period), and D (deadlines for completion) to establish feasibility and margin for meeting requirements
  • Outcome 3: Design and construct a solution for a native Linux system equipped with a webcam to verify and demonstrate system synchronization using machine vision processing

Course 4 of 4 in the Real-Time Embedded Systems Specialization.

What You Will Learn

  • Real-time system design concepts and decomposition of functions and indentification of key services
  • De-coupling of I/O from real-time processing to avoid response time over-runs
  • Using AMP design principles with Rate Monotonic policy, analysis and theory
  • Using AMP design principles with best-effort an parallel real-time co-processing

Syllabus

WEEK 1
RTES Project Goals and Objectives
This module provides background on the RTES project including the concept of a "visual synchronome", where a camera is used to synchronize time between an external clock and an embedded computer. The project requires synchronization at both 1 Hz and 10 Hz, where the real-time services must acquire camera frames, select stable (non-blurred) frames and write them to a flash file system. The project requires a good understanding of RMA, real-time scheduling, and design principles for multi-service real-time systems.

WEEK 2
Completion of RTES Project and Preliminary Functional Testing
Different design approaches for the RTES project are reviewed in this module including the "shot gun" start, where clock ticks are detected once at the start, the full synchronome continuous tick detection approach, and different options for implementation. RTES project designers must decide on a camera interface, for example a V4L2 (Video for Linux 2) interface to UVC (Universal Video Controller) driver, or an OpenCV interface to a camera.

WEEK 3
Timing Analysis — Comparison of Actual to Predicted Service Time Events
To ensure that a real-time design is properly implemented, timing analysis based upon system logging and tracing must be used to verify that actual timing compared to theoretical RMA. This module provides and overview of methods and suggests the most efficient methods to debug and verify timing of the RTES project. The module includes a 1 Hz peer review of design and code to assist with RTES project improvement for external clock synchronization using camera images with a ticking analog clock.

WEEK 4
Methods for System Verification and Validation of RTES project
This module covers methods of tracing and profiling for the overall RTES project platform including networking, system profiling, and methods to trace real-time services in particular. The module includes a 10 Hz peer review of design and code to assist with RTES project improvement for external clock synchronization with a digital stopwatch at this higher rate compared to 1 Hz.

WEEK 5
Final Project Review and Presentation
The overall RTES project should be completed for this module. Students can review tips and examples for how to prepare their design materials, their RMA, and code for review. The process for inspection to verify and validate the design based upon the RTES project rubric is defined here as well.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Architecting Smart IoT Devices (Coursera) Coursera
EIT Digital

Architecting Smart IoT Devices (Coursera)

This course will teach you how to develop an embedded systems device. In order to reduce the time to market, many pre-made hardware and software components are available today. You'll discover all the available hardware and software components, such as processor families, operating systems, boards and networks. You'll also learn how to actually use and integrate these components.

Jun 1st 2026
5-12 Weeks
VLSI CAD Part II: Layout (Coursera) Coursera
University of Illinois at Urbana-Champaign

VLSI CAD Part II: Layout (Coursera)

A modern VLSI chip is a remarkably complex beast: billions of transistors, millions of logic gates deployed for computation and control, big blocks of memory, embedded blocks of pre-designed functions designed by third parties (called “intellectual property” or IP blocks). How do people manage to design these complicated chips? Answer: a sequence of computer aided design (CAD) tools takes an abstract description of the chip, and refines it step-wise to a final design.

Jun 1st 2026
5-12 Weeks
Cybersecurity Roles, Processes & Operating System Security (Coursera) Coursera
IBM

Cybersecurity Roles, Processes & Operating System Security (Coursera)

This course gives you the background needed to understand basic Cybersecurity around people. process and technology. You will learn: Understand the key cybersecurity roles within an Organization; List key cybersecurity processes and an example of each process; Describe the architecture, file systems, and basic commands for multiple operating systems including Windows, Mac/OS, Linux and Mobile; Understand the concept of Virtualization as it relates to cybersecurity

Jun 1st 2026
4 Weeks
Internet of Things V2: DragonBoard™ bring up and community ecosystem (Coursera) Coursera
University of California, San Diego

Internet of Things V2: DragonBoard™ bring up and community ecosystem (Coursera)

Do you want to develop skills to prototype embedded products using state-of-the-art technologies? In this course you will build a hardware and software development environment to guide your journey through the Internet of Things specialization courses. We will use the DragonBoard™ 410c single board computer (SBC).

Jun 8th 2026
5-12 Weeks
Interagir com sistemas operativos (Coursera) Coursera
Google

Interagir com sistemas operativos (Coursera)

Neste curso, através de uma combinação de palestras em vídeo, demonstrações e experiências práticas, vai adquirir conhecimentos acerca dos componentes principais de um sistema operativo e como realizar tarefas críticas, como gerir software e utilizadores e configurar hardware. Vamos terminar com um exemplo de como este conteúdo pode surgir no contexto de uma entrevista.

Jun 8th 2026
5-12 Weeks
Sistemas Operacionais e Você: Tornando-se um Usuário Avançado (Coursera) Coursera
Google

Sistemas Operacionais e Você: Tornando-se um Usuário Avançado (Coursera)

Neste curso – com uma combinação de palestras em vídeo, demonstrações e atividades práticas – você conhecerá os principais componentes de um sistema operacional e verá como executar tarefas críticas, como gerenciamento de software e usuários, e configuração de hardware. Vamos terminar com um exemplo de como esse conteúdo pode acabar surgindo em uma entrevista.

Jun 8th 2026
5-12 Weeks
Princípios básicos de apoio técnico (Coursera) Coursera
Google

Princípios básicos de apoio técnico (Coursera)

Este curso é o primeiro de uma série que visa a sua preparação para uma função de especialista de apoio técnico de TI de nível básico. Neste curso, ser-lhe-á apresentado o mundo das TI (Tecnologias de Informação). Vai descobrir as diferentes facetas das Tecnologias de Informação, como o hardware informático, a Internet, o software informático, a resolução de problemas e o serviço de apoio ao cliente. Vamos analisar como é que pode ser realizada uma entrevista técnica e fornecer sugestões sobre a melhor forma de se preparar para uma.

Jun 8th 2026
5-12 Weeks