Software Installation (RPI) - Offset-official/Nautilus-One GitHub Wiki

Required Software Installations

The following pages describe software install processes for the Raspberry Pi and Navigator combination, once there is a working OS installed.

ROS2 Humble

We are currently using ROS2 Humble because it is the most stable version of ROS2 compatible with our simulation and hardware. Use the following dockerfile to install ROS2 Humble on your Raspberry Pi.

FROM arm64v8/ros:humble-ros-base

ENV ROS_DISCOVERY_SERVER=127.0.0.1:11811

RUN mkdir /scripts
RUN echo '/opt/ros/humble/bin/fastdds discovery --server-id 0' >> /scripts/fastdds-init.sh
RUN chmod +x /scripts/fastdds-init.sh

RUN apt-get update && apt-get install -y tmux systemd

CMD ["tmux", "new", "-s", "myfastdds", "/scripts/fastdds-init.sh",";", "new-window", ";", "new-window"]

Setting up Navigator Firmware

  1. Get the latest stable build from Nautilus - Ardupilot for your respective architecture.
  2. Flash the image using Autopilot firmware option on BlueOS dashboard.

Committing Containers

Docker containers are ephemeral by design, meaning any changes or installations made to the ROS 2 container will not persist after the container is removed.

To preserve your changes, you can commit the container to a new image using the following command:

docker container commit -m "<Commit Message>" ros2-humble ros2-humble-commtd

This command creates a new image (ros2-humble-commtd) that includes all the modifications made to the container. You can use this image to create new containers as needed by replacing the original image name (ros:humble-ros-core) in the docker run command with ros2-humble-commtd.