Zephyr project template
VojislavM opened this issue · comments
The template should include folder/file structure similar to this:
- The app folder contains an example hello world app with multiple
.conf
files - The board directory contains an example overlay for a DK and an example board definition folder
- The common folder includes the
active_object
and theapp_version
library. - The sample folder contains useful samples, like:
factory-shell
ble-dfu-test
, .... - The scripts folder contains useful test scripts (i.e.
ble_nus.py
)
Optionally:
- The drivers folder contains an example driver
- The dts filter contains an example dts yaml file
Things to add and to address:
tests
folder with one example that provides one or two unit tests (there could maybe also be a collection of unit tests foractive_oject
), all required infrastructure files that are needed to run them and a readme with instructions on how to run, expand, etc.- issue templates and labels
- github ci files, for now we only have release automation, later we can add building procedures and extra checks.
- As far as I understand we never (yet) had to modify
mcuboot
code, only changes were done through Kconfig options. In case if we have to do something specific (e.g. led blinking during dfu, like in relaxroll) would we need a separate application folder for bootloader?
@MarkoSagadin I would just add an mcuboot
folder in that case.
Things to do:
- follow Tjaz's advice above but:
- dont add acitve object
- add app_version as west module in west.yml
- skip useful samples for now
- dont add example sensor driver or dts
- structure of App folder should look like on of the recent projects. main.c should contain a hello world example.
- top level boards is a place for boards files and overlays that are used all over the project (app/samples) - check if we are currently correctly using this
- drivers folder can contain just empty kconfig and Cmakelist.txt
- add dts/bindings/.gitkeep just to have a place to start
- keep zephyr/module.yml as it is
This was implemented in the irnas-project-template
and irnas-zephyr-template
repos, so this issue can be closed.