This repository contains a Zephyr example application. The main purpose of this
repository is to serve as a reference on how to structure Zephyr based
applications. Some of the features demonstrated in this example are:
This repository is versioned together with the Zephyr main tree. This
means that every time that Zephyr is tagged, this repository is tagged as well
with the same version number, and the manifest entry for zephyr
will point to the corresponding Zephyr tag. For example, example-application
v2.6.0 will point to Zephyr v2.6.0. Note that the main branch will always
point to the development branch of Zephyr, also main.
Getting Started
Before getting started, make sure you have a proper Zephyr development
environment. You can follow the official
Zephyr Getting Started Guide.
However, make sure to stop before the west init invocation, since that will instead be done with
the instructions below.
Initialization
The first step is to initialize the workspace folder (my-workspace) where
the zephyr app and all Zephyr modules will be cloned. You can do
that by running:
# initialize my-workspace for the zephyr app (main branch)
west init -m https://github.com/zephyrproject-rtos/oss-eu-2022-zephyr-app --mr main my-workspace
# update Zephyr modules
cd my-workspace
west update
Build & Run
The application can be built by running:
west build -b $BOARD app
where $BOARD is the target board. The custom_plank board found in this
repository can be used. Note that Zephyr sample boards may be used if an
appropriate overlay is provided (see app/boards).
A sample debug configuration is also provided. You can apply it by running:
west build -b $BOARD app -- -DOVERLAY_CONFIG=debug.conf
Note that you may also use it together with rtt.conf if using Segger RTT. Once
you have built the application you can flash it by running:
Zephyr Example Application
This repository contains a Zephyr example application. The main purpose of this repository is to serve as a reference on how to structure Zephyr based applications. Some of the features demonstrated in this example are:
This repository is versioned together with the Zephyr main tree. This means that every time that Zephyr is tagged, this repository is tagged as well with the same version number, and the manifest entry for
zephyrwill point to the corresponding Zephyr tag. For example,example-applicationv2.6.0 will point to Zephyr v2.6.0. Note that themainbranch will always point to the development branch of Zephyr, alsomain.Getting Started
Before getting started, make sure you have a proper Zephyr development environment. You can follow the official Zephyr Getting Started Guide. However, make sure to stop before the
west initinvocation, since that will instead be done with the instructions below.Initialization
The first step is to initialize the workspace folder (
my-workspace) where thezephyr appand all Zephyr modules will be cloned. You can do that by running:Build & Run
The application can be built by running:
where
$BOARDis the target board. Thecustom_plankboard found in this repository can be used. Note that Zephyr sample boards may be used if an appropriate overlay is provided (seeapp/boards).A sample debug configuration is also provided. You can apply it by running:
Note that you may also use it together with
rtt.confif using Segger RTT. Once you have built the application you can flash it by running: