Holoscan Framework/Holoscan Sensor Bridge/Bring Up Process

From RidgeRun Developer Wiki



Previous: Holoscan Sensor Bridge/Hardware Connection Index Next: Holoscan Sensor Bridge/Running Demo






Preparing the Jetson System

For getting started, we recommend installing the Jetpack 6.x using the NVIDIA SDK manager. For reference, you can follow the instructions from JetPack/Getting_Started.

Some considerations during the process:

  • Do not attempt to flash the Orin AGX when having the display connected: this is a known bug.
  • Install the CUDA software stack: it is necessary for the Docker containers, which are useful for the demos.

Docker Environment for NVIDIA Runtime

To run the demos and Docker containers for the Holoscan Framework, you must set up Docker with the NVIDIA container runtime. This makes it possible to use CUDA-accelerated code within the containers.

Docker should be already included in JetPack, so running containers on Jetson is easy and does not require any installation.

To double-check the runtime functionality, please, use the following command:

sudo docker run --runtime=nvidia hello-world

Install git-lfs

Jetpack does not include git-lfs. So, to install it:


sudo apt-get update
sudo apt-get install -y git-lfs

Docker Environment Set Up

  1. On your host device open a terminal and run the following command to assign docker's permissions to your user.
    sudo usermod -aG docker $USER
  2. Create an API-KEY on NGC NVIDIA with your developer account.
  3. Run on terminal
    docker login nvcr.io
  4. For the username requested use
    Username: $oauthtoken

    And the password use the API-KEY generated before.

    NVIDIA Log in
  5. Clone the sensor bridge source code
    git clone https://github.com/nvidia-holoscan/holoscan-sensor-bridge
  6. Inside the repository run the following command to build the container into the Jetson AGX Orin
    sh docker/build.sh --igpu

    The aforementioned command may take more than one hour, depending on the Internet connection.

    Docker build running

Configure Network

The network system needs some modifications to work with Linux Sockets, given that Jetson does not support DPDK.

Support for large buffers

Modify the maximum memory of the buffer over sockets:

echo 'net.core.rmem_max = 31326208' | sudo tee /etc/sysctl.d/52-hololink-rmem_max.conf
sudo sysctl -p /etc/sysctl.d/52-hololink-rmem_max.conf

Configure the Network for a Static IP Address

The Hololink Sensor Bridge already sets static IPs on its network interfaces: 192.168.0.2 and 192.168.0.3 respectively. So, on the Jetson side, it is necessary to modify the IP address to become static.


Info
It is recommended to have a direct connection between the Hololink and the Jetson. Use the USB cable or the WiFi adapter to get SSH access.


You can set the IP of the Jetson to 192.168.0.101 with the following command:

sudo nmcli con add con-name hololink-eth0 ifname eth0 type ethernet ip4 192.168.0.101/24
sudo nmcli connection up hololink-eth0




RidgeRun Services

RidgeRun has expertise in offloading processing algorithms using FPGAs, from Image Signal Processing to AI offloading. Our services include:

  • Algorithm Acceleration using FPGAs.
  • Image Signal Processing IP Cores.
  • Linux Device Drivers.
  • Low Power AI Acceleration using FPGAs.
  • Accelerated C++ Applications.

And it includes much more. Contact us at https://www.ridgerun.com/contact.


Previous: Holoscan Sensor Bridge/Hardware Connection Index Next: Holoscan Sensor Bridge/Running Demo