OreSat firmware projects using Zephyr RTOS.
NOTE: This mostly rework of https://docs.zephyrproject.org/latest/develop/getting_started/index.html
-
Arch Linux
sudo pacman -S git cmake ninja gperf ccache dfu-util dtc wget \ python-dev python-pip python-setuptools python-tk python-wheel \ xz file make sdl2 stlink
-
Debian Linux
sudo apt install --no-install-recommends git cmake ninja-build gperf \ ccache dfu-util device-tree-compiler wget \ python3-dev python3-pip python3-setuptools python3-tk python3-wheel \ xz-utils file make libsdl2-dev libmagic1 stlink-tools
-
Arch Linux (from AUR)
paru -S zephyr-sdk-bin
-
Everything else
cd /opt wget https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.16.8/zephyr-sdk-0.16.8_linux-x86_64.tar.xz tar xvf zephyr-sdk-0.16.8_linux-x86_64.tar.xz cd zephyr-sdk-0.16.8 ./setup.sh
sudo cp /opt/zephyr-sdk-0.16.8/sysroots/x86_64-pokysdk-linux/usr/share/openocd/contrib/60-openocd.rules /etc/udev/rules.d
sudo udevadm control --reload
pip install west
west init -m https://github.com/oresat/oresat-zephyr --mr master zephyr-workspace
cd zephyr-workspace
west update
west zephyr-export
pip install -r zephyr/scripts/requirements.txt
While the latest oresat-configs release can be install via pip
,
for development, it is better to have latest code from the git repo.
cd oresat-configs
pip install -r requirements.txt
./build_and_install.sh
cd -
cd zephyr/samples/basic/blinky
west build -p always -b nucleo_f091rc .
west flash --runner openocd
- clang-format: Used to auto format the code. Can be installed with
the
clang-format
package.
Since the main communication bus on OreSat is a CAN bus, CAN bus monitoring tools are needed for development and testing.