Skip to content

How to install ade and AutowareAuto on NVIDIA Xavier AGX (should work also on NV and Nano)

After days of searching and Setting up my NVIDIA Xavier AGX 32 GB

several times here my installation description

aarch64 and arm64 are the same only 2 different names for same compilation

1. Docker on Jetson Xavier

Since Jetpack 4.2.1. their is already Docker installed on Jetson Xavier. https://github.com/NVIDIA/nvidia-docker/wiki/NVIDIA-Container-Runtime-on-Jetson Its important to activate Docker on Jetson Xavier AGX.

$ sudo systemctl restart docker

Their is one important thing, anytime you start ade with ade start, you have to run first source .aderc-arm64 otherwise, ade start, will setup a new docker container. (if you did start ade start without source .aderc-arm64 please immidiately stop the ade start with CTLR+C).

#------------------------------------

2. Ade / Autoware Install

$ cd ${HOME}

$ mkdir adehome

$ mkdir $HOME/.local/bin'

$ cd adehome

#Download ade for arm6

$ wget https://gitlab.com/ApexAI/ade-cli/uploads/6249b121c7d9a04beecf7a457cde6835/ade+aarch64

#rename and move ade

$ mv ade+aarch64 ade

$ chmod +x ade

$ mv ade ~/.local/bin

#Set ade Path and check it

$ PATH="HOME/.local/bin:PATH"

$ which ade

#Update ade

$ ade update-cli

#Now setup ade

$ touch .adehome

#download AutowareAuto

$ git clone --recurse-submodules https://gitlab.com/autowarefoundation/autoware.auto/AutowareAuto.git

$ cd AutowareAuto/

#Give permission to docker

(most people have these Problem, equal you use x86_64 or arm64)

$ sudo systemctl status docker

$ docker ps -a #checks the permission, result often=permission denied

$ sudo usermod -aG docker ${USER}

$ su - ${USER}

$ cd AutowareAuto

#only for arm64

$ source .aderc-arm64

#start and enter ad

$ ade start #can taker a while

$ ade enter

from here its same as in general description https://gitlab.com/ApexAI/autowareclass2020/-/blob/master/lectures/01_DevelopmentEnvironment/devenv.md

#------------------------------------

3. Install ROS 2

#ROS help

$ ros2 -h

#open first terminal

ade$ ros2 run demo_nodes_cpp talker

#open second terminal

cd adehome/autowareAuto

ade enter

ade$ ros2 run demo_nodes_cpp listener

#------------------------------------

If you want to install additional system packages inside ADE you can use the apt package management tool.

ade$ sudo apt update

ade$ sudo apt install ros-dashing-turtlesim

ade$ sudo apt install ros-dashing-rqt-*

ade$ sudo apt install byobu

Note: Installation of system packages does not persist between ade stop and ade start commands. Anything valuable that needs to persist should be placed in the adehome directory, which is stored on the host and mounted in the ADE environment.

#------------------------------------

4. Install Autoware.Auto from source

Binary version Autoware.Auto is already installed inside ADE. The installation directory is /opt/AutowareAuto/, which is provided as a docker volume.

From source version For installation from source you can use the previously cloned version and run the following commands:

ade$ cd AutowareAuto

ade$ colcon build

ade$ colcon test

ade$ colcon test-result

#------------------------------------

5. Run object detection demo Now you are ready to run one of the canonical applications of Autoware.Auto, a LiDAR-based object detection pipeline.

Prerequisites

a. Download a pre-recorded pcap file and put it in ${HOME}/adehome/data.

https://drive.google.com/open?id=1vNA009j-tsVVqSeYRCKh_G_tkJQrHvP-

b. Clone the lecture-specific configuration files:

ade$ git clone https://gitlab.com/ApexAI/autowareclass2020.git ~/autowareclass2020

Execute each of the following commands in a new ADE terminal.

Note: It is necessary to source the Autoware.Auto workspace before each of the following commands. You can do this by executing:

$ source /opt/AutowareAuto/setup.bash in the ADE terminal.

#------------------------------------

  1. Open new ADE Terminal
  2. cd adehome/AutowareAuto
  3. source .aderc-arm64
  4. ade start
  5. ade enter
  6. source /opt/AutowareAuto/setup.bash
  7. ade$ udpreplay ~/data/route_small_loop_rw-127.0.0.1.pcap

#------------------------------------

  1. Open new ADE Terminal Tab
  2. ade enter
  3. source /opt/AutowareAuto/setup.bash
  4. ade$ rviz2 -d /home/${USER}/autowareclass2020/code/src/01_DevelopmentEnvironment/aw_class2020.rviz

#-------------------------------------

  1. Open new ADE Terminal Tab
  2. ade enter
  3. source /opt/AutowareAuto/setup.bash
  4. ade$ ros2 run velodyne_node velodyne_cloud_node_exe __ns:=/lidar_front __params:=/home/${USER}/autowareclass2020/code/src/01_DevelopmentEnvironment/velodyne_node.param.yaml

#------------------------------------

  1. Open new ADE Terminal Tab
  2. ade enter
  3. source /opt/AutowareAuto/setup.bash
  4. ade$ ros2 run robot_state_publisher robot_state_publisher /opt/AutowareAuto/share/lexus_rx_450h_description/urdf/lexus_rx_450h.urdf

#------------------------------------

  1. Open new ADE Terminal Tab
  2. ade enter
  3. source /opt/AutowareAuto/setup.bash
  4. ade$ ros2 run point_cloud_filter_transform_nodes point_cloud_filter_transform_node_exe __ns:=/lidar_front __params:=/opt/AutowareAuto/share/point_cloud_filter_transform_nodes/param/vlp16_sim_lexus_filter_transform.param.yaml __node:=filter_transform_vlp16_front

#------------------------------------

  1. Open new ADE Terminal Tab
  2. ade enter
  3. source /opt/AutowareAuto/setup.bash
  4. ade$ ros2 run ray_ground_classifier_nodes ray_ground_classifier_cloud_node_exe __ns:=/perception __params:=/opt/AutowareAuto/share/autoware_auto_avp_demo/param/ray_ground_classifier.param.yaml

#------------------------------------

  1. Open new ADE Terminal Tab
  2. ade enter
  3. source /opt/AutowareAuto/setup.bash
  4. ade$ ros2 run euclidean_cluster_nodes euclidean_cluster_exe __ns:=/perception __params:=/opt/AutowareAuto/share/autoware_auto_avp_demo/param/euclidean_cluster.param.yaml

Hope it will help you, if you find bugs let me know, so we can update it, may AutowareAuto can add it to their description

Edited by Dejan Pangercic