Real-time Raspberry Pi ROS 2 image updated for Jazzy and 24.04

Some of you may remember the ROS 2 real-time image for Raspberry Pi that I presented at ROScon 2022 or in a previous post. @razr and I have worked on it and updated it to support ROS 2 Jazzy and Ubuntu 24.04. I just created a release for it here: Releases · ros-realtime/ros-realtime-rpi4-image · GitHub

Contrary to the previous efforts, this image now supports Raspberry Pi 3, 4, and 5! This gives a wider range of choices for people interested in running ROS on Raspberry Pis. I’m particularly excited to start using this on the Raspberry Pi 5 which gives exceptional performance both for normal code and in-terms of delivering a low scheduling latency.

Here are some preliminary real-time scheduling latency results based on measuring cyclictest latency during a heavy CPU stress test.

Enjoy!

13 Likes

This is great. Thank you :clap:t4:

Just wondering if the only way to configure and test is via a wired Ethernet?
My download did not include the nmcli, so no easy way to configure wireless was apparent.

This is documented: GitHub - ros-realtime/ros-realtime-rpi4-image: An image for the Raspberry Pi 4 with ROS 2 and Linux RT preinstalled

Was wondering, after installing your real-time kernel, would Moveit 2 work with this distribution?

Are the Debian packages of the PREEMPT_RT kernel builds available separately, so they can be installed on a “standard” RPi5 Ubuntu installation? Or does this only work with the full image you provided?

How does this compare to the real-time kernel provided by Ubuntu (How to enable Real-time Ubuntu on your machine  | Ubuntu)?

Regarding the latency tests, is the documentation at ros-realtime-rpi4-image/latency-analysis at master · ros-realtime/ros-realtime-rpi4-image · GitHub sufficient to reproduce your results?

After installing this OS, how do we connect to it? Is there a tutorial or some directions? I installed it with a password, but after booting, it asks for a public key!