Skip to content

PedroGilo12/micro-ROS-Zephyr-Examples

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 

Repository files navigation

micro-ROS Zephyr Examples

A collection of examples, tutorials, and common fixes for working with micro-ROS on Zephyr RTOS.

Zephyr RTOS Logo micro-ROS Logo

About This Repository

This repository aims to serve as a comprehensive starting point for those interested in working with micro-ROS and Zephyr. As this is a highly specialized domain with limited resources available online, my goal is to provide clear and practical guidance for newcomers.

This project was inspired by my experience during a Robot Navigation course at university, where I decided to combine my growing knowledge of ROS with my background in embedded systems to explore this niche field.

Here, you will find examples, tutorials, and solutions to common issues that I have developed throughout my learning journey.

Table of Contents

Requirements

  • ROS2 Jazzy (for running micro-ROS Agent)
  • Python 3.10+
  • CMake 3.20.5+

Zephyr Setup

Install dependencies

1. Use apt to install the required dependencies:

sudo apt install --no-install-recommends git cmake ninja-build gperf \
  ccache dfu-util device-tree-compiler wget python3-dev python3-venv python3-tk \
  xz-utils file make gcc gcc-multilib g++-multilib libsdl2-dev libmagic1

2. Verify the versions of the main dependencies installed on your system by entering:

cmake --version
python3 --version
dtc --version

Get Zephyr and install Python dependencies

3. Create a new virtual environment

python3 -m venv ~/zephyrproject/.venv

4. Activate the virtual environment

source ~/zephyrproject/.venv/bin/activate

Once activated, your shell prompt will be prefixed with (.venv).
You can deactivate the environment at any time by running:

deactivate

Note:
Remember to activate the virtual environment every time you start working.


5. Install West

pip install west

4. Get the Zephyr source code

west init -l samples/
west update

5. Export Zephyr CMake package

This allows CMake to automatically load the boilerplate code required for building Zephyr applications.

west zephyr-export

6. Install Python dependencies

Use West to install the required Python packages:

west packages pip --install

For Espressif Boards

If you are building for an Espressif board (e.g., ESP32, ESP32-C3, ESP32-S3, ESP32-C6), it is necessary to run the following command:

west blobs fetch hal_espressif

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors