Zephyr RTOS on ESP32-S3

Zephyr RTOS on ESP32-S3 — west workflows, kernel objects, Devicetree, buses, motion, and networking labs.

Duration
24 weeks
Certificates
3
CO threshold
75%
Price
₹20,000 (one-time access)

Tagline: Zephyr RTOS on ESP32-S3 — west workflows, kernel objects, Devicetree, buses, motion, and networking labs.

Field Value
Course code ZEP-RTOS-A
Duration 24 weeks
Credits 6
Compliance NBA-aligned OBE
Publication published
Price INR 20000
DB snapshot 2026-10-08T15:04:31.260Z

Course objective

Learn Zephyr RTOS on ESP32-S3: west workflows, kernel objects, Devicetree, buses, motion, and networking. Hardware-verified labs prepare you for modern RTOS product development beyond bare Arduino sketches. Prerequisite: strong C fundamentals (C-PROG-A); prior embedded experience (EMB-F401-A / ESP-IDF-A) helpful.

Course outcomes (CO1–CO6)

CO Bloom Weight Statement
CO1 apply 17% Bring up Zephyr 4.1 west on ESP32-S3-DevKitC-1 and use threads, sleep, semaphores, mutex/condvar, msgq, timers, and workqueues with UART0 proof (Units 1–8).
CO2 apply 16% Use sys_heap/k_malloc, sys_hashmap, and Devicetree/Kconfig overlay literacy including a lab alias fragment (Units 9–11).
CO3 apply 17% Drive kit GPIO/PWM, I2C WHOAMI, and NVS boot-count on the shared EMB pin roles with UART tokens (Units 12–15).
CO4 apply 16% Use Zephyr logging modules, uart0 shell, and zbus channels as services distinct from printk and msgq (Units 16–18).
CO5 analyze 17% Command A4988 STEP/DIR and TMC2209 UART motion on kit pins without stealing UART0 or powering VMOT from USB (Units 19–20).
CO6 evaluate 17% Join a Zephyr Wi-Fi station, complete an authorized OTA download, then integrate three earlier proofs in the Unit 24 capstone (Units 21, 22, and 24). MQTT and BLE are outside this course.

Activity totals (live from platform)

Metric Count
Units / chapters 23
Topics 211
Topic quiz activities 1288
MCQ questions 1288
Practice / board labs 10
Evaluated firmware labs 96
Instructional content blocks 1001

Certificates & earning criteria

Certificate CO scope Evaluated lab quota CO attainment Gate
West & kernel objects CO1–CO1 ≥ 75% ≥ 75% Certificate 1 wrap — Console kernel (Unit 8)
Memory & Devicetree board CO1–CO3 ≥ 75% ≥ 75% Certificate 2 wrap — Memory and kit (Unit 15)
Services, station, OTA, capstone CO1–CO6 ≥ 75% ≥ 75% Certificate 3 — Product RTOS capstone (Unit 24)

Unit syllabus (unit → topics → activities)

Unit 1 — Onboarding: Zephyr, this board, this desk

Unit totals: 9 topics · 54 MCQ questions · 1 practice · 0 evaluated labs

# Topic MCQs Practice Evaluated Preview
1 What is an RTOS — why Zephyr 6 0 0 —
2 Function walkthrough — west, board, READY desk 6 0 0 —
3 Zephyr’s parts — 4.1 in this book, newer upstream 6 0 0 —
4 What this book covers — and why each block matters 6 0 0 —
5 The ESP32-S3 SoC among Zephyr’s boards 6 0 0 —
6 DevKitC-1, USB-UART, and Device Bridge 6 0 0 —
7 C words you will see — not a lab yet 6 0 0 —
8 What you see after flash — ROM, then Zephyr, then your print 6 0 0 —
9 Prove the desk — flash READY as-is 6 1 0 —

Unit 2 — Hello World and boot

Unit totals: 7 topics · 42 MCQ questions · 1 practice · 1 evaluated labs

