Unable to see camera view while using web teleop

Hi - I am following the Web Teleop commands , I am able to control the robot motion through buttons on the web page , but the video feed is missing. How to troubleshoot that?

Hi @vipul , welcome to the forum! What Stretch version do you have (and, if Stretch 1 or 2, what is the wrist attachment)? The below instructions are for the Stretch 3.

The first thing to verify is that the cameras themselves are connected and working. To do so, access your Stretch via a GUI, by following the instructions here for either a “Tethered Setup” or “Untethered Setup.” Then, open your terminal and run stretch_camera_streams_check.py. This should load the Realsense and overhead camera streams. Close that and run stretch_camera_streams_check.py --d405 to load the gripper camera stream. If any of those video streams do not display, please reply here and I can help you diagnose it further.

If all the video streams display with the above commands, we know the cameras are working. The next step is to look into why the web app is not displaying it. Could you do the following:

  1. Launch the web app: colcon_cd stretch_web_teleop; ./launch_interface.sh
  2. Wait ~15 seconds.
  3. Attach to the screen session that runs ROS code for the web app: screen -r web_teleop_ros
  4. Enter command mode by pressing Ctrl + a
  5. In command mode, type: :hardcopy -h and press enter. This should save a copy of the screen output to a file in the web teleop folder called hardcopy.0.
  6. Detach from the screen session. Press Ctrl + a to enter command mode, and then press d to detach.
  7. Copy and paste the contents of the file here.

One I have the screen output, I’ll be able to better help diagnose why the camera streams are not displaying.

1 Like

Hi Amal - stretch_camera_streams_check.py this command runs completely fine and all the camera frames are displayed on screen. Now I when I try to go to the web page it shows a message, Unable to connect. Here is the file you have asked for :

