Argus_camera does not start without a display

Argus_camera does not start without a display isaac_ros_argus_camera — isaac_ros_docs documentation

For example, if you remove the environment variable $DISPLAY, then there will be such an error:

Error log
admin@ubuntu:/workspaces/isaac_ros-dev$ echo $DISPLAY

admin@ubuntu:/workspaces/isaac_ros-dev$ ros2 launch isaac_ros_argus_camera isaac_ros_argus_camera_mono.launch.py 
[INFO] [launch]: All log files can be found below /home/admin/.ros/log/2023-12-08-10-31-57-870025-ubuntu-14759
[INFO] [launch]: Default logging verbosity is set to INFO
[INFO] [component_container_mt-1]: process started with pid [14803]
[component_container_mt-1] [INFO] [1702017118.471347090] [argus_mono_container]: Load Library: /opt/ros/humble/lib/libmono_node.so
[component_container_mt-1] [INFO] [1702017118.511876530] [argus_mono_container]: Found class: rclcpp_components::NodeFactoryTemplate<nvidia::isaac_ros::argus::ArgusMonoNode>
[component_container_mt-1] [INFO] [1702017118.512026389] [argus_mono_container]: Instantiate class: rclcpp_components::NodeFactoryTemplate<nvidia::isaac_ros::argus::ArgusMonoNode>
[component_container_mt-1] [INFO] [1702017118.518757295] [NitrosContext]: [NitrosContext] Creating a new shared context
[component_container_mt-1] [INFO] [1702017118.518984403] [argus_mono]: [NitrosNode] Initializing NitrosNode
[component_container_mt-1] [INFO] [1702017118.519446556] [NitrosContext]: [NitrosContext] Loading extension: gxf/lib/std/libgxf_std.so
[component_container_mt-1] [INFO] [1702017118.527848628] [NitrosContext]: [NitrosContext] Loading extension: gxf/lib/libgxf_gxf_helpers.so
[component_container_mt-1] [INFO] [1702017118.532455880] [NitrosContext]: [NitrosContext] Loading extension: gxf/lib/libgxf_sight.so
[component_container_mt-1] [INFO] [1702017118.537460547] [NitrosContext]: [NitrosContext] Loading extension: gxf/lib/libgxf_atlas.so
[component_container_mt-1] [INFO] [1702017118.543373966] [NitrosContext]: [NitrosContext] Loading application: '/opt/ros/humble/share/isaac_ros_nitros/config/type_adapter_nitros_context_graph.yaml'
[component_container_mt-1] [INFO] [1702017118.544919466] [NitrosContext]: [NitrosContext] Initializing application...
[component_container_mt-1] [INFO] [1702017118.549293018] [NitrosContext]: [NitrosContext] Running application...
[component_container_mt-1] 2023-12-08 10:31:58.549 WARN  gxf/std/program.cpp@514: No system specified. Nothing to do
[component_container_mt-1] [INFO] [1702017118.553180801] [NitrosContext]: [NitrosContext] Loading extension: gxf/lib/libgxf_argus.so
[component_container_mt-1] [INFO] [1702017118.711978150] [NitrosContext]: [NitrosContext] Loading application: '/opt/ros/humble/share/isaac_ros_argus_camera/config/argus_nitros_context_graph.yaml'
[component_container_mt-1] [INFO] [1702017118.712661362] [NitrosContext]: [NitrosContext] Initializing application...
[component_container_mt-1] [INFO] [1702017118.714298320] [NitrosContext]: [NitrosContext] Running application...
[component_container_mt-1] No EGL Display 
[component_container_mt-1] nvbufsurftransform: Could not get EGL display connection
[component_container_mt-1] 2023-12-08 10:31:58.714 WARN  gxf/std/program.cpp@514: No system specified. Nothing to do
[component_container_mt-1] [INFO] [1702017118.714884219] [argus_mono]: [NitrosNode] Starting NitrosNode
[component_container_mt-1] [INFO] [1702017118.714938620] [argus_mono]: [NitrosNode] Loading built-in preset extension specs
[component_container_mt-1] [INFO] [1702017118.718327513] [argus_mono]: [NitrosNode] Loading built-in extension specs
[component_container_mt-1] [INFO] [1702017118.718389786] [argus_mono]: [NitrosNode] Loading preset extension specs
[component_container_mt-1] [INFO] [1702017118.719463214] [argus_mono]: [NitrosNode] Loading extension specs
[component_container_mt-1] [INFO] [1702017118.719513679] [argus_mono]: [NitrosNode] Loading generator rules
[component_container_mt-1] [INFO] [1702017118.719905686] [argus_mono]: [NitrosNode] Loading extensions
[component_container_mt-1] [INFO] [1702017118.720027736] [argus_mono]: [NitrosContext] Loading extension: gxf/lib/libgxf_message_compositor.so
[component_container_mt-1] [INFO] [1702017118.721859321] [argus_mono]: [NitrosContext] Loading extension: gxf/lib/cuda/libgxf_cuda.so
[component_container_mt-1] [INFO] [1702017118.723363413] [argus_mono]: [NitrosContext] Loading extension: gxf/lib/serialization/libgxf_serialization.so
[component_container_mt-1] [INFO] [1702017118.728893625] [argus_mono]: [NitrosContext] Loading extension: gxf/lib/libgxf_isaac_messages.so
[component_container_mt-1] [INFO] [1702017118.736051451] [argus_mono]: [NitrosContext] Loading extension: gxf/lib/multimedia/libgxf_multimedia.so
[component_container_mt-1] [INFO] [1702017118.737412884] [argus_mono]: [NitrosContext] Loading extension: gxf/lib/image_proc/libgxf_tensorops.so
[component_container_mt-1] [INFO] [1702017118.745529767] [argus_mono]: [NitrosContext] Loading extension: gxf/lib/image_proc/libgxf_rectify_params_generator.so
[component_container_mt-1] [INFO] [1702017118.752937710] [argus_mono]: [NitrosContext] Loading extension: gxf/lib/libgxf_timestamp_correlator.so
[component_container_mt-1] [INFO] [1702017118.759250241] [argus_mono]: [NitrosNode] Loading graph to the optimizer
[component_container_mt-1] [INFO] [1702017118.763893141] [argus_mono]: [NitrosNode] Running optimization
[component_container_mt-1] [INFO] [1702017118.785468605] [argus_mono]: [NitrosNode] Obtaining graph IO group info from the optimizer
[component_container_mt-1] [INFO] [1702017118.786658291] [argus_mono]: [NitrosNode] Creating negotiated publishers/subscribers
[component_container_mt-1] [INFO] [1702017118.794013368] [argus_mono]: [NitrosNode] Starting negotiation...
[INFO] [launch_ros.actions.load_composable_nodes]: Loaded node '/argus_mono' in container '/argus_mono_container'
[component_container_mt-1] [INFO] [1702017119.795766220] [argus_mono]: [NitrosNode] Starting post negotiation setup
[component_container_mt-1] [INFO] [1702017119.795942127] [argus_mono]: [NitrosNode] Getting data format negotiation results
[component_container_mt-1] [INFO] [1702017119.795997232] [argus_mono]: [NitrosPublisher] Negotiation ended with no results
[component_container_mt-1] [INFO] [1702017119.796047217] [argus_mono]: [NitrosPublisher] Use only the compatible publisher: topic_name="/left/image_raw", data_format="nitros_image_rgb8"
[component_container_mt-1] [INFO] [1702017119.796223733] [argus_mono]: [NitrosPublisher] Negotiation ended with no results
[component_container_mt-1] [INFO] [1702017119.796289590] [argus_mono]: [NitrosPublisher] Use only the compatible publisher: topic_name="/left/camerainfo", data_format="nitros_camera_info"
[component_container_mt-1] [INFO] [1702017119.796892097] [argus_mono]: [NitrosNode] Exporting the final graph based on the negotiation results
[component_container_mt-1] [INFO] [1702017119.813167400] [argus_mono]: [NitrosNode] Wrote the final top level YAML graph to "/tmp/isaac_ros_nitros/graphs/TALTVMRRJJ/TALTVMRRJJ.yaml"
[component_container_mt-1] [INFO] [1702017119.813323883] [argus_mono]: [NitrosNode] Calling user's pre-load-graph callback
[component_container_mt-1] [INFO] [1702017119.813361260] [argus_mono]: [NitrosNode] Loading application
[component_container_mt-1] [INFO] [1702017119.813397612] [argus_mono]: [NitrosContext] Loading application: '/tmp/isaac_ros_nitros/graphs/TALTVMRRJJ/TALTVMRRJJ.yaml'
[component_container_mt-1] 2023-12-08 10:31:59.822 WARN  gxf/std/yaml_file_loader.cpp@1058: Using unregistered parameter 'left_camera_frame' in component ''.
[component_container_mt-1] 2023-12-08 10:31:59.822 WARN  gxf/std/yaml_file_loader.cpp@1058: Using unregistered parameter 'right_camera_frame' in component ''.
[component_container_mt-1] [INFO] [1702017119.824666393] [argus_mono]: [NitrosNode] Linking Nitros pub/sub to the loaded application
[component_container_mt-1] [INFO] [1702017119.825085921] [argus_mono]: [NitrosNode] Calling user's post-load-graph callback
[component_container_mt-1] [INFO] [1702017119.825143938] [argus_mono]: [ArgusCameraNode] postLoadGraphCallback().
[component_container_mt-1] [INFO] [1702017119.825263812] [argus_mono]: [NitrosContext] Initializing application...
[component_container_mt-1] 2023-12-08 10:32:00.149 ERROR /data/jenkins/ros/workspace/ly_debian-compatible-release-2.1/isaac_ros-dev/ros_ws/src/isaac_ros_image_pipeline/isaac_ros_image_proc/gxf/tensorops/extensions/tensorops/components/TensorStream.cpp@104: tensor stream creation failed.
[component_container_mt-1] 2023-12-08 10:32:00.149 ERROR gxf/std/entity_warden.cpp@406: Failed to initialize component 00054 (stream)
[component_container_mt-1] 2023-12-08 10:32:00.149 ERROR gxf/core/runtime.cpp@685: Could not initialize entity 'TALTVMRRJJ_global' (E52): GXF_FAILURE
[component_container_mt-1] 2023-12-08 10:32:00.149 ERROR gxf/std/program.cpp@236: Failed to activate entity 00052 named TALTVMRRJJ_global: GXF_FAILURE
[component_container_mt-1] 2023-12-08 10:32:00.149 ERROR gxf/std/program.cpp@238: Deactivating...
[component_container_mt-1] 2023-12-08 10:32:00.150 ERROR gxf/core/runtime.cpp@1384: Graph activation failed with error: GXF_FAILURE
[component_container_mt-1] [ERROR] [1702017120.150639257] [argus_mono]: [NitrosContext] GxfGraphActivate Error: GXF_FAILURE
[component_container_mt-1] [ERROR] [1702017120.150809372] [argus_mono]: [NitrosNode] runGraphAsync Error: GXF_FAILURE
[component_container_mt-1] terminate called after throwing an instance of 'std::runtime_error'
[component_container_mt-1]   what():  [NitrosNode] runGraphAsync Error: GXF_FAILURE
[ERROR] [component_container_mt-1]: process has died [pid 14803, exit code -6, cmd '/opt/ros/humble/lib/rclcpp_components/component_container_mt --ros-args --log-level info --ros-args -r __node:=argus_mono_container -r __ns:=/'].