# Topic MCQs Practice Evaluated Preview
1 What is console output on an RTOS 6 0 0 —
2 Function walkthrough — printk and console wait 6 0 0 —
3 Boot banner versus your main 6 0 0 —
4 printk versus printf on UART0 6 0 0 —
5 Wait for the console before you print 6 0 0 —
6 Hello World! — you write the line 6 1 0 —
7 Keep Hello World! every two seconds 6 0 1 —

Unit 3 — Threads

Unit totals: 8 topics · 48 MCQ questions · 2 practice · 1 evaluated labs

# Topic MCQs Practice Evaluated Preview
1 What is a thread — vs a process 6 0 0 —
2 Function walkthrough — threads and sleep 6 0 0 —
3 K_THREAD_DEFINE versus k_thread_create 6 0 0 —
4 k_sleep versus busy wait 6 0 0 —
5 Thread names in UART 6 1 0 —
6 Two threads practice — keep alpha, add beta 6 1 0 —
7 Two threads, two names, no sharing 6 0 1 —
8 Cooperative versus preempt — awareness 6 0 0 —

Unit 4 — Semaphores

Unit totals: 8 topics · 48 MCQ questions · 4 practice · 1 evaluated labs

# Topic MCQs Practice Evaluated Preview
1 What is a semaphore 6 0 0 —
2 Function walkthrough — semaphore give and take 6 0 0 —
3 k_sem give and take 6 0 0 —
4 Give unblocks take — SEM:GO / SEM:OK 6 1 0 —
5 Two threads taking turns 6 1 0 —
6 Kickstart empty semaphores 6 1 0 —
7 One permit semaphore 6 1 0 —
8 Synchronization sample contract 6 0 1 —

Unit 5 — Mutex and condition variables

Unit totals: 6 topics · 36 MCQ questions · 2 practice · 1 evaluated labs

# Topic MCQs Practice Evaluated Preview
1 What is mutual exclusion — mutex and waiters 6 0 0 —
2 Function walkthrough — mutex and condvar 6 0 0 —
3 Why mutex is not a semaphore 6 0 0 —
4 k_mutex critical section UART 6 1 0 —
5 k_condvar wait and signal 6 1 0 —
6 Worker pool everyone done 6 0 1 —

Unit 6 — Message queues

Unit totals: 9 topics · 54 MCQ questions · 0 practice · 6 evaluated labs

# Topic MCQs Practice Evaluated Preview
1 What is a message queue 6 0 0 —
2 Function walkthrough — message queue put and get 6 0 0 —
3 k_msgq put and get 6 0 1 —
4 Two payloads through one queue 6 0 1 —
5 Message queue then everyone done 6 0 1 —
6 ISR-safety awareness 6 0 0 —
7 Producer and consumer pair 6 0 1 —
8 Scenario: sample pipeline 6 0 1 —
9 Scenario: command and ack pipe 6 0 1 —

Unit 7 — Software timers

Unit totals: 7 topics · 42 MCQ questions · 0 practice · 4 evaluated labs

# Topic MCQs Practice Evaluated Preview
1 What is a software timer 6 0 0 —
2 Function walkthrough — software timers 6 0 0 —
3 k_timer versus k_sleep in a thread 6 0 0 —
4 Period versus one-shot 6 0 1 —
5 Print TICK=n from expiry 6 0 1 —
6 Timer feeds a message queue 6 0 1 —
7 Scenario: desk heartbeat 6 0 1 —

Unit 8 — Work queues

Unit totals: 10 topics · 60 MCQ questions · 0 practice · 5 evaluated labs

# Topic MCQs Practice Evaluated Preview
1 What is deferred work — work queues 6 0 0 —
2 Function walkthrough — work queues 6 0 0 —
3 Why not heavy work in a timer callback 6 0 0 —
4 System workqueue 6 0 1 —
5 Dedicated k_work_q awareness 6 0 0 —
6 WORK: line from the work queue 6 0 1 —
7 Scenario: desk offload 6 0 1 —
8 Message queue then work 6 0 1 —
9 Scenario: desk alarm 6 0 1 —
10 Certificate 1 wrap — Console kernel SUMM 6 0 0 —

