Overview

Established a Zephyr RTOS v4.4.2 development environment on Ubuntu Linux and successfully compiled and executed a Zephyr application using the native simulation target.

The implementation verified the Zephyr build system, development dependencies, and host-based RTOS execution environment.

Development Environment

Component Configuration
Host operating system Ubuntu 26.04.1 LTS, x86-64
RTOS Zephyr v4.4.2
Python 3.14.4
West 1.5.0
CMake 4.2.3
Ninja 1.13.2
Zephyr SDK 1.0.1
Simulation target native_sim

Workspace Configuration

The Zephyr workspace was established at:

~/GitHub/embedded/zephyrproject

A Python virtual environment was created to isolate development dependencies.

cd ~/GitHub/embedded
mkdir -p zephyrproject
cd zephyrproject

python3 -m venv .venv
source .venv/bin/activate
python -m pip install west

On the development host, the python3.14-venv package was installed to provide the Python virtual environment support required by the system.

Zephyr Repository Initialization

The Zephyr workspace was initialized using West:

west init -m https://github.com/zephyrproject-rtos/zephyr --mr main .

The Zephyr repository was then checked out at version 4.4.2:

cd zephyr
git checkout v4.4.2
git describe --tags --exact-match
cd ..

The supporting repositories and Python dependencies were synchronized:

west update
west packages pip --install

Zephyr SDK Integration

The Zephyr SDK was installed through West:

west sdk install

The SDK installation was verified with:

west sdk list

The installed SDK provides cross-compilation toolchains for supported embedded architectures.

Native Simulation Build

The Zephyr Hello World sample was compiled for the native_sim target.

cd ~/GitHub/embedded/zephyrproject

source .venv/bin/activate

west build -b native_sim zephyr/samples/hello_world \
  -d build-hello -p always

The initial build identified missing 32-bit development headers on the Ubuntu host. The required multilib packages were installed:

sudo apt install gcc-multilib g++-multilib

The build was then repeated successfully, producing the native simulation executable.

Application Execution

The compiled application was executed using:

./build-hello/zephyr/zephyr.exe

The verified output was:

*** Booting Zephyr OS build v4.4.2 ***
Hello World! native_sim/native

This confirmed successful application compilation, Zephyr startup, and execution within the native simulation environment.

Technical Scope

The native_sim target executes a Zephyr application on the development host. It is distinct from building firmware for the ARM Cortex-M3 STM32F103 microcontroller.

This milestone verified the Zephyr development and execution environment. Custom application threads, synchronization mechanisms, and STM32-targeted Zephyr firmware remain future implementation activities.

Verification Summary

  • Zephyr v4.4.2 repository configured
  • West workspace and dependencies synchronized
  • Zephyr SDK installed and verified
  • Native simulation build completed
  • Zephyr application executed successfully
  • Console output verified

Next Engineering Activities

Subsequent development will focus on Zephyr thread creation, scheduling, semaphores, mutexes, and inter-thread communication.

The resulting application behavior will be verified in native simulation before proceeding to supported STM32 hardware targets.