NVIDIA Holoscan 5 Builds a Low-Latency Gravity Loop for Robot Arms

NVIDIA has published a Holoscan 5 tutorial that makes a Seeed Studio reBot Arm feel weightless through a gravity-compensation control loop. The example combines Pinocchio inverse dynamics, the motorbridge library and three custom Holoscan operators running in Python or C++.
- Holoscan 5 controls a Seeed Studio reBot Arm through a 400 Hz gravity loop.
- Pinocchio calculates inverse dynamics from the robot's URDF model.
- The example uses three custom operators in a Holoscan graph.
- NVIDIA reports lower tail latency when the control partition is pinned to a CPU core.
- The tutorial includes Python and C++ implementations.
A three-stage loop for torque control
The tutorial reads the robot's joint state at 400 Hz, calculates the torque needed to counteract gravity, and sends commands to the arm's motors. It uses the Seeed Studio reBot Arm B601-DM, whose quasi-direct-drive actuators provide high torque bandwidth for control and sensing.
The control loop is divided into three operators. The first reads the state of all seven motors on a clock that ticks every 2.5 ms. The second uses Pinocchio to load the robot's URDF model and calculate joint torques with the Recursive Newton-Euler Algorithm. The third sends the resulting command to the arm through the motorbridge library.
NVIDIA says the example combines gravity feedforward with light stiffness and damping. That allows the arm to support its own weight while yielding when guided by a person's hand, making it a starting point for robots that learn by demonstration, manipulate objects or work alongside people.
Holoscan focuses on latency and jitter
According to NVIDIA, Holoscan 5 brings robotic control and streamlined sensor processing into one programming model, with execution paths for CPU and GPU workloads. Developers can use the same operators, ports and graph APIs for workloads including CPU-centric motor control, GPU algorithms and AI inference.
Holoscan partitions can group chains of operators on one thread, avoiding cross-thread handoffs and unnecessary system calls. The runtime also supports clock and data-arrival triggers, while bounded drop-oldest queues stop outdated samples from accumulating.
The tutorial uses built-in NVTX annotations and Nsight Systems to inspect operator execution, host control-path latency and update jitter. NVIDIA's AI-generated summary says pinning the control partition to a CPU core reduces p99.99 latency by roughly 5x for the C++ implementation and 9.6x for the Python implementation. Those figures are claims from NVIDIA's summary, rather than independent measurements.
A practical entry point for robotics developers
NVIDIA describes the reBot Arm as an accessible platform for modern robotics control. The company says many low-cost arms use highly geared hobby servos suited only to positional control, while the reBot Arm's actuators support torque-oriented projects such as haptic and collaborative robotics work.
Starting with gravity compensation also provides a physical check of the robot model. Errors in joint axes, offsets, link placement, masses or moments of inertia can cause the arm to sag or push upward as its pose changes, issues that position-control examples can conceal.
The walkthrough uses Holoscan's Python API and requires Python 3.12 or newer on Linux. A complete C++ implementation is also included in the tutorial repository. NVIDIA says the walkthrough has been tested on Jetson Orin Nano, Jetson Thor and x86 Ubuntu 24.04 systems. Developers can download the Holoscan 5 SDK and follow the gravity-compensation tutorial on supported hardware.
NVIDIA Developer: Make a Robot Arm Feel Weightless with NVIDIA Holoscan 5