Unit 9 — Heaps

Unit totals: 9 topics · 54 MCQ questions · 0 practice · 5 evaluated labs

# Topic MCQs Practice Evaluated Preview
1 What is a heap — dynamic memory 6 0 0 —
2 Function walkthrough — heap alloc and free 6 0 0 —
3 Three heap layers — sys_heap, k_heap, system heap 6 0 0 —
4 System heap — k_malloc and k_free 6 0 1 —
5 Private K_HEAP_DEFINE — alloc realloc free 6 0 1 —
6 Failure, timeout, free rules + PSRAM note 6 0 0 —
7 Scenario: sample pipe with a heap buffer 6 0 1 —
8 Scenario: ticker fills a growing scratch pad 6 0 1 —
9 Scenario: desk offload owns the buffer 6 0 1 —

Unit 10 — Hash maps

Unit totals: 7 topics · 42 MCQ questions · 0 practice · 4 evaluated labs

# Topic MCQs Practice Evaluated Preview
1 What is a hash map 6 0 0 —
2 Function walkthrough — sys_hashmap 6 0 0 —
3 SYS_HASHMAP_DEFINE — insert get remove replace 6 0 0 —
4 Insert and look up 6 0 1 —
5 Replace then remove 6 0 1 —
6 Message queue key then hashmap lookup 6 0 1 —
7 Scenario: desk device registry 6 0 1 —

Unit 11 — Devicetree and Kconfig

Unit totals: 10 topics · 60 MCQ questions · 0 practice · 5 evaluated labs

# Topic MCQs Practice Evaluated Preview
1 What is Devicetree on an RTOS 6 0 0 —
2 Function walkthrough — Devicetree aliases and Kconfig 6 0 0 —
3 chosen console is uart0 6 0 0 —
4 Status okay versus disabled 6 0 0 —
5 prj.conf versus overlay versus board DTS 6 0 0 —
6 Alias ready prints DTS:OK 6 0 1 —
7 Alias ready, then the heap size 6 0 1 —
8 Message queue then DTS:OK 6 0 1 —
9 Hashmap then DTS:OK 6 0 1 —
10 Scenario: desk board passport 6 0 1 —

Unit 12 — GPIO

Unit totals: 8 topics · 48 MCQ questions · 0 practice · 5 evaluated labs

# Topic MCQs Practice Evaluated Preview
1 What is GPIO on an RTOS 6 0 0 —
2 Function walkthrough — GPIO DT specs 6 0 0 —
3 gpio_pin_configure_dt 6 0 0 —
4 DIG_OUT_A GPIO2 as a documented output 6 0 1 —
5 LED:OK and LED:OFF 6 0 1 —
6 Timer then DIG_OUT_A 6 0 1 —
7 Overlay alias then DIG_OUT_A 6 0 1 —
8 Scenario: desk DIG_OUT_A passport 6 0 1 —

Unit 13 — PWM

Unit totals: 8 topics · 48 MCQ questions · 0 practice · 5 evaluated labs

# Topic MCQs Practice Evaluated Preview
1 What is PWM on an RTOS 6 0 0 —
2 Function walkthrough — PWM DT specs 6 0 0 —
3 Same pin, PWM API not GPIO toggle 6 0 0 —
4 Practice PWM=50 6 0 1 —
5 Duty 0 / 50 / 100 with PWM= 6 0 1 —
6 Timer then PWM 6 0 1 —
7 GPIO then PWM 6 0 1 —
8 Scenario: desk jingle 6 0 1 —

Unit 14 — I2C

Unit totals: 17 topics · 102 MCQ questions · 0 practice · 11 evaluated labs

