# LR-EnviroStation
## Getting Started
Before getting started, make sure you have a proper Zephyr development
environment. Follow the official
[Zephyr Getting Started Guide](https://docs.zephyrproject.org/latest/getting_started/index.html).
### Initialization
The first step is to initialize the workspace folder (``my-workspace``) where
the ``LR-EnviroStation`` and all Zephyr modules will be cloned. Run the following
command:
```shell
# initialize my-workspace for the LR-EnviroStation (main branch)
west init -m https://git.dungeon.rip/Universe_Prison/LR-EnviroStation --mr main my-workspace
# update Zephyr modules
cd my-workspace
west update
```
### Building and running
To build the application, run the following command:
```shell
cd LR-EnviroStation
west build -b $BOARD app
```
where `$BOARD` is the target board.
You can use the `custom_plank` board found in this
repository. Note that Zephyr sample boards may be used if an
appropriate overlay is provided (see `app/boards`).
A sample debug configuration is also provided. To apply it, run the following
command:
```shell
west build -b $BOARD app -- -DEXTRA_CONF_FILE=debug.conf
```
Once you have built the application, run the following command to flash it:
```shell
west flash
```
### Testing
To execute Twister integration tests, run the following command:
```shell
west twister -T tests --integration
```
### Documentation
A minimal documentation setup is provided for Doxygen and Sphinx. To build the
documentation first change to the ``doc`` folder:
```shell
cd doc
```
Before continuing, check if you have Doxygen installed. It is recommended to
use the same Doxygen version used in [CI](.github/workflows/docs.yml). To
install Sphinx, make sure you have a Python installation in place and run:
```shell
pip install -r requirements.txt
```
API documentation (Doxygen) can be built using the following command:
```shell
doxygen
```
The output will be stored in the ``_build_doxygen`` folder. Similarly, the
Sphinx documentation (HTML) can be built using the following command:
```shell
make html
```
The output will be stored in the ``_build_sphinx`` folder. You may check for
other output formats other than HTML by running ``make help``.