Course

Embedded Hardware and Operating Systems

EIT Digital

Embedded Hardware and Operating Systems is an engaging course that delves into the practical aspects of programming and creating IoT applications. Through four modules, participants will gain a deep understanding of embedded systems, hardware components, operating systems, and simulation using Cooja.

The course begins with an exploration of embedded hardware, covering design characteristics, input/output devices, and wire communication. Participants will have the opportunity to build their own input/output system and ADC using Arduino, enhancing their practical skills.

Module 2 focuses on the processing elements of embedded systems, comparing embedded processors and FPGAs. It provides a practical comparison of micro-controller platforms and reconfigurable platforms, enabling learners to make informed decisions in their projects.

In Module 3, participants gain an overview of operating systems and embedded operating systems, including in-depth explorations of Linux kernel functions, microkernels, and various embedded operating systems such as Contiki, TinyOS, and RIOT OS.

The final module, Module 4, delves into Contiki OS and Cooja simulation. Participants will learn about Contiki's kernel architecture, communication in Contiki, and engage in hands-on activities to estimate energy consumption using Cooja simulation.

Throughout the course, participants will have the opportunity to test their knowledge with graded quizzes, engage in module discussions, and complete a peer-reviewed programming assignment. Optional assignments are also available for those who want to explore wireless sensor network applications further.

Certificate Available ✔

Get Started / More Info
Embedded Hardware and Operating Systems
Course Modules

Embedded Hardware and Operating Systems is structured into four modules, each offering in-depth exploration and practical activities. From embedded hardware and processing elements to operating systems and Cooja simulation, participants will gain comprehensive knowledge and hands-on experience in IoT development.

Introduction to Embedded Hardware

Module 1 of the course, "Introduction to Embedded Hardware," provides a foundational understanding of embedded systems and hardware components. Participants will engage in practical activities such as building their own input/output system and ADC using Arduino, enhancing their hands-on skills.

Processing Elements of an Embedded System

Module 2, "Processing Elements of an Embedded System," compares embedded processors and FPGAs, offering practical insights into micro-controller platforms and reconfigurable platforms. Participants will gain a comprehensive understanding of the processing elements essential for embedded systems.

Overview of operating systems and embedded operating systems

Module 3, "Overview of Operating Systems and Embedded Operating Systems," delves into various operating systems such as Linux kernel, microkernels, and embedded operating systems like Contiki, TinyOS, and RIOT OS. Participants will explore the functionalities and advantages of these systems.

Contiki OS and Cooja simulation

Module 4, "Contiki OS and Cooja Simulation," focuses on Contiki's kernel architecture, communication in Contiki, and hands-on activities using Cooja simulation to estimate energy consumption. Participants will gain practical experience in simulating wireless sensor network applications.

More Software Development Courses

Developing Applications with Google Cloud

Google Cloud

Developing Applications with Google Cloud teaches application developers how to design, develop, and deploy secure, scalable, and intelligent cloud-native applications...

Architecting with Google Kubernetes Engine: Production

Google Cloud

Learn about Kubernetes and Google Kubernetes Engine (GKE) security, logging and monitoring, using Google Cloud managed storage and database services within GKE,...

Machine Learning Algorithms

Sungkyunkwan University

Machine Learning Algorithms is a comprehensive course covering naïve Bayesian, Support Vector Machine, Decision Tree, and Clustering algorithms. Gain a deep understanding...

Version Control in Java: Update Your App with Git

Coursera Project Network

Version Control in Java: Update Your App with Git Learn essential Git commands and workflows for Java development in this 2-hour guided project.