This project is built as a workspace Zephyr application, with some additional requirements due to source generation.
- Install the required dependencies as desribed in the Zephyr Getting Started#Install Dependencies.
- Clone the efc repository into an empty directory (e.g.
~/eurus/efc/
). Container directory (~/eurus/
workspace) will contain Zephyr and additional modules.
Note: Clone the repository with --recurse-submodules flag to recursively update git submodules.
- Create a new Python virtual environment in the workspace, install west and configure zephyr-related dependencies.
cd ~/eurus
python3 -m venv install .venv
source .venv/bin/activate
pip install west
west init -l efc
west update
west zephyr-export
west packages pip --install
west sdk install
deactivate
- Create a efc-specific virtual environment and install the required packages:
cd ~/eurus/efc
python -m venv python_venv
source python_venv/bin/activate
pip install -r requirements.txt
deactivate
Note: Sourcing the efc virtual environment will not be necessary after the first time as CMake will use the virtual environment python binary.
Use west
or CMake to build for one of the supported boards:
cd ~/eurus
source .venv/bin/activate
cd efc
west build -b blackpill_f411ce app
The efc
project uses code formatting rules described in .clang-format
.
To ensure automatic code formatting, use pre-commit and install hooks:
pre-commit install