Development of Real-Time Systems (coursera) logo

Development of Real-Time Systems (coursera)

Free

Practical programming for real-time systems with FreeRTOS and C.

FreeFree tier
Type
Open Source
Company
Åbo Akademi University

About Development of Real-Time Systems (coursera)

This course, part of the Development of Secure Embedded Systems Specialization, focuses on practical programming and problem-solving for real-time systems. It covers planning and implementing real-time systems both theoretically using mathematical proofs and practically using scheduling methods. Learners program in C using the FreeRTOS real-time kernel and explore multi-core real-time systems. The course includes 5 modules with quizzes and a peer-reviewed programming assignment, emphasizing a learn-by-doing approach with real-world examples such as airbags, emergency brakes, avionics, and multimedia systems.

Key Features

Practical programming and problem-solving for real-time systems
Plan and set up real-time systems both on paper and in practice
Achieve timing correctness in embedded systems
Implement scheduling methods using mathematical proofs
Program in C using the FreeRTOS real-time kernel
Explore multi-core real-time systems
5 modules with graded quizzes and a peer-reviewed programming assignment
Real-world examples including airbags, emergency brakes, avionics, and multimedia

Pros & Cons

Pros
  • Comprehensive coverage of real-time systems theory and practice
  • Hands-on programming assignments using FreeRTOS and C
  • Real-world examples from safety-critical and multimedia systems
  • Part of a specialization for deeper learning
  • Earn a shareable certificate upon completion
  • Flexible schedule with 2 weeks at 10 hours per week
Cons
  • Requires prior experience in C programming (optional prerequisite provided)
  • Intermediate level; not suitable for beginners without embedded systems background
  • Focuses primarily on FreeRTOS; other RTOS not covered
  • May be time-intensive if taken within 2 weeks

Best For

Airbag deployment systemsEmergency braking systemsMultimedia video playbackQuality of Service in web serversGeneral embedded real-time systems

FAQ

What is the main focus of this course?
The course focuses on achieving timing correctness in embedded systems through practical programming and problem-solving, using mathematical proofs and scheduling methods.
What programming language and RTOS are used?
The course uses the C programming language and the FreeRTOS real-time kernel.
What prior knowledge is required?
Some related experience is required; it is an intermediate level course. Learners without C experience are advised to take a prerequisite C programming course.
What kind of certificate is provided?
A shareable certificate that can be added to your LinkedIn profile, upon completing the course and assignments.
How is the course structured?
It consists of 5 modules, each with a graded quiz and one peer-reviewed programming assignment, designed to be completed in about 2 weeks at 10 hours per week.