Quickstart

This guide builds the safety island firmware locally for the Arm Fixed Virtual Platform (fvp_baser_aemv8r_smp). The produced ELF runs either on a local FVP simulator or, more commonly, on Arm Virtual Hardware in the cloud.

For running the full Autoware + safety island loop on AVH, follow Arm Virtual Hardware deployment after building. For real hardware on the NXP S32Z270DC2, see NXP S32Z270DC2 (real HW).

Prerequisites

  • Ubuntu 22.04 (validated) with Docker installed.

  • Enough free disk space for the development container image plus the Zephyr SDK and build artifacts.

Clone the repository

$ git clone https://github.com/autowarefoundation/autoware-safety-island.git
$ cd autoware-safety-island
$ git submodule update --init --recursive

Enter the development container

The launch-dev-container.sh script pulls and runs the ghcr.io/autowarefoundation/autoware-safety-island:devcontainer image, which has the Zephyr SDK, west, and the Python tooling pre-installed.

$ ./launch-dev-container.sh

All build commands below are run inside this container.

Build the Zephyr firmware

$ ./build.sh

build.sh with no arguments compiles the default FVP target. It builds the CycloneDDS host-side IDL compiler, then invokes west build for fvp_baser_aemv8r_smp.

The resulting binary is written to:

build/actuation_module/zephyr/zephyr.elf

Other build.sh flags are documented in Testing and NXP S32Z270DC2 (real HW).

What to do next