ros-realtime-rpi4-image icon indicating copy to clipboard operation
ros-realtime-rpi4-image copied to clipboard

Figure out what should be included in the default `focal-rt-ros2` image

Open shuhaowu opened this issue 4 years ago • 6 comments

The focal-rt-ros2 image is built with Ubuntu 20.04.3 with a bunch of basic features (rootfs, install script):

I made these up. They're not necessarily the best choices. We need to figure out what we want to include in the default. We probably need:

  • [x] Sane /etc/security/limits.conf defaults for RT.
  • [ ] Optional isolcpus settings similar to what the reference system suggests, either as a compile time configuration or maybe via something similar to the ssh file that raspberry pi OS make you touch in the boot partition to enable ssh, or maybe a command line utility.

Not sure if there are anything else we need, but we can discuss here. If we want to remove something from what I made up, that's fine as well.

shuhaowu avatar Nov 03 '21 22:11 shuhaowu

I would like to add some items to the list:

  • Disable unattended upgrades on start-up (https://linuxconfig.org/disable-automatic-updates-on-ubuntu-20-04-focal-fossa-linux#:~:text=From%20the%20activities%20menu%20search,Automatically%20check%20for%20updates%20field.)
  • Install applications for real-time testing: rt-tests, stress, stress-ng, ROS 2 real-time related applications

carlossvg avatar Feb 07 '22 08:02 carlossvg

@carlossvg @shuhaowu, my suggestion is to merge https://github.com/ros-realtime/ros-realtime-rpi4-image/pull/4 and then we can send a new PR including new tools, etc. Happy to do it :)

LanderU avatar Feb 07 '22 08:02 LanderU

Disable unattended upgrades on start-up

Agreed. I'm literally waiting for that right now to finish so I can test the pi :joy:

rt-tests, stress, stress-ng,

:+1:

ROS 2 real-time related applications

Which ones? I want to be relatively careful on how much stuff to add, as we're already at 1.4GB out of a possible 2.0GB by GH releases.

shuhaowu avatar Feb 08 '22 02:02 shuhaowu

@shuhaowu

Agreed. I'm literally waiting for that right now to finish so I can test the pi joy

I killed the process, otherwise a new vanilla kernel is installed.

Which ones? I want to be relatively careful on how much stuff to add, as we're already at 1.4GB out of a possible 2.0GB by GH releases.

I would install the following ones:

  • https://github.com/ros2/examples/tree/master/rclcpp/executors/cbg_executor
  • https://github.com/ros2/demos/tree/master/pendulum_msgs
  • https://github.com/ros2/demos/tree/master/pendulum_control
  • https://github.com/ros-realtime/reference-system
  • https://gitlab.com/ApexAI/performance_test

I agree storage should be the priority here, let's see how much storage they add we can leave them out of the image. At least I would try to include one of them so the system can be benchmarked without an internet connection to download the application.

carlossvg avatar Feb 08 '22 07:02 carlossvg

Disable unattended upgrades on start-up (https://linuxconfig.org/disable-automatic-updates-on-ubuntu-20-04-focal-fossa-linux#:~:text=From%20the%20activities%20menu%20search,Automatically%20check%20for%20updates%20field.)

Done here: https://github.com/ros-realtime/ros-realtime-rpi4-image/pull/9

LanderU avatar Feb 11 '22 15:02 LanderU

@shuhaowu @LanderU We should add the ubuntu user to the tracing group so we don't need root privileges to use all the ros2 tracing features.

FYI @christophebedard

carlossvg avatar Mar 04 '22 12:03 carlossvg