[INFO] [launch]: All log files can be found below /home/hello-robot/.ros/log/202
4-06-04-22-02-35-447857-stretch-se3-3035-7893
[INFO] [launch]: Default logging verbosity is set to INFO
[INFO] [realsense2_camera_node-1]: process started with pid [7911]
[INFO] [realsense2_camera_node-2]: process started with pid [7913]
[INFO] [usb_cam-5]: process started with pid [7919]
[INFO] [stretch_driver-9]: process started with pid [7927]
[INFO] [static_transform_publisher-3]: process started with pid [7915]
[INFO] [d435i_accel_correction-4]: process started with pid [7917]
[INFO] [tf2_web_republisher-6]: process started with pid [7921]
[INFO] [joint_state_publisher-7]: process started with pid [7923]
[INFO] [robot_state_publisher-8]: process started with pid [7925]
[INFO] [rosbridge_websocket-10]: process started with pid [7929]
[INFO] [rosapi_node-11]: process started with pid [7931]
[INFO] [configure_video_streams.py-12]: process started with pid [7934]
[INFO] [sllidar_node-13]: process started with pid [7937]
[INFO] [scan_to_scan_filter_chain-14]: process started with pid [7940]
[INFO] [Empty "{}"-15]: process started with pid [7979]
[INFO] [Bool true-16]: process started with pid [7981]
[INFO] [gripper_camera depth_module.enable_auto_exposure true-17]: process start
ed with pid [7984]
[static_transform_publisher-3] [WARN] [1717552956.236162809] []: Old-style argum
ents are deprecated; see --help for new-style arguments
[static_transform_publisher-3] [INFO] [1717552956.245697939] [static_transform_p
ublisher_KO7r6Hxxeip2VGe0]: Spinning until stopped - publishing transform
[static_transform_publisher-3] translation: ('0.000000', '0.000000', '0.000000')
[static_transform_publisher-3] rotation: ('0.000000', '0.000000', '0.000000', '1
.000000')
[static_transform_publisher-3] from 'camera_link' to 'gripper_camera_link'
[sllidar_node-13] [INFO] [1717552956.263623196] [sllidar_node]: SLLidar running
on ROS2 package SLLidar.ROS2 SDK Version:1.0.1, SLLIDAR SDK Version:2.1.0
[sllidar_node-13] [INFO] [1717552956.270472260] [sllidar_node]: SLLidar S/N: BEA
5ED95C4E493CAA5E69EF02F754B6E
[sllidar_node-13] [INFO] [1717552956.270519890] [sllidar_node]: Firmware Ver: 1.
29
[sllidar_node-13] [INFO] [1717552956.270528413] [sllidar_node]: Hardware Rev: 7
[sllidar_node-13] [INFO] [1717552956.272064576] [sllidar_node]: SLLidar health s
tatus : 0
[sllidar_node-13] [INFO] [1717552956.272107300] [sllidar_node]: SLLidar health s
tatus : OK.
[scan_to_scan_filter_chain-14] [INFO] [1717552956.268825126] [laser_filter]: In
shadow configure done
[scan_to_scan_filter_chain-14] [WARN] [1717552956.268981849] [rcl.logging_rosout
]: Publisher already registered for provided node name. If this is due to multip
le nodes with the same name then all logs for that logger name will go out over
the existing publisher. As soon as any node with that name is destructed it will
 unregister the publisher, preventing any further logs for that name from being
published on the rosout topic.
[scan_to_scan_filter_chain-14] [WARN] [1717552956.272206664] [rcl.logging_rosout
]: Publisher already registered for provided node name. If this is due to multip
le nodes with the same name then all logs for that logger name will go out over
the existing publisher. As soon as any node with that name is destructed it will
 unregister the publisher, preventing any further logs for that name from being
published on the rosout topic.
[sllidar_node-13] [INFO] [1717552956.461636028] [sllidar_node]: current scan mod
e: Boost, sample rate: 8 Khz, max_distance: 12.0 m, scan frequency:10.0 Hz,
[d435i_accel_correction-4] [INFO] [1717552956.897215755] [d435i_accel_correction
_node]: d435i_accel_correction_node started
[realsense2_camera_node-2] [INFO] [1717552956.945457023] [gripper_camera]: RealS
ense ROS v4.54.1
[realsense2_camera_node-2] [INFO] [1717552956.946174157] [gripper_camera]: Built
 with LibRealSense v2.55.1
[realsense2_camera_node-2] [INFO] [1717552956.946199936] [gripper_camera]: Runni
ng with LibRealSense v2.55.1
[realsense2_camera_node-1] [INFO] [1717552956.946104853] [camera]: RealSense ROS
 v4.54.1
[realsense2_camera_node-1] [INFO] [1717552956.946717550] [camera]: Built with Li
bRealSense v2.55.1
[realsense2_camera_node-1] [INFO] [1717552956.946740794] [camera]: Running with
LibRealSense v2.55.1
[realsense2_camera_node-2] [INFO] [1717552957.072191347] [gripper_camera]: Devic
e with serial number 239722072179 was found.
[realsense2_camera_node-2]
[realsense2_camera_node-2] [INFO] [1717552957.072901545] [gripper_camera]: Devic
e with physical ID /sys/devices/pci0000:00/0000:00:0d.0/usb2/2-1/2-1:1.0/video4l
inux/video0 was found.
[realsense2_camera_node-2] [INFO] [1717552957.072937898] [gripper_camera]: Devic
e with name Intel RealSense D435I was found.
[realsense2_camera_node-2] [INFO] [1717552957.073155846] [gripper_camera]: Devic
e with port number 2-1 was found.
[realsense2_camera_node-1] [INFO] [1717552957.085181880] [camera]: Device with s
erial number 239722072179 was found.
[realsense2_camera_node-1]
[realsense2_camera_node-1] [INFO] [1717552957.085284846] [camera]: Device with p
hysical ID /sys/devices/pci0000:00/0000:00:0d.0/usb2/2-1/2-1:1.0/video4linux/vid
eo0 was found.
[realsense2_camera_node-1] [INFO] [1717552957.085305802] [camera]: Device with n
ame Intel RealSense D435I was found.
[realsense2_camera_node-1] [INFO] [1717552957.085521558] [camera]: Device with p
ort number 2-1 was found.
[realsense2_camera_node-1] [INFO] [1717552957.085584979] [camera]: Device USB ty
pe: 3.2
[realsense2_camera_node-1] [INFO] [1717552957.085601420] [camera]: Resetting dev
ice...
[realsense2_camera_node-2] [INFO] [1717552957.144516804] [gripper_camera]: Devic
e with serial number 130322271160 was found.
[realsense2_camera_node-2]
[realsense2_camera_node-2] [INFO] [1717552957.144604193] [gripper_camera]: Devic
e with physical ID /sys/devices/pci0000:00/0000:00:14.0/usb3/3-2/3-2.3/3-2.3.3/3
-2.3.3.1/3-2.3.3.1:1.0/video4linux/video8 was found.
[realsense2_camera_node-2] [INFO] [1717552957.144626451] [gripper_camera]: Devic
e with name Intel RealSense D405 was found.
[realsense2_camera_node-2] [INFO] [1717552957.144858026] [gripper_camera]: Devic
e with port number 3-2.3.3.1 was found.
[realsense2_camera_node-2] [INFO] [1717552957.144885075] [gripper_camera]: Devic
e USB type: 2.1
[realsense2_camera_node-2] [WARN] [1717552957.144900458] [gripper_camera]: Devic
e 130322271160 is connected using a 2.1 port. Reduced performance is expected.
[realsense2_camera_node-2] [INFO] [1717552957.144951080] [gripper_camera]: getPa
rameters...
[rosbridge_websocket-10] [INFO] [1717552957.194578609] [rosbridge_websocket]: Ro
sbridge WebSocket server started on port 9090
[usb_cam-5] [INFO] [1717552957.323407821] [navigation_camera]: Starting USB Came
ra Node...
[usb_cam-5] [INFO] [1717552957.411632806] [navigation_camera]: Camera Port: /dev
/hello-nav-head-camera
[usb_cam-5] [INFO] [1717552957.412097786] [navigation_camera]: Published to topi
c: /navigation_camera/image_raw
[usb_cam-5] [INFO] [1717552957.412522256] [navigation_camera]: Camera Properties
 Applied: {'format': 'MJPG', 'size': [800, 600], 'fps': 100, 'brightness': 10, '
contrast': 30, 'saturation': 80, 'hue': 0, 'gamma': 80, 'gain': 10, 'white_balen
ce_temp': 4600, 'sharpness': 3, 'backlight': 1}
[realsense2_camera_node-2] [INFO] [1717552957.444390276] [gripper_camera]: JSON
file is loaded! (/home/hello-robot/ament_ws/install/stretch_core/share/stretch_c
ore/config/HighAccuracyPreset.json)
[realsense2_camera_node-2] [INFO] [1717552957.444463201] [gripper_camera]: Devic
e Name: Intel RealSense D405
[realsense2_camera_node-2] [INFO] [1717552957.444474902] [gripper_camera]: Devic
e Serial No: 130322271160
[realsense2_camera_node-2] [INFO] [1717552957.444484765] [gripper_camera]: Devic
e physical port: /sys/devices/pci0000:00/0000:00:14.0/usb3/3-2/3-2.3/3-2.3.3/3-2
.3.3.1/3-2.3.3.1:1.0/video4linux/video8
[realsense2_camera_node-2] [INFO] [1717552957.444495313] [gripper_camera]: Devic
e FW version: 5.12.14.100
[realsense2_camera_node-2] [INFO] [1717552957.444504992] [gripper_camera]: Devic
e Product ID: 0x0B5B
[realsense2_camera_node-2] [INFO] [1717552957.444513654] [gripper_camera]: Sync
Mode: On
[realsense2_camera_node-2] [INFO] [1717552957.541952295] [gripper_camera]: Set R
OS param depth_module.depth_profile to default: 848x480x10
[realsense2_camera_node-2] [INFO] [1717552957.542600888] [gripper_camera]: Set R
OS param depth_module.infra_profile to default: 848x480x10
[realsense2_camera_node-2] [INFO] [1717552957.565116092] [gripper_camera]: Stopp
ing Sensor: Depth Module
[realsense2_camera_node-2] [INFO] [1717552957.582832784] [gripper_camera]: Start
ing Sensor: Depth Module
[realsense2_camera_node-2] [INFO] [1717552957.587201545] [gripper_camera]: Open
profile: stream_type: Color(0), Format: RGB8, Width: 848, Height: 480, FPS: 10
[realsense2_camera_node-2] [INFO] [1717552957.587250112] [gripper_camera]: Open
profile: stream_type: Depth(0), Format: Z16, Width: 848, Height: 480, FPS: 10
[realsense2_camera_node-2] [INFO] [1717552957.588937144] [gripper_camera]: RealS
ense Node Is Up!
[configure_video_streams.py-12] ['/home/hello-robot/ament_ws/install/stretch_web
_teleop/lib/stretch_web_teleop/configure_video_streams.py', '/home/hello-robot/a
ment_ws/install/stretch_web_teleop/share/stretch_web_teleop/config/configure_vid
eo_streams_params.yaml', 'False', '--ros-args', '--params-file', '/tmp/launch_pa
rams_pqro3udg']
[configure_video_streams.py-12] Traceback (most recent call last):
[configure_video_streams.py-12]   File "/home/hello-robot/ament_ws/install/stret
ch_web_teleop/lib/stretch_web_teleop/configure_video_streams.py", line 268, in <
module>
[configure_video_streams.py-12]     node = ConfigureVideoStreams(sys.argv[1], sy
s.argv[2] == "True")
[configure_video_streams.py-12]   File "/home/hello-robot/ament_ws/install/stret
ch_web_teleop/lib/stretch_web_teleop/configure_video_streams.py", line 31, in __
init__
[configure_video_streams.py-12]     self.image_params = yaml.safe_load(params)
[configure_video_streams.py-12]   File "/usr/lib/python3/dist-packages/yaml/__in
it__.py", line 162, in safe_load
[configure_video_streams.py-12]     return load(stream, SafeLoader)
[configure_video_streams.py-12]   File "/usr/lib/python3/dist-packages/yaml/__in
it__.py", line 114, in load
[configure_video_streams.py-12]     return loader.get_single_data()
[configure_video_streams.py-12]   File "/usr/lib/python3/dist-packages/yaml/cons
tructor.py", line 49, in get_single_data
[configure_video_streams.py-12]     node = self.get_single_node()
[configure_video_streams.py-12]   File "/usr/lib/python3/dist-packages/yaml/comp
oser.py", line 36, in get_single_node
[configure_video_streams.py-12]     document = self.compose_document()
[configure_video_streams.py-12]   File "/usr/lib/python3/dist-packages/yaml/comp
oser.py", line 55, in compose_document
[configure_video_streams.py-12]     node = self.compose_node(None, None)
[configure_video_streams.py-12]   File "/usr/lib/python3/dist-packages/yaml/comp
oser.py", line 84, in compose_node
[configure_video_streams.py-12]     node = self.compose_mapping_node(anchor)
[configure_video_streams.py-12]   File "/usr/lib/python3/dist-packages/yaml/comp
oser.py", line 133, in compose_mapping_node
[configure_video_streams.py-12]     item_value = self.compose_node(node, item_ke
y)
[configure_video_streams.py-12]   File "/usr/lib/python3/dist-packages/yaml/comp
oser.py", line 84, in compose_node
[configure_video_streams.py-12]     node = self.compose_mapping_node(anchor)
[configure_video_streams.py-12]   File "/usr/lib/python3/dist-packages/yaml/comp
oser.py", line 127, in compose_mapping_node
[configure_video_streams.py-12]     while not self.check_event(MappingEndEvent):
[configure_video_streams.py-12]   File "/usr/lib/python3/dist-packages/yaml/pars
er.py", line 98, in check_event
[configure_video_streams.py-12]     self.current_event = self.state()
[configure_video_streams.py-12]   File "/usr/lib/python3/dist-packages/yaml/pars
er.py", line 549, in parse_flow_mapping_key
[configure_video_streams.py-12]     raise ParserError("while parsing a flow mapp
ing", self.marks[-1],
[configure_video_streams.py-12] yaml.parser.ParserError: while parsing a flow ma
pping
[configure_video_streams.py-12]   in "/home/hello-robot/ament_ws/install/stretch
_web_teleop/share/stretch_web_teleop/config/configure_video_streams_params.yaml"
, line 50, column 16
[configure_video_streams.py-12] expected ',' or '}', but got '?'
[configure_video_streams.py-12]   in "/home/hello-robot/ament_ws/install/stretch
_web_teleop/share/stretch_web_teleop/config/configure_video_streams_params.yaml"
, line 71, column 13
[ERROR] [configure_video_streams.py-12]: process has died [pid 7934, exit code 1
, cmd '/home/hello-robot/ament_ws/install/stretch_web_teleop/lib/stretch_web_tel
eop/configure_video_streams.py /home/hello-robot/ament_ws/install/stretch_web_te
leop/share/stretch_web_teleop/config/configure_video_streams_params.yaml False -
-ros-args --params-file /tmp/launch_params_pqro3udg'].
[stretch_driver-9] [INFO] [1717552958.798189745] [stretch_driver]: For use with
S T R E T C H (TM) RESEARCH EDITION from Hello Robot Inc.
[stretch_driver-9] [INFO] [1717552958.798841027] [stretch_driver]: stretch_drive
r started
[Bool true-16] Setting parameter failed: ('Invalid access to undeclared paramete
r(s)', [])
[INFO] [gripper_camera depth_module.enable_auto_exposure true-17]: process has f
inished cleanly [pid 7984]
[INFO] [Bool true-16]: process has finished cleanly [pid 7981]
[stretch_driver-9] [WARN] [1717552960.344368736] [stretch_driver]: Robot not hom
ed. Call /home_the_robot service.
[stretch_driver-9] [INFO] [1717552960.345155770] [stretch_driver]: Changed to mo
de = position
[stretch_driver-9] [INFO] [1717552960.345624418] [stretch_driver]: broadcast_odo
m_tf = True
[stretch_driver-9] [INFO] [1717552960.370027151] [stretch_driver]: rate = 30.0 H
z
[stretch_driver-9] [INFO] [1717552960.373470284] [stretch_driver]: twist timeout
 = 0.5 s
[stretch_driver-9] [INFO] [1717552960.375495263] [stretch_driver]: base_frame_id
 = base_link
[stretch_driver-9] [INFO] [1717552960.380767797] [stretch_driver]: odom_frame_id
 = odom
[realsense2_camera_node-1] [INFO] [1717552963.141158582] [camera]: Device with s
erial number 239722072179 was found.
[realsense2_camera_node-1]
[realsense2_camera_node-1] [INFO] [1717552963.141213876] [camera]: Device with p
hysical ID /sys/devices/pci0000:00/0000:00:0d.0/usb2/2-1/2-1:1.0/video4linux/vid
eo0 was found.
[realsense2_camera_node-1] [INFO] [1717552963.141222446] [camera]: Device with n
ame Intel RealSense D435I was found.
[realsense2_camera_node-1] [INFO] [1717552963.141365707] [camera]: Device with p
ort number 2-1 was found.
[realsense2_camera_node-1] [INFO] [1717552963.141377163] [camera]: Device USB ty
pe: 3.2
[realsense2_camera_node-1] [INFO] [1717552963.141420146] [camera]: getParameters
...
[realsense2_camera_node-1] [INFO] [1717552963.507462663] [camera]: JSON file is
loaded! (/home/hello-robot/ament_ws/install/stretch_core/share/stretch_core/conf
ig/HighAccuracyPreset.json)
[realsense2_camera_node-1] [INFO] [1717552963.507551507] [camera]: Device Name:
Intel RealSense D435I
[realsense2_camera_node-1] [INFO] [1717552963.507578669] [camera]: Device Serial
 No: 239722072179
[realsense2_camera_node-1] [INFO] [1717552963.507599921] [camera]: Device physic
al port: /sys/devices/pci0000:00/0000:00:0d.0/usb2/2-1/2-1:1.0/video4linux/video
0
[realsense2_camera_node-1] [INFO] [1717552963.507620945] [camera]: Device FW ver
sion: 5.15.1
[realsense2_camera_node-1] [INFO] [1717552963.507641463] [camera]: Device Produc
t ID: 0x0B3A
[realsense2_camera_node-1] [INFO] [1717552963.507659619] [camera]: Sync Mode: On
[realsense2_camera_node-1] [INFO] [1717552963.662967026] [camera]: Set ROS param
 depth_module.depth_profile to default: 848x480x30
[realsense2_camera_node-1] [INFO] [1717552963.663327575] [camera]: Set ROS param
 depth_module.infra_profile to default: 848x480x30
[realsense2_camera_node-1] [INFO] [1717552963.668876810] [camera]: Set ROS param
 rgb_camera.color_profile to default: 1280x720x30
[realsense2_camera_node-1] [INFO] [1717552963.675965266] [camera]: Stopping Sens
or: Depth Module
[realsense2_camera_node-1] [INFO] [1717552963.676130298] [camera]: Stopping Sens
or: RGB Camera
[realsense2_camera_node-1] [INFO] [1717552963.676188921] [camera]: Stopping Sens
or: Motion Module
[realsense2_camera_node-1] [INFO] [1717552963.706410911] [camera]: Starting Sens
or: Depth Module
[realsense2_camera_node-1] [INFO] [1717552963.719275900] [camera]: Open profile:
 stream_type: Infra(1), Format: Y8, Width: 848, Height: 480, FPS: 30
[realsense2_camera_node-1] [INFO] [1717552963.719339225] [camera]: Open profile:
 stream_type: Depth(0), Format: Z16, Width: 848, Height: 480, FPS: 30
[realsense2_camera_node-1] [INFO] [1717552963.727140843] [camera]: Starting Sens
or: RGB Camera
[realsense2_camera_node-1] [INFO] [1717552963.729974353] [camera]: Open profile:
 stream_type: Color(0), Format: RGB8, Width: 1280, Height: 720, FPS: 30
[realsense2_camera_node-1] [INFO] [1717552963.755051433] [camera]: Starting Sens
or: Motion Module
[realsense2_camera_node-1] [INFO] [1717552963.756852137] [camera]: Open profile:
 stream_type: Accel(0)Format: MOTION_XYZ32F, FPS: 100
[realsense2_camera_node-1] [INFO] [1717552963.756926634] [camera]: Open profile:
 stream_type: Gyro(0)Format: MOTION_XYZ32F, FPS: 200
[realsense2_camera_node-1] [INFO] [1717552963.759160058] [camera]: RealSense Nod
e Is Up!
[realsense2_camera_node-1] [WARN] [1717552964.706817468] [camera]: XXX Hardware
Notification:Motion Module failure,1.71755e+12,Error,Hardware Error
[realsense2_camera_node-1] [WARN] [1717552964.706870732] [camera]: Hardware Noti
fication:Motion Module failure,1.71755e+12,Error,Hardware Error

The issue appears to be with yaml parsing of the configure_video_streams_params.yaml file.

Could you send me the following info?

  • What commit your web interface is on: Run colcon_cd stretch_web_teleop, run git log, and send me the hash of the top commit.
  • Have there been any local changes to configure_video_streams_params.yaml? From the same folder, run git diff and let me know if there have been any changes.
  • What version of yaml are you using? Open Python with python3 and run import yaml; yaml.__version__ and send me the output.
- commit 20555d4e76670282e4097a19349efdcf6a8ccf36 
gut diff :  
diff --git a/config/configure_video_streams_params.yaml b/config/configure_video_streams_params.yaml
index 655ee32..4211499 100644
--- a/config/configure_video_streams_params.yaml
+++ b/config/configure_video_streams_params.yaml
@@ -51,6 +51,7 @@
         "default": {
             # The mask contain params to make a circular mask over the image
             # Pass "mask": null to not create mask
+            "mask" : null
             "mask": {
                 "width": 768,
                 "height": 768,
@@ -60,32 +61,35 @@
             # The crop contain params to crop the image
             # x_max - x_min = mask_width and y_max - y_min = mask_height
             # Pass "crop": null to not crop image
-            "crop": {
-                "x_min": 0,
-                "x_max": 768,
-                "y_min": 128,
-                "y_max": 896
-            },
+            "crop" : null,
+            # "crop": {
+            #     "x_min": 0,
+            #     "x_max": 768,
+            #     "y_min": 128,
+            #     "y_max": 896
+            # },
             "rotate": null
         },
         "d405": {
             # The mask contain params to make a circular mask over the image
             # Pass "mask": null to not create mask
-            "mask": {
-                "width": 270,
-                "height": 270,
-                "radius": null,
-                "center": null
-            },
+            "mask" : null,
+            # "mask": {
+            #     "width": 270,
+            #     "height": 270,
+            #     "radius": null,
+            #     "center": null
+            # },
             # The crop contain params to crop the image
             # x_max - x_min = mask_width and y_max - y_min = mask_height
             # Pass "crop": null to not crop image
-            "crop": {
-                "y_min": 125,
-                "y_max": 395,
-                "x_min": 0,
-                "x_max": 270
-            },
+            "crop" : null,
+            # "crop": {
+            #     "y_min": 125,
+            #     "y_max": 395,
+            #     "x_min": 0,
+            #     "x_max": 270
+            # },
             "rotate": null
         },
     },

-YAML version

>>> yaml.__version__
'5.4.1'

I see your configure_video_streams_params.yaml file has some local changes. Were you attempting to develop within the stretch_web_teleop repository?

Firstly, I believe the error is due to a missing comma after the "mask": null line. Your file reads "mask": null but should read "mask": null, .

Let’s check whether the web teleop interface works with the original yaml file. In the stretch_web_teleop repo, run git stash. Then, rebuild the ROS2 package: cd ~/ament_ws; colcon build stretch_web_teleop. Then, try running the web interface again.

If it still does not work with the original yaml, please re-run the web app (with the un-changing yaml) and send me the output from the screen session (commands in the above message) and we can continue from there.

(Note: to recover the local changes, run git stash pop and then re-build the ROS2 package as outlined above.)

If you share your Stretch’s serial number (e.g., stretch-se3-<xxxx>) with us, we can also look into whether anything happened on our side to cause the local changes to the web app.

Note that another option is to entirely delete and re-install your ROS2 workspace. See instructions for that here.

Thank you @hello-amal for your quick response, Ultimately I had to re-install the ROS2 workspace and now things are working fine!

1 Like