# Topic MCQs Practice Evaluated Preview
1 What is I2C on an RTOS 6 0 0 —
2 Function walkthrough — I2C register transfers 6 0 0 —
3 One I2C bus and register transfers 6 0 0 —
4 Practice I2C:SCAN 6 0 1 —
5 Gyroscope registers on the MPU 6 0 0 —
6 Configure and calibrate the gyroscope 6 0 1 —
7 Read raw gyroscope counts 6 0 1 —
8 Scenario: show gyroscope in degrees per second 6 0 1 —
9 Accelerometer registers on the MPU 6 0 0 —
10 Configure and calibrate the accelerometer 6 0 1 —
11 Read raw accelerometer counts 6 0 1 —
12 Scenario: show accelerometer in milli-g 6 0 1 —
13 BMP180 registers (not a humidity BME) 6 0 0 —
14 Load BMP180 factory calibration 6 0 1 —
15 Trigger BMP180 and read raw UT/UP 6 0 1 —
16 Scenario: show BMP180 Celsius and hectopascals 6 0 1 —
17 Scenario: desk three-sensor story 6 0 1 —

Unit 15 — NVS / settings

Unit totals: 15 topics · 90 MCQ questions · 0 practice · 11 evaluated labs

# Topic MCQs Practice Evaluated Preview
1 What is NVS on an RTOS 6 0 0 —
2 Function walkthrough — NVS mount read write 6 0 0 —
3 Default flash map and storage_partition 6 0 0 —
4 Practice NVS:MOUNT 6 0 1 —
5 NVS= boot counter 6 0 1 —
6 Timer then NVS 6 0 1 —
7 GPIO then NVS 6 0 1 —
8 Scenario: desk NVS stamp 6 0 1 —
9 Scenario: desk poll NVS 6 0 1 —
10 Scenario: desk bring-up 6 0 1 —
11 Scenario: desk clear to one 6 0 1 —
12 NVS int and int array 6 0 1 —
13 NVS string and string array 6 0 1 —
14 NVS float/bool and arrays 6 0 1 —
15 Certificate 2 wrap — Memory and kit SUMM 6 0 0 —

Unit 16 — Logging

Unit totals: 12 topics · 72 MCQ questions · 0 practice · 8 evaluated labs

# Topic MCQs Practice Evaluated Preview
1 What is logging on an RTOS 6 0 0 —
2 Function walkthrough — LOG_MODULE and levels 6 0 0 —
3 LOG_MODULE_REGISTER and levels 6 0 0 —
4 Practice log:INF 6 0 1 —
5 LOG_ERR then LOG_INF 6 0 1 —
6 Timer then log 6 0 1 —
7 GPIO then log 6 0 1 —
8 Scenario: desk log stamp 6 0 1 —
9 Scenario: desk err then info 6 0 1 —
10 Scenario: desk bring-up log 6 0 1 —
11 Scenario: desk log seal 6 0 1 —
12 Wrap toward shell 6 0 0 —

Unit 17 — Shell

Unit totals: 8 topics · 48 MCQ questions · 0 practice · 4 evaluated labs

# Topic MCQs Practice Evaluated Preview
1 What is a shell on an RTOS 6 0 0 —
2 Function walkthrough — shell register 6 0 0 —
3 Shell on zephyr,shell-uart = uart0 6 0 0 —
4 Practice shell:ok 6 0 1 —
5 Eval shell:ok 6 0 1 —
6 Timer then shell:ok 6 0 1 —
7 Log then shell:ok 6 0 1 —
8 Wrap toward zbus 6 0 0 —

Unit 18 — zbus

Unit totals: 13 topics · 78 MCQ questions · 0 practice · 9 evaluated labs

# Topic MCQs Practice Evaluated Preview
1 What is zbus — vs a message queue 6 0 0 —
2 Function walkthrough — zbus channels 6 0 0 —
3 Channel, listener, publish literacy 6 0 0 —
4 Practice soft publish — two listeners 6 0 1 —
5 Eval soft two listeners 6 0 1 —
6 MPU to zbus — WHOAMI then listeners 6 0 1 —
7 Timer then MPU to zbus 6 0 1 —
8 Log then zbus 6 0 1 —
9 Scenario: desk zbus stamp 6 0 1 —
10 Scenario: desk sensor passport 6 0 1 —
11 Scenario: desk zbus bring-up 6 0 1 —
12 Scenario: desk zbus seal 6 0 1 —
13 Wrap toward steppers 6 0 0 —

