ROS2 on AGX Xavier

I’d like to start to port my ROS1 based solution on a AGX Xavier to ROS2. Is anyone running ROS2 on the Xavier? I’ve also seen that the next release of ROS2 Foxy Fitzroy is targeting Ubuntu 20.04. L4T R32.4.2 is based on Ubuntu 18.04 - any idea when we can expect L4T based on 20.04?

Thanks
Michael

I cannot answer, but I saw something you might find of interest:
https://forums.developer.nvidia.com/t/xubuntu-20-04-focal-fossa-l4t-r32-3-1-custom-image-for-the-jetson-nano/121768

1 Like

I gave it a short try. It seems installable on AGX Xavier using default Ubuntu installation instructions.

2 Likes

I also can confirm that Autoware.Auto installs somehow on AGX. It is also ROS2 based

2 Likes

I am running ROS 2 on my Nano which I imagine would be the same for my new Xavier but I will let you know this weekend.

1 Like

you may also build a ros container based on l4t; to run it on nano with nvidia docker. there default aarch ros containers run, but have some issue with libGL
https://hub.docker.com/r/arm64v8/ros/

2 Likes

Confirmed, running ROS2 on Xavier with no issues.

1 Like

Thank you for sharing.

FYI, here is a Dockerfile for building ROS2 Foxy on L4T R32.4 (Ubuntu 18.04):

https://github.com/dusty-nv/jetson-containers/blob/master/Dockerfile.ros.foxy

Thank you for the update!
I did not try the foxy on Jetson as it would seem to require 20.04,

but I used to test ROS2 dashing container with realsense
jetson-containers/ros2_realsense at master · AndreV84/jetson-containers · GitHub

recently Intel seem revoked support for ROS2 realsense though
ref: remove realsense related repos from Foxy, and Rolling by dirk-thomas · Pull Request #25814 · ros/rosdistro · GitHub

In my experience Foxy doesn’t require 20.04, that’s just what the ROS maintainers provide the pre-built binaries for. So in that Dockerfile I built it from source for 18.04.

I tried using the Foxy dusty-nv containers but kept receiving cuda not found errors when trying to compile some modules.

So far I’m uncertain which path is the best to get ROS2 Foxy on a Jetson AGX Xavier.

  1. Use the containers on 18.04 standard jetson AGX xacier install
  2. Try to upgrade to 20.04 on jetson AGX xavier and install ROS2 following standard ROS2 install
  3. Try to install ROS2 on 18.04 using this script: GitHub - griz1112/build-ros2-foxy-for-jetson: script to build ros2 foxy desktop on jetson nano and jetson AGX Xavier

@ kimate21 can you share how you did your install?

@psammut did you set your Docker daemon’s default runtime to nvidia as shown here?

https://github.com/dusty-nv/jetson-containers#docker-default-runtime

If haven’t done this and try to build a container that needs CUDA compiler/libraries while it is building the container, you will get that error.