If you are having issues with the exercises, please create a ticket on DevZone:
Click or drag files to this area to upload. You can upload up to 2 files.

Lesson 1 – Zephyr RTOS: Beyond the basics


In this lesson, we will dive into thread management and data passing in the nRF Connect SDK/Zephyr. We have two execution contexts: Thread context and Interrupt context. Each context has its own usage and timing implications.

We will first examine the different execution primitives, and how different types of threads and different types of interrupts co-exist. Then we will take a closer look at the life cycle of a thread and how the scheduler works. After that, we will also cover frequently used data-passing techniques such as message queues and FIFOs

At the end of the lesson, you will have a solid understanding of the options available to schedule application tasks and their different time constraints. You will also gain a good hands-on grasp on how to safely pass data between threads and the kernel options available.  


  • Have a full understanding of the different execution options and their determinism and preemption nature.
  • Fully comprehend the life cycle of a thread
  • Have a good grasp of the Zephyr Kernel options and how the scheduler work
  • Understand the software and timing implications of adding subsystem and network stacks into your application. 
  • Learn how to schedule application tasks using the right execution primitive with the right priority level. 
  • Learn how to pass data between threads using message queues and FIFOs safely.
  • Practice through hands-on exercises how to create different types of threads and exchange data between them.
Register an account
Already have an account? Log in
(All fields are required unless specified optional)

  • 8 or more characters
  • Upper and lower case letters
  • At least one number or special character

Forgot your password?
Enter the email associated with your account, and we will send you a link to reset your password.