Hi,
Environment:
- AGX Thor, JetPack 7.0
- Holoscan SDK 3.9.0
- HSB 2.5.0 (2.5-GA)
- holohub tag: holoscan-sdk-3.9.0
I am trying to build the vb1940 ROS 2 publisher example on AGX Thor and hitting a build error
- error: ‘infiniband_devices’ is not a member of ‘hololink::core’
The example uses hololink::core::infiniband_devices() but all public Holoscan Sensor Bridge releases (2.5.0, 2.5.0-PB6, 2.6.0-EA, 2.6.0-EA2) only have hololink::infiniband_devices().
I checked all holohub tags from holoscan-sdk-3.6.0 to holoscan-sdk-4.3.0 — the file has never been updated.
My question:
What is the correct combination of:
- holohub release tag
- Holoscan Sensor Bridge release tag
- JetPack version (7.0 / 7.1 / 7.2)
…to successfully build and run the vb1940 ROS 2 publisher example on AGX Thor?
Also, the HSB 2.5-GA release notes state “Container builds for Thor for use with Linux network receiver applications only.” — does this mean the holohub vb1940 example (which uses RoceReceiverOp) is not supported on Thor, and examples/linux_vb1940_player.py from the HSB repo should be used instead?
RoceReceiverOp works on devices with ConnectX NIC. Thor is mgbe.
My experience when attempting to build 4 of the holohub applications is that they generally do not work on Thor.
The kind response to my github/nvidia-holoscan/holohub issue where I said after the details that " Note: nothing in this repo that I’ve attempted to use on Nvidia Thor has worked." was
The IMX274 GPU-Resident demo application here in HoloHub targets
NVIDIA IGX Orin platforms and is not maintained for
NVIDIA Jetson AGX Thor.
This is what is currently working on my Thor Jetpack 7.2 with the most recent versions of holoscan-sensor-bridge and how to get them.
sudo apt install holoscan-cuda-13 #version 4.4.0.1-1
# In your venv
pip install holoscan-cu13 #version 4.4.0
https://docs.nvidia.com/holoscan/sensor-bridge/2.6.0/setup.html#sd-tab-item-3
To run C++ Li VB1940 accelerated networking SIPL based examples in the terminal cli use the following commands:
git clone https://github.com/nvidia-holoscan/holoscan-sensor-bridge
cd holoscan-sensor-bridge
git switch release-2.6.0
mkdir build && cd build
cmake -DHOLOLINK_BUILD_SIPL=1 -DHOLOLINK_BUILD_FUSA=1 -DHOLOLINK_BUILD_ROCE=0 \
-DCMAKE_INSTALL_PREFIX=/opt/nvidia/hololink ..
make -j10
sudo make install
# Then I manually copied
cp -r /opt/nvidia/hololink/python/hololink $VENV/lib/python3.12/site-packages/
holoscan-enumerate shows I have hsb_ip_version=0x2603
I don't know if you get firmware from https://leopardimaging.com/
or
hsb_flasher -H 192.168.0.2 -t 2603
Thanks @whitesscott for sharing the details. Did you anytime tested the ROS2 examples in the holohub sdk.
holohub/applications/holoscan_ros2/vb1940 at holoscan-sdk-4.3.0 · nvidia-holoscan/holohub
Regards,
Sivasubramaniyan
No I gave up on holohub as nothing I tried worked on Thor.
A potential avenue might be https://developer.nvidia.com/isaac
hello sivasubramaniyan.padmanab,
let’s have issue narrow down, could you please test vb1940 preview stream?
please also moving forward to the latest JP-7.2 for verification.
see-also Leopard imaging VB1940 Eagle player example.
you should execute linux_vb1940_player.py on AGX Thor.
I spoke too soon. Today ported https://github.com/nvidia-holoscan/holohub/.../holoscan_ros2 camera app to IMX274 with LinuxReceiverOp on Thor MGBE.
The holohub:imx274 docker image is fully functional with pubsub as below with ./holohub run imx274. It displays video equivalent to linux_imx274_player.
I’ll do pr’s for this work once I re-review nvidia-holoscan/holohub pr requirements.
Since imx274 works I then applied changes to another copy of the vb1940 files.
The following holohub:thor_vb1940 container builds and pubsub works. I cannot test the video portion since I don’t have a vb1940.
git clone https://github.com/nvidia-holoscan/holohub
cd holohub
git checkout -b thor-vb1940-holoscan-ros2
git apply /path/to/thor-vb1940-holoscan-ros2.patch
# Then build the docker container. It will take a while; modified Dockerfile is based on nvcr.io/nvidia/clara-holoscan/holoscan:v4.4.0-cuda13 to equal Thor Jetpack 7.2 software configuration as noted above.
./holohub build thor_vb1940
# Then to test
# Run next line once per boot — Linux receiver needs a large socket buffer
sudo sysctl -w net.core.rmem_max=31326208
# terminal 1: publisher (vb1940 → ROS2 topic vb1940/image)
./holohub run thor_vb1940 --no-docker-build # publisher, streams until Ctrl+C
# terminal 2: subscriber (ROS2 → Holoviz)
./holohub run thor_vb1940 subscriber --no-docker-build # Holoviz window on the topic
thor-vb1940-holoscan-ros2.patch.txt (103.8 KB)