Zephyr Modules
Extend the Zephyr RTOS with reusable, out-of-tree modules that integrate seamlessly with the build system.
Core Workflows
1. Defining a Module
Create the directory structure and metadata required for auto-discovery.
- Reference: module_definition.md
- Key Tools:
zephyr/module.yml,zephyr/Kconfig,zephyr/CMakeLists.txt.
2. West Manifest Integration
Adding your module to a workspace for distribution and versioning.
- Reference: west_integration.md
- Key Tools:
west.yml,west update,west build -t list_modules.
3. Library Wrapping (Glue Code)
Wrapping external C/C++ libraries as Zephyr modules.
- Reference: module_definition.md
- Key Tools:
zephyr_library(),zephyr_include_directories().
Quick Start (module.yml)
build:
cmake: .
kconfig: zephyr/Kconfig
Validation Checklist
-
west updatefetches module source from manifest without conflicts. -
west build -t list_modulesshows the module as discovered. - Module Kconfig options appear and can be enabled in build configuration.
- Module sources are compiled and linked into the target application as expected.
Automation Tools
- module_manifest_check.py: Validate required
build.cmakeandbuild.kconfigfields inmodule.yml.
Examples & Templates
- module_yml_template.yml: Starter module manifest for out-of-tree integration.
Resources
- References:
module_definition.md: Structure and module.yml specification.west_integration.md: Manifest configuration and discovery tools.
- Scripts:
module_manifest_check.py: Module manifest consistency checker.
- Assets:
module_yml_template.yml: Minimalzephyr/module.ymltemplate.
Converted and distributed by TomeVault — claim your Tome and manage your conversions.