But if you create a display :0 (and export DISPLAY=:0) by logging in to the board, then it starts working

Succesful run
admin@ubuntu:/workspaces/isaac_ros-dev$ export DISPLAY=:0
admin@ubuntu:/workspaces/isaac_ros-dev$ ros2 launch isaac_ros_argus_camera isaac_ros_argus_camera_mono.launch.py 
[INFO] [launch]: All log files can be found below /home/admin/.ros/log/2023-12-08-10-32-55-231444-ubuntu-15385
[INFO] [launch]: Default logging verbosity is set to INFO
[INFO] [component_container_mt-1]: process started with pid [15416]
[component_container_mt-1] [INFO] [1702017175.825443985] [argus_mono_container]: Load Library: /opt/ros/humble/lib/libmono_node.so
[component_container_mt-1] [INFO] [1702017175.865229584] [argus_mono_container]: Found class: rclcpp_components::NodeFactoryTemplate<nvidia::isaac_ros::argus::ArgusMonoNode>
[component_container_mt-1] [INFO] [1702017175.865369335] [argus_mono_container]: Instantiate class: rclcpp_components::NodeFactoryTemplate<nvidia::isaac_ros::argus::ArgusMonoNode>
[component_container_mt-1] [INFO] [1702017175.872228316] [NitrosContext]: [NitrosContext] Creating a new shared context
[component_container_mt-1] [INFO] [1702017175.872495049] [argus_mono]: [NitrosNode] Initializing NitrosNode
[component_container_mt-1] [INFO] [1702017175.872960383] [NitrosContext]: [NitrosContext] Loading extension: gxf/lib/std/libgxf_std.so
[component_container_mt-1] [INFO] [1702017175.881314635] [NitrosContext]: [NitrosContext] Loading extension: gxf/lib/libgxf_gxf_helpers.so
[component_container_mt-1] [INFO] [1702017175.885807328] [NitrosContext]: [NitrosContext] Loading extension: gxf/lib/libgxf_sight.so
[component_container_mt-1] [INFO] [1702017175.890833678] [NitrosContext]: [NitrosContext] Loading extension: gxf/lib/libgxf_atlas.so
[component_container_mt-1] [INFO] [1702017175.896753607] [NitrosContext]: [NitrosContext] Loading application: '/opt/ros/humble/share/isaac_ros_nitros/config/type_adapter_nitros_context_graph.yaml'
[component_container_mt-1] [INFO] [1702017175.898273455] [NitrosContext]: [NitrosContext] Initializing application...
[component_container_mt-1] [INFO] [1702017175.902740579] [NitrosContext]: [NitrosContext] Running application...
[component_container_mt-1] 2023-12-08 10:32:55.902 WARN  gxf/std/program.cpp@514: No system specified. Nothing to do
[component_container_mt-1] [INFO] [1702017175.906547736] [NitrosContext]: [NitrosContext] Loading extension: gxf/lib/libgxf_argus.so
[component_container_mt-1] [INFO] [1702017176.087735136] [NitrosContext]: [NitrosContext] Loading application: '/opt/ros/humble/share/isaac_ros_argus_camera/config/argus_nitros_context_graph.yaml'
[component_container_mt-1] [INFO] [1702017176.088417216] [NitrosContext]: [NitrosContext] Initializing application...
[component_container_mt-1] [INFO] [1702017176.090121137] [NitrosContext]: [NitrosContext] Running application...
[component_container_mt-1] 2023-12-08 10:32:56.090 WARN  gxf/std/program.cpp@514: No system specified. Nothing to do
[component_container_mt-1] [INFO] [1702017176.090759631] [argus_mono]: [NitrosNode] Starting NitrosNode
[component_container_mt-1] [INFO] [1702017176.090811985] [argus_mono]: [NitrosNode] Loading built-in preset extension specs
[component_container_mt-1] [INFO] [1702017176.094363129] [argus_mono]: [NitrosNode] Loading built-in extension specs
[component_container_mt-1] [INFO] [1702017176.094434493] [argus_mono]: [NitrosNode] Loading preset extension specs
[component_container_mt-1] [INFO] [1702017176.095527601] [argus_mono]: [NitrosNode] Loading extension specs
[component_container_mt-1] [INFO] [1702017176.095576755] [argus_mono]: [NitrosNode] Loading generator rules
[component_container_mt-1] [INFO] [1702017176.095965797] [argus_mono]: [NitrosNode] Loading extensions
[component_container_mt-1] [INFO] [1702017176.096097388] [argus_mono]: [NitrosContext] Loading extension: gxf/lib/libgxf_message_compositor.so
[component_container_mt-1] [INFO] [1702017176.098001478] [argus_mono]: [NitrosContext] Loading extension: gxf/lib/cuda/libgxf_cuda.so
[component_container_mt-1] [INFO] [1702017176.099598417] [argus_mono]: [NitrosContext] Loading extension: gxf/lib/serialization/libgxf_serialization.so
[component_container_mt-1] [INFO] [1702017176.105025042] [argus_mono]: [NitrosContext] Loading extension: gxf/lib/libgxf_isaac_messages.so
[component_container_mt-1] [INFO] [1702017176.112339628] [argus_mono]: [NitrosContext] Loading extension: gxf/lib/multimedia/libgxf_multimedia.so
[component_container_mt-1] [INFO] [1702017176.113712493] [argus_mono]: [NitrosContext] Loading extension: gxf/lib/image_proc/libgxf_tensorops.so
[component_container_mt-1] [INFO] [1702017176.121984213] [argus_mono]: [NitrosContext] Loading extension: gxf/lib/image_proc/libgxf_rectify_params_generator.so
[component_container_mt-1] [INFO] [1702017176.129466839] [argus_mono]: [NitrosContext] Loading extension: gxf/lib/libgxf_timestamp_correlator.so
[component_container_mt-1] [INFO] [1702017176.136181556] [argus_mono]: [NitrosNode] Loading graph to the optimizer
[component_container_mt-1] [INFO] [1702017176.141002553] [argus_mono]: [NitrosNode] Running optimization
[component_container_mt-1] [INFO] [1702017176.162741309] [argus_mono]: [NitrosNode] Obtaining graph IO group info from the optimizer
[component_container_mt-1] [INFO] [1702017176.163920085] [argus_mono]: [NitrosNode] Creating negotiated publishers/subscribers
[component_container_mt-1] [INFO] [1702017176.171469850] [argus_mono]: [NitrosNode] Starting negotiation...
[INFO] [launch_ros.actions.load_composable_nodes]: Loaded node '/argus_mono' in container '/argus_mono_container'
[component_container_mt-1] [INFO] [1702017177.173304601] [argus_mono]: [NitrosNode] Starting post negotiation setup
[component_container_mt-1] [INFO] [1702017177.173481954] [argus_mono]: [NitrosNode] Getting data format negotiation results
[component_container_mt-1] [INFO] [1702017177.173540900] [argus_mono]: [NitrosPublisher] Negotiation ended with no results
[component_container_mt-1] [INFO] [1702017177.173576678] [argus_mono]: [NitrosPublisher] Use only the compatible publisher: topic_name="/left/image_raw", data_format="nitros_image_rgb8"
[component_container_mt-1] [INFO] [1702017177.173765263] [argus_mono]: [NitrosPublisher] Negotiation ended with no results
[component_container_mt-1] [INFO] [1702017177.173811665] [argus_mono]: [NitrosPublisher] Use only the compatible publisher: topic_name="/left/camerainfo", data_format="nitros_camera_info"
[component_container_mt-1] [INFO] [1702017177.174366059] [argus_mono]: [NitrosNode] Exporting the final graph based on the negotiation results
[component_container_mt-1] [INFO] [1702017177.189513111] [argus_mono]: [NitrosNode] Wrote the final top level YAML graph to "/tmp/isaac_ros_nitros/graphs/YJWRWWQNHL/YJWRWWQNHL.yaml"
[component_container_mt-1] [INFO] [1702017177.189756642] [argus_mono]: [NitrosNode] Calling user's pre-load-graph callback
[component_container_mt-1] [INFO] [1702017177.189796964] [argus_mono]: [NitrosNode] Loading application
[component_container_mt-1] [INFO] [1702017177.189832102] [argus_mono]: [NitrosContext] Loading application: '/tmp/isaac_ros_nitros/graphs/YJWRWWQNHL/YJWRWWQNHL.yaml'
[component_container_mt-1] 2023-12-08 10:32:57.198 WARN  gxf/std/yaml_file_loader.cpp@1058: Using unregistered parameter 'left_camera_frame' in component ''.
[component_container_mt-1] 2023-12-08 10:32:57.199 WARN  gxf/std/yaml_file_loader.cpp@1058: Using unregistered parameter 'right_camera_frame' in component ''.
[component_container_mt-1] [INFO] [1702017177.200989556] [argus_mono]: [NitrosNode] Linking Nitros pub/sub to the loaded application
[component_container_mt-1] [INFO] [1702017177.201434057] [argus_mono]: [NitrosNode] Calling user's post-load-graph callback
[component_container_mt-1] [INFO] [1702017177.201497452] [argus_mono]: [ArgusCameraNode] postLoadGraphCallback().
[component_container_mt-1] [INFO] [1702017177.201629011] [argus_mono]: [NitrosContext] Initializing application...
[component_container_mt-1] [INFO] [1702017177.532599135] [argus_mono]: [NitrosContext] Running application...
[component_container_mt-1] [INFO] [1702017177.533156665] [argus_mono]: [NitrosNode] Starting a heartbeat timer (eid=55)
[component_container_mt-1] 2023-12-08 10:32:57.983 WARN  extensions/hawk/components/argus_camera.cpp@617: Failed to get calibration data from Argus!

And when I log out of the jetson user on the board itself and the DISPLAY:0 will cease to exist argus will also cease to run

What could be the problem and how to fix it?

Hi @Nikolay196 ,

The NVIDIA engineering team is currently working on your issue and will provide an update as soon as possible.

Thank you in advance,
Raffaello

If it helps, exactly the same thing happens with nvidia::isaac_ros::stereo_image_proc::DisparityNode in isaac_ros_stereo_image_proc

1 Like

argus_camera displays the preview in a window on the screen; however, a physical display is not required. It is a common scenario to config it using the following commands:
export DISPLAY=:0 specifies the display attaches to local machine.
xinit & starts a new X server session, as no physical display is detected by the graphics driver by default.

This should also help: X-WINDOWS EXIT AND LOGIN/LOGOUT

1 Like

But i never saw preview when i run argus_camera is it realy exist?
(On my work PC, I initialize the X11 server and use it to get windows from jetson Orin Nano, for example rqt, xterm, etc. run perfectly)

Okay argus_camera, but what about building a depth map using sgm there is the same error, but ess does not have such an error.

And I don’t need previews at the stages of getting a frame and building depth.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.