Unit 19 — A4988 + NEMA (gpio-stepper)

Unit totals: 8 topics · 48 MCQ questions · 0 practice · 2 evaluated labs

# Topic MCQs Practice Evaluated Preview
1 VMOT lives on the purchased driver, never USB-C 6 0 0 —
2 Function walkthrough — gpio-stepper 6 0 0 —
3 STEP GPIO16, DIR GPIO17 6 0 0 —
4 Four coil wires versus STEP and DIR 6 0 0 —
5 EN stays on the module jumper 6 0 0 —
6 Set DIR and print DIR=1 6 0 1 —
7 Pulse 200 steps, then STEP:OK 6 0 1 —
8 UART setup of a driver waits 6 0 0 —

Unit 20 — TMC2209 UART

Unit totals: 5 topics · 30 MCQ questions · 0 practice · 0 evaluated labs

# Topic MCQs Practice Evaluated Preview
1 Why UART config is not a STEP pulse 6 0 0 —
2 UART1 GPIO15/18; console stays UART0 43/44 6 0 0 —
3 Zephyr adi,tmc2209 / TMC22xx 6 0 0 —
4 TMC:OK after a short move 6 0 0 —
5 AS5600 angle on I2C 8/9 — practice 6 0 0 —

Unit 21 — Wi-Fi STA + soft AP HTTP

Unit totals: 10 topics · 60 MCQ questions · 0 practice · 3 evaluated labs

# Topic MCQs Practice Evaluated Preview
1 STA versus AP — station is the graded join path 6 0 0 —
2 Zephyr net_if versus IDF esp_wifi 6 0 0 —
3 Function walkthrough — STA join and open soft-AP HTTP 6 0 0 —
4 Phone hotspot — set LAB_WIFI_* in the program 6 0 0 —
5 Thin connectivity facade versus a full Wi-Fi HAL 6 0 0 —
6 STA — NET:UP and IP= 6 0 1 —
7 Soft AP — start HTTP hello and print AP:UP 6 0 1 —
8 Human opens the AP page — UART AP:HIT 6 0 1 —
9 MCUboot slots versus this course simple-boot at 0x0 6 0 0 —
10 Wrap toward OTA 6 0 0 —

Unit 22 — OTA update path

Unit totals: 12 topics · 94 MCQ questions · 0 practice · 5 evaluated labs

# Topic MCQs Practice Evaluated Preview
1 Why field devices update over the air 8 0 0 —
2 Function walkthrough — OTA update client 6 0 0 —
3 MCUboot slots versus this course simple-boot at 0x0 8 0 0 —
4 Server grant — mint if pending, DELETE after download 8 0 0 —
5 DNS literacy — hostname resolve (information only) 8 0 0 —
6 Download image — OTA:GOT= 8 0 1 —
7 Verify download — OTA:OK 8 0 1 —
8 MCUboot swap literacy — course flash stays at 0x0 8 0 0 —
9 Scenario: fail closed — OTA:FAIL 8 0 1 —
10 Scenario: DNS fail — OTA:FAIL dns 8 0 1 —
11 Scenario: grant replay fails closed 8 0 1 —
12 Wrap toward the capstone 8 0 0 —

Unit 24 — Capstone

Unit totals: 5 topics · 30 MCQ questions · 0 practice · 0 evaluated labs

# Topic MCQs Practice Evaluated Preview
1 Capstone constraints and forbidden radios 6 0 0 —
2 Choose three prior systems 6 0 0 —
3 Serial contract: READY plus three earlier lines 6 0 0 —
4 Integration bring-up order 6 0 0 —
5 Certificate 3 — Product RTOS capstone EOC 6 0 0 —

Counts are from the live course catalog. MCQs = questions in topic checkpoint quizzes. Practice = formative run-only or SQL practice lane. Evaluated = submit-graded labs that count toward progress and certificates.

← All paid courses · LLM site guide