C
cycob

  • Joined Jan 1, 2022
  • 8 best answers
  • jakaskerl

    Cool - I was suspicious with the references to noetic and wondered if I needed to "fill in something" for the capitalized "DISPLAY", but adding -e DISPLAY to my docker invocation did the trick:

    pi@GoPi5Go:~/GoPi5Go/ros2ws $ ./display_to_goPi5GoROS2.sh 
    CONTAINER ID   IMAGE          COMMAND                  CREATED      STATUS      PORTS     NAMES
    f88cd4ea79be   gopi5gor2hdp   "/ros_entrypoint.sh ?"   2 days ago   Up 2 days             gopi5goROS2
    
    Starting BASH TERMINAL (with DISPLAY available) to gopi5goROS2 DOCKER container
    docker exec -it -e DISPLAY gopi5goROS2 bash
    To exit:  exit (will not terminate container)
    
    *** Sourcing install/setup.bash
    pi@GoPi5Go:DOCKER:~/GoPi5Go/ros2ws $ pipeline_graph run "ros2 launch depthai_ros_driver camera.launch.py camera_model:=OAK-D-W params_file:=/home/pi/GoPi5Go/ros2ws/params/camera.yaml"
    
    QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-pi'
    Pipeline schema retrieved
    Program exited.
    0. ColorCamera.preview (12) -> ImageManip.inputImage (55)
    1. StereoDepth.depth (44) -> SpatialDetectionNetwork.inputDepth (49)
    2. ImageManip.out (57) -> SpatialDetectionNetwork.in (50)
    3. MonoCamera.out (27) -> StereoDepth.right (29)
    4. MonoCamera.out (22) -> StereoDepth.left (30)
    5. VideoEncoder.bitstream (48) -> XLinkOut.in (45)
    6. StereoDepth.depth (44) -> VideoEncoder.in (46)
    7. XLinkIn.out (28) -> MonoCamera.inputControl (24)
    8. SystemLogger.out (2) -> XLinkOut.in (1)
    9. XLinkIn.out (23) -> MonoCamera.inputControl (19)
    10. SpatialDetectionNetwork.out (54) -> XLinkOut.in (5)
    11. XLinkIn.out (18) -> ColorCamera.inputControl (6)
    12. VideoEncoder.bitstream (17) -> XLinkOut.in (14)
    13. IMU.out (4) -> XLinkOut.in (3)
    14. ColorCamera.video (13) -> VideoEncoder.in (15)
    qt.qpa.xcb: QXcbConnection: XCB error: 148 (Unknown), sequence: 191, resource id: 0, major code: 140 (Unknown), minor code: 20

    {launch_camera ROS2 Humble in Docker on Raspberry Pi}

  • I am running

    • ROS 2 Humble in Docker
    • over Raspberry Pi OS 64-bit Bookworm Server
    • on a Raspberry Pi 5

    My Oak-D-W97 camera is working well with depthai_ros_driver and apriltag_ros (by remapping the RGB camera images to the AprilTag detector).

    I am seeing tons of warnings (that do not seem to be affecting operation):

    [VideoEncoder(10)] [warning] Arrived frame type (14) is not either NV12 or YUV400p (8-bit Gray)
    
    pi@GoPi5Go:DOCKER:~/GoPi5Go/ros2ws $ more params/camera.yaml 
    /oak:
      ros__parameters:
        camera:
          i_enable_imu: true
          i_enable_ir: false
          i_nn_type: spatial
          i_pipeline_type: RGBD
          cam_pos_x: 0.08
          cam_pos_z: 0.162
          use_rviz: false
        nn:
          i_nn_config_path: depthai_ros_driver/mobilenet
        rgb:
          i_low_bandwidth: true
        left:
          i_low_bandwidth: true
        right:
          i_low_bandwidth: true
        stereo:
          i_low_bandwidth: true

    I saw recommendation on the forum to install "DepthAi pipeline_graph tool".

    When I attempt to run the pipeline_graph tool, it cores with the following error:

    pi@GoPi5Go:DOCKER:~/GoPi5Go/ros2ws $ pipeline_graph run "ros2 launch depthai_ros_driver camera.launch.py camera_model:=OAK-D-W params_file:=/home/pi/GoPi5Go/ros2ws/params/camera.yaml"
    qt.qpa.xcb: could not connect to display 
    qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
    This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
    
    Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, xcb.
    ...
    #9    Object "/usr/lib/python3/dist-packages/PySide2/QtWidgets.cpython-310-aarch64-linux-gnu.so", at 0x7fff71eb2923, in 
    #8    Object "/lib/aarch64-linux-gnu/libQt5Widgets.so.5", at 0x7fff723286b3, in QApplicationPrivate::init()
    #7    Object "/lib/aarch64-linux-gnu/libQt5Gui.so.5", at 0x7fff73aacbe7, in QGuiApplicationPrivate::init()
    #6    Object "/lib/aarch64-linux-gnu/libQt5Core.so.5", at 0x7fff7b683f47, in QCoreApplicationPrivate::init()
    #5    Object "/lib/aarch64-linux-gnu/libQt5Gui.so.5", at 0x7fff73aa98db, in QGuiApplicationPrivate::createEventDispatcher()
    #4    Object "/lib/aarch64-linux-gnu/libQt5Gui.so.5", at 0x7fff73aa942b, in QGuiApplicationPrivate::createPlatformIntegration()
    #3    Object "/lib/aarch64-linux-gnu/libQt5Core.so.5", at 0x7fff7b470f63, in QMessageLogger::fatal(char const*, ...) const
    #2    Object "/lib/aarch64-linux-gnu/libc.so.6", at 0x7fff878d712f, in abort
    #1    Object "/lib/aarch64-linux-gnu/libc.so.6", at 0x7fff878ea67b, in raise
    #0    Object "/lib/aarch64-linux-gnu/libc.so.6", at 0x7fff8792f200, in 
    Aborted (Signal sent by tkill() 14603 1000)
    Aborted (core dumped)

    Any guidance for me?

    • jakaskerl replied to this.
      • Best Answerset by cycob

      jakaskerl

      Cool - I was suspicious with the references to noetic and wondered if I needed to "fill in something" for the capitalized "DISPLAY", but adding -e DISPLAY to my docker invocation did the trick:

      pi@GoPi5Go:~/GoPi5Go/ros2ws $ ./display_to_goPi5GoROS2.sh 
      CONTAINER ID   IMAGE          COMMAND                  CREATED      STATUS      PORTS     NAMES
      f88cd4ea79be   gopi5gor2hdp   "/ros_entrypoint.sh ?"   2 days ago   Up 2 days             gopi5goROS2
      
      Starting BASH TERMINAL (with DISPLAY available) to gopi5goROS2 DOCKER container
      docker exec -it -e DISPLAY gopi5goROS2 bash
      To exit:  exit (will not terminate container)
      
      *** Sourcing install/setup.bash
      pi@GoPi5Go:DOCKER:~/GoPi5Go/ros2ws $ pipeline_graph run "ros2 launch depthai_ros_driver camera.launch.py camera_model:=OAK-D-W params_file:=/home/pi/GoPi5Go/ros2ws/params/camera.yaml"
      
      QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-pi'
      Pipeline schema retrieved
      Program exited.
      0. ColorCamera.preview (12) -> ImageManip.inputImage (55)
      1. StereoDepth.depth (44) -> SpatialDetectionNetwork.inputDepth (49)
      2. ImageManip.out (57) -> SpatialDetectionNetwork.in (50)
      3. MonoCamera.out (27) -> StereoDepth.right (29)
      4. MonoCamera.out (22) -> StereoDepth.left (30)
      5. VideoEncoder.bitstream (48) -> XLinkOut.in (45)
      6. StereoDepth.depth (44) -> VideoEncoder.in (46)
      7. XLinkIn.out (28) -> MonoCamera.inputControl (24)
      8. SystemLogger.out (2) -> XLinkOut.in (1)
      9. XLinkIn.out (23) -> MonoCamera.inputControl (19)
      10. SpatialDetectionNetwork.out (54) -> XLinkOut.in (5)
      11. XLinkIn.out (18) -> ColorCamera.inputControl (6)
      12. VideoEncoder.bitstream (17) -> XLinkOut.in (14)
      13. IMU.out (4) -> XLinkOut.in (3)
      14. ColorCamera.video (13) -> VideoEncoder.in (15)
      qt.qpa.xcb: QXcbConnection: XCB error: 148 (Unknown), sequence: 191, resource id: 0, major code: 140 (Unknown), minor code: 20

      {launch_camera ROS2 Humble in Docker on Raspberry Pi}

    • I am running ROS 2 Humble in Docker on Raspberry Pi 5, and want to uninstall the pipeline_graph tool from /home/pi/.local/bin

      (Per the repo instructions) I installed with:

      pi@GoPi5Go:DOCKER:~/GoPi5Go/ros2ws $ pip install git+https://github.com/luxonis/depthai_pipeline_graph.git
      ...
        WARNING: The script pipeline_graph is installed in '/home/pi/.local/bin' which is not on PATH.
        Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
      Successfully installed Qt.py-1.3.10 depthai-pipeline-graph-0.0.5 types-PySide2-5.15.2.1.7

      Is this the correct way to remove it from /home/pi/.local/bin?

      pip uninstall depthai-pipeline-graph
      pip uninstall Qt.py
      pip uninstall types-pyside2
      • I got it working with a custom launch file:

        slowrunner/GoPi5Goblob/main/systests/aruco/aruco_camera.launch.py

        header:
          stamp:
            sec: 1734286796
            nanosec: 425563519
          frame_id: oak_rgb_camera_optical_frame
        markers:
        - marker_id: 5
          pose:
            position:
              x: 0.05173255350509175
              y: -0.029103121047933316
              z: 0.5412244950190088
            orientation:
              x: 0.9975646146976297
              y: 0.026159965251779892
              z: -0.054218249093173264
              w: 0.035226086732218505
        boards: []


      • ros2 launch depthai_ros_driver camera.launch.py camera_model:=OAK-D-W params_file:=/home/pi/GoPi5Go/ros2ws/params/camera.yaml publishes:

        /oak/rgb/image_raw  
        /oak/rgb/camera_info

        and ros2 launch aruco_opencv aruco_tracker.launch.xml expects:

        /camera/image_raw
        /camera/camera_info

        The ROS2 launch command does not allow --ros-args --remap /oak/rgb:=/camera
        (and setting the camera base topic in aruco_tracker.yaml does not work:

        /**:
          ros__parameters:
            # cam_base_topic: camera/image_raw
            cam_base_topic: oak/rgb

        Any hints on how to do this?
        Do I have to write my own depthai_ros_driver/launch/aruco_camera.launch.py to do the remap?

          • Best Answerset by cycob

          I got it working with a custom launch file:

          slowrunner/GoPi5Goblob/main/systests/aruco/aruco_camera.launch.py

          header:
            stamp:
              sec: 1734286796
              nanosec: 425563519
            frame_id: oak_rgb_camera_optical_frame
          markers:
          - marker_id: 5
            pose:
              position:
                x: 0.05173255350509175
                y: -0.029103121047933316
                z: 0.5412244950190088
              orientation:
                x: 0.9975646146976297
                y: 0.026159965251779892
                z: -0.054218249093173264
                w: 0.035226086732218505
          boards: []


      • erik So the calibrate.py is using OpenCV on the host to recognize the markers?

        I’ll look for the ROS 2 marker reco package.

        Thanks

        • Any examples of using Oak-D-W (97) camera to publish ArUco markers detection in ROS 2 (Humble)?

          I have the mobilnet, rgb, and spatial publisher launchers working, but need ArUco marker publisher for docking navigation.

          I see the calibrate.py script does marker detection but it doesn’t look like there is a NN model that I can use in a ROS 2 launch file.

        • Matija Can you please explain in more details what you mean?

          YOLOv4 does not know that it is less likely to find a bicycle, a bird, or a bed "in a kitchen". These are examples of using external context.

          YOLOv4 does not use object context either. Some objects are commonly found together - table and chairs, people in squares (framed picture of family).

          I'm not disrespecting YOLOv4 - it is a demonstration that works very well. When I learn how to build my own "objects found in a home" I am hoping to find techniques to squeeze more objects with more confident recognitions into my autonomous home robot's limited processing. (Raspberry Pi5 and Oak-D-W-97)

          • izaac08
            My Pi5/PiOS Bookworm/GoPiGo3 Robot "GoPi5Go-Dave":

            Oak-D-W-97 and Oak-D-Lite with PiOS Bookworm 64-bit desktop on Raspberry Pi 5 4gb with cooler on my GoPiGo3 robot:
            Spatial Tiny YOLO v4 Performance on PiOS Bookworm 64-bit Desktop with Raspberry Pi 5 4GB (with Pi5 Cooler):

            • spatial_tiny_yolo.py: 25-30FPS uptime 5m load: 0.5 Temp 49degC Clock Freq 1.6GHz No Throttling (416x416 pixel tiny yolo v4 object recognition with depth active - console output only)

            • spatial_tiny_yolo.py -d: 25FPS uptime 5m load: 2.0 Temp 58degC Clock Freq 2.4GHz No Throttling (416x416 pixel tiny yolo v4 display with 1280x800 depth display and console out)

            • gui_spatial_tiny_yolo.py: 25FPS uptime 5m load: 1.3 Temp 56degC Clock Freq 2.4GHz No Throttling (416x416 pixel tiny yolo v4 display and console out - depth active but no separate depth display)

            depthai-demo (the Raspberry Pi version)

            This is my setup process on Pi5:

            Setup GoPi5Go Oak-D-W-97

            echo 'SUBSYSTEM=="usb", ATTRS{idVendor}=="03e7", MODE="0666"' | sudo tee /etc/udev/rules.d/80-movidius.rules
            sudo udevadm control --reload-rules && sudo udevadm trigger

            echo -e "RULES LOADED - NOW DISCONNECT AND RECONNECT THE USB CABLE TO THE OAK-D-LITE"

            
            2) Setup Python3 venv

            python3 -m venv --system-site-packages vdepthai

            
            3) Install Dependencies

            cd ~/pi5desk/systests/vdepthai/
            git clone luxonis/depthai.git
            source bin/activate
            pip3 install opencv-python opencv-contrib-python
            cd depthai
            python3 install_requirements.py

            
            4) copied helloworld, spatial_yolo ... from wali_pi5
            (https://github.com/slowrunner/GoPi5Go/tree/main/systests/Oak-D-W-97)
            
            5) Get depthai-python repository  (to get Tiny-YOLOv4 blob)

            cd vdepthai
            source bin/activate
            git clone luxonis/depthai-python.git
            cd depthai-python/examples
            python3 install_requirements.py
            mkdir -p ~/GoPi5Go/models/depthai
            cp /home/pi/GoPi5Go/systests/Oak-D-W-97/vdepthai/depthai-python/examples/models/yolo-v4-tiny-tf_openvino_2021.4_6shave.blob ~/GoPi5Go/models/depthai

          • Back when I was tasked with building interactive voice response (IVR) systems with speech recognition, it was often said humans only understand 50% of words when they do not know the context.

            In dreaming for my Raspberry Pi5 powered autonomous robot Dave to understand what he sees, I have been planning to (eventually) use transfer learning to enhance visual neural nets on objects he has “discovered”, but the name “Grok Vision” in the announcement by Elon Musk’s XAI company reminded me that integrating context into the neural net would likely improve object recognition significantly.

            Since the YOLOv4 object recognition program running on Oak cameras only uses 8% of the RPi5, and the Oak-D-W-97 camera can perform the recognition at 30 FPS (w/o image transfers), there should be capacity for the next generation of vision recognition algorithms.

            I think RTABmap is using a basic context derived from image features and pose to enhance vision localization.

            Is there an object recognition with context blob I can run on my Oak camera?

            • ISSUE: depthai_ros_driver camera.launch.py does not succeed to launch node

              To keep the Create3 robot from having seizures when I launch RTABmap, iRobotEducation has proposed using two fastdds unicast profiles and a topic republisher to bridge two ROS 2 environments - one for the Create3 robot, and the other for all user applications.

              I have implemented this proposed configuration, but now cannot get the depthai_ros_driver camera.launch.py to run properly, (which was working great in a single fastdds discovery server environment).

              I have turned DEPTHAI_DEBUG on (export DEPTHAI_DEBUG=1), and also tried with and w/o rsp_use_composition:=false to try to get more information:

              ROS 2 Humble
              DepthAI ROS Driver version 2.9.0

              $ dpkg -l | grep depthai
              ii  ros-humble-depthai                                2.23.0-1jammy.20240217.025930           arm64        DepthAI core is a C++ library which comes with firmware and an API to interact with OAK Platform
              ii  ros-humble-depthai-bridge                         2.9.0-1jammy.20240220.144959            arm64        The depthai_bridge package
              ii  ros-humble-depthai-descriptions                   2.9.0-1jammy.20240220.151314            arm64        The depthai_descriptions package
              ii  ros-humble-depthai-examples                       2.9.0-1jammy.20240304.153402            arm64        The depthai_examples package
              ii  ros-humble-depthai-filters                        2.9.0-1jammy.20240220.090729            arm64        Depthai filters package
              ii  ros-humble-depthai-ros                            2.9.0-1jammy.20240304.160133            arm64        The depthai-ros package
              ii  ros-humble-depthai-ros-driver                     2.9.0-1jammy.20240304.154647            arm64        Depthai ROS Monolithic node.
              ii  ros-humble-depthai-ros-msgs                       2.9.0-1jammy.20240219.090343            arm64        Package to keep interface independent of the driver

              My launch commands:

              # ros2 launch depthai_ros_driver camera.launch.py camera_model:=OAK-D-LITE params_file:=/home/pi/wali_pi5/c3ws/params/camera.yaml
              
              ros2 launch depthai_ros_driver camera.launch.py camera_model:=OAK-D-LITE params_file:=/home/pi/wali_pi5/c3ws/params/camera.yaml rsp_use_composition:=false

              My param file:

              /oak:
                ros__parameters:
                  camera:
                    i_enable_imu: false
                    i_enable_ir: false
                    i_nn_type: spatial
                    i_pipeline_type: RGBD
                    cam_pos_x: 0.127
                    cam_pos_z: 0.165
                    use_rviz: false
                  nn:
                    i_nn_config_path: depthai_ros_driver/mobilenet

              The output:

              pi@WaLiPi5:~/wali_pi5/c3ws $ cmds/launch_camera.sh 
              
                13:32:16 up 15:29,  0 users,  load average: 0.04, 0.11, 0.09
              LAUNCHING OAK-D-LITE camera.launch.py WITH params/camera.yaml (mobilenet + RGBD)
              ros2 launch depthai_ros_driver camera.launch.py camera_model:=OAK-D-LITE params_file:=/home/pi/wali_pi5/c3ws/params/camera.yaml
              
              [INFO] [launch]: All log files can be found below /home/pi/wali_pi5/c3ws/roslogs/2024-03-10-13-32-16-936733-WaLiPi5-706
              [INFO] [launch]: Default logging verbosity is set to INFO
              [INFO] [robot_state_publisher-1]: process started with pid [716]
              [INFO] [component_container-2]: process started with pid [718]
              [component_container-2] [DEBUG] [1710091937.254233895] [rclcpp]: signal handler installed
              [component_container-2] [DEBUG] [1710091937.254247710] [rclcpp]: deferred_signal_handler(): waiting for SIGINT/SIGTERM or uninstall
              [component_container-2] [DEBUG] [1710091937.254354543] [rcl]: Initializing wait set with '0' subscriptions, '2' guard conditions, '0' timers, '0' clients, '0' services
              [component_container-2] [DEBUG] [1710091937.254403265] [rcl]: Initializing node 'ComponentManager' in namespace ''
              [component_container-2] [DEBUG] [1710091937.254424487] [rcl]: Using domain ID of '0'
              [component_container-2] [DEBUG] [1710091937.260821135] [rcl]: Initializing publisher for topic name '/rosout'
              [component_container-2] [DEBUG] [1710091937.260870839] [rcl]: Expanded and remapped topic name '/rosout'
              [component_container-2] [DEBUG] [1710091937.262780931] [rcl]: Publisher initialized
              [component_container-2] [DEBUG] [1710091937.262819098] [rcl]: Node initialized
              [component_container-2] [DEBUG] [1710091937.263114283] [rcl]: Initializing subscription for topic name '/parameter_events'
              [component_container-2] [DEBUG] [1710091937.263140135] [rcl]: Expanded and remapped topic name '/parameter_events'
              [component_container-2] [DEBUG] [1710091937.266235523] [rcl]: Subscription initialized
              [component_container-2] [DEBUG] [1710091937.266828264] [rcl]: Initializing service for service name '~/_container/load_node'
              [component_container-2] [DEBUG] [1710091937.267080486] [rcl]: Expanded and remapped service name '/oak_container/_container/load_node'
              [component_container-2] [DEBUG] [1710091937.268479208] [rmw_fastrtps_cpp]: ************ Service Details *********
              [component_container-2] [DEBUG] [1710091937.268543653] [rmw_fastrtps_cpp]: Sub Topic rq/oak_container/_container/load_nodeRequest
              [component_container-2] [DEBUG] [1710091937.268549745] [rmw_fastrtps_cpp]: Pub Topic rr/oak_container/_container/load_nodeReply
              [component_container-2] [DEBUG] [1710091937.268553153] [rmw_fastrtps_cpp]: ***********
              [component_container-2] [DEBUG] [1710091937.268721005] [rcl]: Service initialized
              [component_container-2] [DEBUG] [1710091937.268884134] [rcl]: Initializing service for service name '~/_container/unload_node'
              [component_container-2] [DEBUG] [1710091937.268948764] [rcl]: Expanded and remapped service name '/oak_container/_container/unload_node'
              [component_container-2] [DEBUG] [1710091937.270005190] [rmw_fastrtps_cpp]: ************ Service Details *********
              [component_container-2] [DEBUG] [1710091937.270031190] [rmw_fastrtps_cpp]: Sub Topic rq/oak_container/_container/unload_nodeRequest
              [component_container-2] [DEBUG] [1710091937.270035301] [rmw_fastrtps_cpp]: Pub Topic rr/oak_container/_container/unload_nodeReply
              [component_container-2] [DEBUG] [1710091937.270038653] [rmw_fastrtps_cpp]: ***********
              [component_container-2] [DEBUG] [1710091937.270338023] [rcl]: Service initialized
              [component_container-2] [DEBUG] [1710091937.270383208] [rcl]: Initializing service for service name '~/_container/list_nodes'
              [component_container-2] [DEBUG] [1710091937.270399523] [rcl]: Expanded and remapped service name '/oak_container/_container/list_nodes'
              [component_container-2] [DEBUG] [1710091937.271488986] [rmw_fastrtps_cpp]: ************ Service Details *********
              [component_container-2] [DEBUG] [1710091937.271880597] [rmw_fastrtps_cpp]: Sub Topic rq/oak_container/_container/list_nodesRequest
              [component_container-2] [DEBUG] [1710091937.271924097] [rmw_fastrtps_cpp]: Pub Topic rr/oak_container/_container/list_nodesReply
              [component_container-2] [DEBUG] [1710091937.272010041] [rmw_fastrtps_cpp]: ***********
              [component_container-2] [DEBUG] [1710091937.272229430] [rcl]: Service initialized
              [robot_state_publisher-1] [INFO] [1710091937.300488353] [oak_state_publisher]: got segment oak
              [robot_state_publisher-1] [INFO] [1710091937.300652890] [oak_state_publisher]: got segment oak-d-base-frame
              [robot_state_publisher-1] [INFO] [1710091937.300670761] [oak_state_publisher]: got segment oak_left_camera_frame
              [robot_state_publisher-1] [INFO] [1710091937.300680705] [oak_state_publisher]: got segment oak_left_camera_optical_frame
              [robot_state_publisher-1] [INFO] [1710091937.300688576] [oak_state_publisher]: got segment oak_model_origin
              [robot_state_publisher-1] [INFO] [1710091937.300696409] [oak_state_publisher]: got segment oak_rgb_camera_frame
              [robot_state_publisher-1] [INFO] [1710091937.300705150] [oak_state_publisher]: got segment oak_rgb_camera_optical_frame
              [robot_state_publisher-1] [INFO] [1710091937.300714687] [oak_state_publisher]: got segment oak_right_camera_frame
              [robot_state_publisher-1] [INFO] [1710091937.300723964] [oak_state_publisher]: got segment oak_right_camera_optical_frame
              ^C[WARNING] [launch]: user interrupted with ctrl-c (SIGINT)
              [WARNING] [launch_ros.actions.load_composable_nodes]: Abandoning wait for the '/oak_container/_container/load_node' service, due to shutdown.
              [component_container-2] [INFO] [1710092100.453311231] [rclcpp]: signal_handler(signum=2)
              [component_container-2] [DEBUG] [1710092100.453366694] [rclcpp]: signal_handler(): notifying deferred signal handler
              [component_container-2] [DEBUG] [1710092100.453402898] [rclcpp]: deferred_signal_handler(): woken up due to SIGINT/SIGTERM or uninstall
              [component_container-2] [DEBUG] [1710092100.453423509] [rclcpp]: deferred_signal_handler(): shutting down
              [component_container-2] [DEBUG] [1710092100.453501120] [rclcpp]: deferred_signal_handler(): shutting down rclcpp::Context @ 0x555610aba400, because it had shutdown_on_signal == true
              [component_container-2] [DEBUG] [1710092100.453517083] [rcl]: Shutting down ROS client library, for context at address: 0x555610a4df10
              [component_container-2] [DEBUG] [1710092100.453557157] [rcl]: Finalizing publisher
              [component_container-2] [DEBUG] [1710092100.453587083] [rcl]: Finalizing service
              [INFO] [component_container-2]: process has finished cleanly [pid 718]
              [INFO] [robot_state_publisher-1]: process has finished cleanly [pid 716]
              [robot_state_publisher-1] [INFO] [1710092100.453389713] [rclcpp]: signal_handler(signum=2)
              [component_container-2] [DEBUG] [1710092100.454108842] [rcl]: Publisher finalized
              [component_container-2] [DEBUG] [1710092100.454193472] [rclcpp]: deferred_signal_handler(): waiting for SIGINT/SIGTERM or uninstall
              [component_container-2] [DEBUG] [1710092100.454803731] [rcl]: Service finalized
              [component_container-2] [DEBUG] [1710092100.454828157] [rcl]: Finalizing service
              [component_container-2] [DEBUG] [1710092100.455509120] [rcl]: Service finalized
              [component_container-2] [DEBUG] [1710092100.455532305] [rcl]: Finalizing service
              [component_container-2] [DEBUG] [1710092100.456210472] [rcl]: Service finalized
              [component_container-2] [DEBUG] [1710092100.456259546] [rcl]: Finalizing event
              [component_container-2] [DEBUG] [1710092100.456272768] [rcl]: Event finalized
              [component_container-2] [DEBUG] [1710092100.456280787] [rcl]: Finalizing subscription
              [component_container-2] [DEBUG] [1710092100.456767490] [rcl]: Subscription finalized
              [component_container-2] [DEBUG] [1710092100.456849120] [rcl]: Finalizing node
              [component_container-2] [DEBUG] [1710092100.460197823] [rcl]: Node finalized
               13:35:01 up 15:32,  0 users,  load average: 0.25, 0.18, 0.11

              It seems a clue that it was waiting for the container to load the node:

              [WARNING] [launch_ros.actions.load_composable_nodes]: Abandoning wait for the '/oak_container/_container/load_node' service, due to shutdown.

              How do I figure out why the node is not loading?

              For reference, I include the run without the rsp_use_composition:=false

              pi@WaLiPi5:~/wali_pi5/c3ws $ cmds/launch_camera.sh 
              
                14:14:20 up 16:11,  0 users,  load average: 0.16, 0.10, 0.09
              LAUNCHING OAK-D-LITE camera.launch.py WITH params/camera.yaml (mobilenet + RGBD)
              ros2 launch depthai_ros_driver camera.launch.py camera_model:=OAK-D-LITE params_file:=/home/pi/wali_pi5/c3ws/params/camera.yaml
              
              [INFO] [launch]: All log files can be found below /home/pi/wali_pi5/c3ws/roslogs/2024-03-10-14-14-20-967377-WaLiPi5-855
              [INFO] [launch]: Default logging verbosity is set to INFO
              [INFO] [component_container-1]: process started with pid [866]
              [component_container-1] [DEBUG] [1710094461.280306582] [rclcpp]: signal handler installed
              [component_container-1] [DEBUG] [1710094461.280452452] [rcl]: Initializing wait set with '0' subscriptions, '2' guard conditions, '0' timers, '0' clients, '0' services
              [component_container-1] [DEBUG] [1710094461.280523471] [rcl]: Initializing node 'ComponentManager' in namespace ''
              [component_container-1] [DEBUG] [1710094461.280552063] [rcl]: Using domain ID of '0'
              [component_container-1] [DEBUG] [1710094461.289920766] [rcl]: Initializing publisher for topic name '/rosout'
              [component_container-1] [DEBUG] [1710094461.289972933] [rcl]: Expanded and remapped topic name '/rosout'
              [component_container-1] [DEBUG] [1710094461.293627692] [rcl]: Publisher initialized
              [component_container-1] [DEBUG] [1710094461.293695562] [rcl]: Node initialized
              [component_container-1] [DEBUG] [1710094461.280320730] [rclcpp]: deferred_signal_handler(): waiting for SIGINT/SIGTERM or uninstall
              [component_container-1] [DEBUG] [1710094461.294431284] [rcl]: Initializing subscription for topic name '/parameter_events'
              [component_container-1] [DEBUG] [1710094461.294687673] [rcl]: Expanded and remapped topic name '/parameter_events'
              [component_container-1] [DEBUG] [1710094461.299755543] [rcl]: Subscription initialized
              [component_container-1] [DEBUG] [1710094461.300393246] [rcl]: Initializing service for service name '~/_container/load_node'
              [component_container-1] [DEBUG] [1710094461.300430543] [rcl]: Expanded and remapped service name '/oak_container/_container/load_node'
              [component_container-1] [DEBUG] [1710094461.302977765] [rmw_fastrtps_cpp]: ************ Service Details *********
              [component_container-1] [DEBUG] [1710094461.303037154] [rmw_fastrtps_cpp]: Sub Topic rq/oak_container/_container/load_nodeRequest
              [component_container-1] [DEBUG] [1710094461.303044728] [rmw_fastrtps_cpp]: Pub Topic rr/oak_container/_container/load_nodeReply
              [component_container-1] [DEBUG] [1710094461.303050524] [rmw_fastrtps_cpp]: ***********
              [component_container-1] [DEBUG] [1710094461.303422968] [rcl]: Service initialized
              [component_container-1] [DEBUG] [1710094461.303523524] [rcl]: Initializing service for service name '~/_container/unload_node'
              [component_container-1] [DEBUG] [1710094461.303539894] [rcl]: Expanded and remapped service name '/oak_container/_container/unload_node'
              [component_container-1] [DEBUG] [1710094461.304829987] [rmw_fastrtps_cpp]: ************ Service Details *********
              [component_container-1] [DEBUG] [1710094461.304859931] [rmw_fastrtps_cpp]: Sub Topic rq/oak_container/_container/unload_nodeRequest
              [component_container-1] [DEBUG] [1710094461.304865135] [rmw_fastrtps_cpp]: Pub Topic rr/oak_container/_container/unload_nodeReply
              [component_container-1] [DEBUG] [1710094461.304868746] [rmw_fastrtps_cpp]: ***********
              [component_container-1] [DEBUG] [1710094461.305126505] [rcl]: Service initialized
              [component_container-1] [DEBUG] [1710094461.305310876] [rcl]: Initializing service for service name '~/_container/list_nodes'
              [component_container-1] [DEBUG] [1710094461.305335283] [rcl]: Expanded and remapped service name '/oak_container/_container/list_nodes'
              [component_container-1] [DEBUG] [1710094461.306253283] [rmw_fastrtps_cpp]: ************ Service Details *********
              [component_container-1] [DEBUG] [1710094461.306278450] [rmw_fastrtps_cpp]: Sub Topic rq/oak_container/_container/list_nodesRequest
              [component_container-1] [DEBUG] [1710094461.306282894] [rmw_fastrtps_cpp]: Pub Topic rr/oak_container/_container/list_nodesReply
              [component_container-1] [DEBUG] [1710094461.306286264] [rmw_fastrtps_cpp]: ***********
              [component_container-1] [DEBUG] [1710094461.306505172] [rcl]: Service initialized
              ^C[WARNING] [launch]: user interrupted with ctrl-c (SIGINT)
              [component_container-1] [INFO] [1710094574.661359216] [rclcpp]: signal_handler(signum=2)
              [component_container-1] [DEBUG] [1710094574.661411679] [rclcpp]: signal_handler(): notifying deferred signal handler
              [component_container-1] [DEBUG] [1710094574.661470105] [rclcpp]: deferred_signal_handler(): woken up due to SIGINT/SIGTERM or uninstall
              [component_container-1] [DEBUG] [1710094574.661486364] [rclcpp]: deferred_signal_handler(): shutting down
              [component_container-1] [DEBUG] [1710094574.661600309] [rclcpp]: deferred_signal_handler(): shutting down rclcpp::Context @ 0x5555933ce400, because it had shutdown_on_signal == true
              [component_container-1] [DEBUG] [1710094574.661622142] [rcl]: Shutting down ROS client library, for context at address: 0x555593361f10
              [component_container-1] [DEBUG] [1710094574.661666568] [rcl]: Finalizing publisher
              [component_container-1] [DEBUG] [1710094574.662060401] [rcl]: Finalizing service
              [component_container-1] [DEBUG] [1710094574.662281790] [rcl]: Publisher finalized
              [component_container-1] [DEBUG] [1710094574.662368012] [rclcpp]: deferred_signal_handler(): waiting for SIGINT/SIGTERM or uninstall
              [INFO] [component_container-1]: process has finished cleanly [pid 866]
              [component_container-1] [DEBUG] [1710094574.662945179] [rcl]: Service finalized
              [component_container-1] [DEBUG] [1710094574.662971123] [rcl]: Finalizing service
              [component_container-1] [DEBUG] [1710094574.663377660] [rcl]: Service finalized
              [component_container-1] [DEBUG] [1710094574.663398753] [rcl]: Finalizing service
              [component_container-1] [DEBUG] [1710094574.663784956] [rcl]: Service finalized
              [component_container-1] [DEBUG] [1710094574.663837716] [rcl]: Finalizing event
              [component_container-1] [DEBUG] [1710094574.663849734] [rcl]: Event finalized
              [component_container-1] [DEBUG] [1710094574.663858512] [rcl]: Finalizing subscription
              [component_container-1] [DEBUG] [1710094574.664177456] [rcl]: Subscription finalized
              [component_container-1] [DEBUG] [1710094574.664259142] [rcl]: Finalizing node
              [component_container-1] [DEBUG] [1710094574.665834253] [rcl]: Node finalized
              [ERROR] [launch]: Caught exception in launch (see debug for traceback): cannot use Destroyable because destruction was requested
              [ERROR] [launch]: Caught exception in launch (see debug for traceback): cannot use Destroyable because destruction was requested
               14:16:15 up 16:13,  0 users,  load average: 0.11, 0.10, 0.09

              BTW, running Oak-D-Lite depthai examples such as YOLO spatial:

              (vdepthai) pi@WaLiPi5:~/wali_pi5/systests/Oak-D-Lite/vdepthai/spatial_tiny_yolo $ ./console_spatial_tiny_yolo.py 
              [2024-03-10 14:26:02.563] [info] DEPTHAI_DEBUG enabled, lowered DEPTHAI_LEVEL to 'debug'
              [2024-03-10 14:26:02.563] [debug] Python bindings - version: 2.21.2.0 from  build: 2023-04-06 00:33:07 +0000
              [2024-03-10 14:26:02.563] [debug] Library information - version: 2.21.2, commit:  from , build: 2023-04-05 23:12:49 +0000
              [2024-03-10 14:26:02.565] [debug] Initialize - finished
              [2024-03-10 14:26:02.673] [debug] Resources - Archive 'depthai-bootloader-fwp-0.0.24.tar.xz' open: 2ms, archive read: 107ms
              [2024-03-10 14:26:02.964] [debug] Device - OpenVINO version: 2022.1
              [2024-03-10 14:26:02.964] [debug] Device - BoardConfig: {"camera":[],"emmc":null,"gpio":[],"imu":null,"logDevicePrints":true,"logPath":null,"logSizeMax":null,"logVerbosity":null,"network":{"mtu":0,"xlinkTcpNoDelay":true},"nonExclusiveMode":false,"pcieInternalClock":null,"sysctl":[],"uart":[],"usb":{"flashBootedPid":63037,"flashBootedVid":999,"maxSpeed":4,"pid":63035,"vid":999},"usb3PhyInternalClock":null,"watchdogInitialDelayMs":null,"watchdogTimeoutMs":null} 
              libnop:
              0000: b9 11 b9 05 81 e7 03 81 3b f6 81 e7 03 81 3d f6 04 b9 02 00 01 ba 00 be be bb 00 bb 00 be be be
              0020: be be be 01 00 bb 00 be
              [2024-03-10 14:26:03.094] [debug] Resources - Archive 'depthai-device-fwp-3575b77f20e796b4e79953bf3d2ba22f0416ee8b.tar.xz' open: 2ms, archive read: 528ms
              [2024-03-10 14:26:04.035] [debug] Searching for booted device: DeviceInfo(name=3.1, mxid=184430101175A41200, X_LINK_BOOTED, X_LINK_USB_VSC, X_LINK_MYRIAD_X, X_LINK_SUCCESS), name used as hint only
              [184430101175A41200] [3.1] [0.799] [system] [warning] PRINT:LeonCss: BootloaderConfig.options1 checksum doesn't match. Is: 0x10304418 should be: 0xFCCBD2D0
              GPIO boot mode 0x16, interface USBD
              Setting aons(0..4) back to boot from flash (offset = 0)
              ====ENABLE WATCHDOG====1
              initial keepalive, countdown: 10
              PLL0: 700000 AUX_IO0: 24000 AUX_IO1: 24000 MCFG: 24000 MECFG: 24000
              Board init ret 3
              DepthAI Firmware - version: 3575b77f20e796b4e79953bf3d2ba22f0416ee8b
              eeprom configuration version: 55AA0006
              Reading VERSION 6 --- ->
              eeprom configuration load from user area, status: 0
              Found a device/board entry matching the eeprom data - Board: OAK-D-LITE Device: 
              --> brdInit ...
              brdInitAuxDevices: Error: SC = 27: io_initialize expander_cam_gpios_1 [OK]
              
              spi_N25Q_init: Flash JEDEC ID: ff ff ff
              Invalid Flash JEDEC ID... No NOR available
              Could not register the spi device
              inited hal ---
              def: 53 46 45 34 10 06 08 34 10 53 14 45 46 08 06
              val: 53 46 45 34 10 06 08 34 10 53 14 45 46 08 06
              Opening bus for IR driver: 1
              Failed to probe IR driver LM3644
              Opening bus for IR driver: 2
              Failed to probe IR driver LM3644
              Opening bus for IR driver: 3
              Failed to probe IR driver LM3644
              Closing EEPROm!
              MyriaX board configuration
              pll0 frequency: 700000, ref0 frequency: 24000
              Is booted from flash by bootloader: 0
              Networking not available...
              === Enumerating on socket: Cam_A / RGB / Center
              Probe failed I2C1 0x10 reg 300a: expected 9281, read 0000
              Probe failed I2C1 0x10 reg 300a: expected 9281, read 0000
              Probe failed I2C1 0x10 reg 300a: expected 9281, read 0000
              Probe failed I2C1 0x10 reg 300a: expected 9281, read 0000
              Probe failed I2C1 0x10 reg 300a: expected 9281, read 0000
              Probe failed I2C1 0x10 reg 300a: expected 9281, read 0000
              Probe failed I2C1 0x10 reg 300a: expected 9281, read 0000
                >> Registered camera IMX214R0 (imx214) as /dev/Camera_0
              camera socket: 0, name: color
                      config - w: 1920, h: 1080, type: COLOR
                      config - w: 3840, h: 2160, type: COLOR
                      config - w: 4056, h: 3040, type: COLOR
                      config - w: 4208, h: 3120, type: COLOR
              Adding socket 0: cam 4. Sen name: IMX214
              === Enumerating on socket: Cam_B / Left
              Probe failed I2C2 0x60 reg 300a: expected 9281, read 7750
              Probe failed I2C2 0x60 reg 300a: expected 9281, read 7750
              Probe failed I2C2 0x60 reg 300a: expected 9281, read 7750
              Probe failed I2C2 0x60 reg 300a: expected 9281, read 7750
              Probe failed I2C2 0x60 reg 300a: expected 9281, read 7750
              Probe failed I2C2 0x60 reg 300a: expected 9281, read 7750
                >> Registered camera MV200 (ov7750) as /dev/Camera_1
              camera socket: 1, name: left
              Adding socket 1: cam 6. Sen name: OV7251
              === Enumerating on socket: Cam_C / Right
              Probe failed I2C2 0x62 reg 300a: expected 9281, read 7750
              Probe failed I2C2 0x60 reg 300a: expected 9281, read 7750
              Probe failed I2C2 0x60 reg 300a: expected 9281, read 7750
              Probe failed I2C2 0x60 reg 300a: expected 9281, read 7750
              Probe failed I2C2 0x60 reg 300a: expected 9281, read 7750
              Probe failed I2C2 0x60 reg 300a: expected 9281, read 7750
              Probe failed I2C2 0x60 reg 300a: expected 9281, read 7750
                >> Registered camera MV200 (ov7750) as /dev/Camera_2
              camera socket: 2, name: right
              Adding socket 2: cam 6. Sen name: OV7251
              Found a device/board entry matching the eeprom data - Board: OAK-D-LITE Device: 
              Initializing XLink...
              UsbPumpVscAppI_Event: 5 VSC2_EVENT_ATTACH
              UsbPumpVscAppI_Event: 4 VSC2_EVENT_RESET
              UsbPumpVscAppI_Event: 4 VSC2_EVENT_RESET
              initial keepalive, countdown: 9
              UsbPumpVscAppI_Event: 0 VSC2_EVENT_INTERFACE_UP
              Done!
              Usb connection speed: Super - USB 3.0
              Temperature: Driver registered.
              Temperature: Initialized driver.
              Temperature: Sensor opened: CSS.
              Temperature: Sensor opened: MSS.
              Temperature: Sensor opened: UPA.
              Temperature: Sensor opened: DSS.
              [184430101175A41200] [3.1] [0.803] [system] [info] Memory Usage - DDR: 0.12 / 340.34 MiB, CMX: 2.04 / 2.50 MiB, LeonOS Heap: 7.52 / 77.23 MiB, LeonRT Heap: 2.89 / 41.14 MiB
              [184430101175A41200] [3.1] [0.803] [system] [info] Temperatures - Average: 38.30C, CSS: 38.65C, MSS 38.41C, UPA: 37.71C, DSS: 38.41C
              [184430101175A41200] [3.1] [0.803] [system] [info] Cpu Usage - LeonOS 63.48%, LeonRT: 1.84%
              [184430101175A41200] [3.1] [0.809] [system] [warning] PRINT:LeonCss: I: [Timesync] [   3488436] [XLin] startSync:130     Timesync | Callback not set
              [2024-03-10 14:26:04.861] [debug] Schema dump: {"connections":[{"node1Id":1,"node1Output":"out","node1OutputGroup":"","node2Id":5,"node2Input":"in","node2InputGroup":""},{"node1Id":4,"node1Output":"depth","node1OutputGroup":"","node2Id":1,"node2Input":"inputDepth","node2InputGroup":""},{"node1Id":0,"node1Output":"preview","node1OutputGroup":"","node2Id":1,"node2Input":"in","node2InputGroup":""},{"node1Id":3,"node1Output":"out","node1OutputGroup":"","node2Id":4,"node2Input":"right","node2InputGroup":""},{"node1Id":2,"node1Output":"out","node1OutputGroup":"","node2Id":4,"node2Input":"left","node2InputGroup":""}],"globalProperties":{"calibData":null,"cameraTuningBlobSize":null,"cameraTuningBlobUri":"","leonCssFrequencyHz":700000000.0,"leonMssFrequencyHz":700000000.0,"pipelineName":null,"pipelineVersion":null,"sippBufferSize":18432,"sippDmaBufferSize":16384,"xlinkChunkSize":-1},"nodes":[[0,{"id":0,"ioInfo":[[["","video"],{"blocking":false,"group":"","id":39,"name":"video","queueSize":8,"type":0,"waitForMessage":false}],[["","still"],{"blocking":false,"group":"","id":37,"name":"still","queueSize":8,"type":0,"waitForMessage":false}],[["","isp"],{"blocking":false,"group":"","id":36,"name":"isp","queueSize":8,"type":0,"waitForMessage":false}],[["","preview"],{"blocking":false,"group":"","id":38,"name":"preview","queueSize":8,"type":0,"waitForMessage":false}],[["","raw"],{"blocking":false,"group":"","id":35,"name":"raw","queueSize":8,"type":0,"waitForMessage":false}],[["","frameEvent"],{"blocking":false,"group":"","id":34,"name":"frameEvent","queueSize":8,"type":0,"waitForMessage":false}],[["","inputConfig"],{"blocking":false,"group":"","id":33,"name":"inputConfig","queueSize":8,"type":3,"waitForMessage":false}],[["","inputControl"],{"blocking":true,"group":"","id":32,"name":"inputControl","queueSize":8,"type":3,"waitForMessage":false}]],"name":"ColorCamera","properties":[185,25,185,27,0,3,0,0,0,185,3,0,0,0,185,5,0,0,0,0,0,185,5,0,0,0,0,0,0,0,0,0,0,0,0,185,3,0,0,0,185,3,0,0,0,0,0,0,0,0,0,0,0,0,0,255,189,0,255,0,0,0,129,160,1,129,160,1,255,255,255,255,0,136,0,0,240,65,0,136,0,0,128,191,136,0,0,128,191,1,185,4,0,0,0,0,3,3,4,4,4]}],[1,{"id":1,"ioInfo":[[["","out"],{"blocking":false,"group":"","id":31,"name":"out","queueSize":8,"type":0,"waitForMessage":false}],[["","passthroughDepth"],{"blocking":false,"group":"","id":30,"name":"passthroughDepth","queueSize":8,"type":0,"waitForMessage":false}],[["","passthrough"],{"blocking":false,"group":"","id":29,"name":"passthrough","queueSize":8,"type":0,"waitForMessage":false}],[["","boundingBoxMapping"],{"blocking":false,"group":"","id":28,"name":"boundingBoxMapping","queueSize":8,"type":0,"waitForMessage":false}],[["","in"],{"blocking":false,"group":"","id":27,"name":"in","queueSize":5,"type":3,"waitForMessage":true}],[["","inputDepth"],{"blocking":false,"group":"","id":26,"name":"inputDepth","queueSize":4,"type":3,"waitForMessage":true}]],"name":"SpatialDetectionNetwork","properties":[185,10,130,128,171,185,0,189,12,97,115,115,101,116,58,95,95,98,108,111,98,8,0,0,185,7,0,136,0,0,0,63,80,4,186,12,136,0,0,32,65,136,0,0,96,65,136,0,0,184,65,136,0,0,216,65,136,0,0,20,66,136,0,0,104,66,136,0,0,162,66,136,0,0,164,66,136,0,0,7,67,136,0,0,41,67,136,0,0,172,67,136,0,128,159,67,187,2,189,6,115,105,100,101,49,51,188,12,3,0,0,0,4,0,0,0,5,0,0,0,189,6,115,105,100,101,50,54,188,12,1,0,0,0,2,0,0,0,3,0,0,0,136,0,0,0,63,136,0,0,0,63,185,2,100,129,136,19,4,255]}],[2,{"id":2,"ioInfo":[[["","out"],{"blocking":false,"group":"","id":25,"name":"out","queueSize":8,"type":0,"waitForMessage":false}],[["","raw"],{"blocking":false,"group":"","id":24,"name":"raw","queueSize":8,"type":0,"waitForMessage":false}],[["","frameEvent"],{"blocking":false,"group":"","id":23,"name":"frameEvent","queueSize":8,"type":0,"waitForMessage":false}],[["","inputControl"],{"blocking":true,"group":"","id":22,"name":"inputControl","queueSize":8,"type":3,"waitForMessage":false}]],"name":"MonoCamera","properties":[185,9,185,27,0,3,0,0,0,185,3,0,0,0,185,5,0,0,0,0,0,185,5,0,0,0,0,0,0,0,0,0,0,0,0,185,3,0,0,0,185,3,0,0,0,0,0,0,0,0,0,0,0,0,0,1,189,0,255,2,136,0,0,240,65,0,3,3]}],[3,{"id":3,"ioInfo":[[["","out"],{"blocking":false,"group":"","id":21,"name":"out","queueSize":8,"type":0,"waitForMessage":false}],[["","raw"],{"blocking":false,"group":"","id":20,"name":"raw","queueSize":8,"type":0,"waitForMessage":false}],[["","frameEvent"],{"blocking":false,"group":"","id":19,"name":"frameEvent","queueSize":8,"type":0,"waitForMessage":false}],[["","inputControl"],{"blocking":true,"group":"","id":18,"name":"inputControl","queueSize":8,"type":3,"waitForMessage":false}]],"name":"MonoCamera","properties":[185,9,185,27,0,3,0,0,0,185,3,0,0,0,185,5,0,0,0,0,0,185,5,0,0,0,0,0,0,0,0,0,0,0,0,185,3,0,0,0,185,3,0,0,0,0,0,0,0,0,0,0,0,0,0,2,189,0,255,2,136,0,0,240,65,0,3,3]}],[4,{"id":4,"ioInfo":[[["","depth"],{"blocking":false,"group":"","id":17,"name":"depth","queueSize":8,"type":0,"waitForMessage":false}],[["","rectifiedLeft"],{"blocking":false,"group":"","id":15,"name":"rectifiedLeft","queueSize":8,"type":0,"waitForMessage":false}],[["","syncedLeft"],{"blocking":false,"group":"","id":16,"name":"syncedLeft","queueSize":8,"type":0,"waitForMessage":false}],[["","syncedRight"],{"blocking":false,"group":"","id":12,"name":"syncedRight","queueSize":8,"type":0,"waitForMessage":false}],[["","rectifiedRight"],{"blocking":false,"group":"","id":11,"name":"rectifiedRight","queueSize":8,"type":0,"waitForMessage":false}],[["","outConfig"],{"blocking":false,"group":"","id":9,"name":"outConfig","queueSize":8,"type":0,"waitForMessage":false}],[["","debugExtDispLrCheckIt2"],{"blocking":false,"group":"","id":8,"name":"debugExtDispLrCheckIt2","queueSize":8,"type":0,"waitForMessage":false}],[["","debugDispCostDump"],{"blocking":false,"group":"","id":10,"name":"debugDispCostDump","queueSize":8,"type":0,"waitForMessage":false}],[["","confidenceMap"],{"blocking":false,"group":"","id":7,"name":"confidenceMap","queueSize":8,"type":0,"waitForMessage":false}],[["","debugDispLrCheckIt2"],{"blocking":false,"group":"","id":6,"name":"debugDispLrCheckIt2","queueSize":8,"type":0,"waitForMessage":false}],[["","debugDispLrCheckIt1"],{"blocking":false,"group":"","id":13,"name":"debugDispLrCheckIt1","queueSize":8,"type":0,"waitForMessage":false}],[["","debugExtDispLrCheckIt1"],{"blocking":false,"group":"","id":5,"name":"debugExtDispLrCheckIt1","queueSize":8,"type":0,"waitForMessage":false}],[["","disparity"],{"blocking":false,"group":"","id":14,"name":"disparity","queueSize":8,"type":0,"waitForMessage":false}],[["","inputConfig"],{"blocking":false,"group":"","id":4,"name":"inputConfig","queueSize":4,"type":3,"waitForMessage":false}],[["","left"],{"blocking":false,"group":"","id":3,"name":"left","queueSize":8,"type":3,"waitForMessage":true}],[["","right"],{"blocking":false,"group":"","id":2,"name":"right","queueSize":8,"type":3,"waitForMessage":true}]],"name":"StereoDepth","properties":[185,22,185,5,185,11,0,2,136,0,0,122,68,1,0,0,10,3,0,190,0,185,8,5,0,185,5,0,2,136,0,0,0,63,0,1,185,4,0,3,136,205,204,204,62,0,185,2,0,134,255,255,0,0,185,2,0,133,0,1,185,2,0,50,185,2,1,0,185,4,255,0,1,0,185,5,1,0,0,128,245,185,3,0,2,127,185,5,1,128,250,129,244,1,128,250,129,244,1,0,1,0,190,190,190,190,1,185,5,189,0,189,0,190,16,16,0,3,255,255,1,190,190,190,1,0,1,190]}],[5,{"id":5,"ioInfo":[[["","in"],{"blocking":true,"group":"","id":1,"name":"in","queueSize":8,"type":3,"waitForMessage":true}]],"name":"XLinkOut","properties":[185,3,136,0,0,128,191,189,10,100,101,116,101,99,116,105,111,110,115,0]}]]}
              [2024-03-10 14:26:04.861] [debug] Asset map dump: {"map":{"/node/1/__blob":{"alignment":64,"offset":0,"size":12168064}}}
              [184430101175A41200] [3.1] [0.864] [system] [warning] PRINT:LeonCss: Calling IPC set assets
              [184430101175A41200] [3.1] [0.979] [MonoCamera(2)] [info] Using board socket: 1, id: 1
              [184430101175A41200] [3.1] [0.979] [MonoCamera(3)] [info] Using board socket: 2, id: 2
              [184430101175A41200] [3.1] [0.985] [system] [warning] PRINT:LeonCss: Asset: /node/1/__blob, pointer: 0x8abca200, size: 12168064, alignment: 64
              [184430101175A41200] [3.1] [0.982] [system] [info] SpatialLocationCalculator shave buffer size '54272'B
              [184430101175A41200] [3.1] [1.018] [system] [warning] PRINT:LeonMss: sippPalThreadCreate: Thread /SIPP created
              [184430101175A41200] [3.1] [0.983] [system] [info] SIPP (Signal Image Processing Pipeline) internal buffer size '18432'B, DMA buffer size: '16384'B
              [184430101175A41200] [3.1] [1.018] [system] [info] ImageManip internal buffer size '285440'B, shave buffer size '34816'B
              [184430101175A41200] [3.1] [1.040] [system] [warning] PRINT:LeonMss: NeuralNetwork | Available resources: shaveStart: 0, numShaves: 12, mask: 00000FFF
              Initing ImgPreproc system!
              
              Pre-proc Enc mem used: 69120 bytes. Available: 285440 
              [184430101175A41200] [3.1] [1.018] [system] [info] NeuralNetwork allocated resources: shaves: [0-11] cmx slices: [0-11] 
              ColorCamera allocated resources: no shaves; cmx slices: [13-15] 
              MonoCamera allocated resources: no shaves; cmx slices: [13-15] 
              StereoDepth allocated resources: shaves: [12-12] cmx slices: [12-12] 
              ImageManip allocated resources: shaves: [15-15] no cmx slices. 
              SpatialLocationCalculator allocated resources: shaves: [14-14] no cmx slices. 
              
              [184430101175A41200] [3.1] [1.033] [SpatialDetectionNetwork(1)] [info] Needed resources: shaves: 6, ddr: 8110912 
              [184430101175A41200] [3.1] [1.045] [SpatialDetectionNetwork(1)] [info] Inference thread count: 2, number of shaves allocated per thread: 6, number of Neural Compute Engines (NCE) allocated per thread: 1
              [184430101175A41200] [3.1] [1.052] [system] [warning] PRINT:LeonCss: [1970-01-01 00:00:01.041] [info] Time taken to build the pipeline: 64ms
              == FSYNC enabled for cam mask 0x0
              Broadcast7251: Successfully registered camera MV200 (ov7750) as /dev/Camera_bcast0
              == SW-SYNC: 1, cam mask 0x7
              !!! Master Slave config is: single_master_slave !!!
              Starting camera 0
              [E] app_guzzi_command_callback():173: command->id:1
              [E] app_guzzi_command_callback():193: command "1 0" sent
              
              [184430101175A41200] [3.1] [1.052] [system] [warning] PRINT:LeonMss: LRT - build pipeline call
              [184430101175A41200] [3.1] [1.074] [system] [warning] PRINT:LeonCss: [E] iq_debug_create():161: iq_debug address 0x88221bc0
              [E] hai_cm_driver_load_dtp():852: Features for camera IMX214R0 (imx214) are received
              [E] set_dtp_ids():396: //VIV HAL: Undefined VCM DTP ID 0
              [E] set_dtp_ids():405: //VIV HAL: Undefined NVM DTP ID 0
              [E] set_dtp_ids():414: //VIV HAL: Undefined lights DTP ID 0
              [184430101175A41200] [3.1] [1.085] [system] [warning] PRINT:LeonCss: [E] camera_control_start():347: Camera_id = 0 started.
              
              [E] hai_cm_sensor_select_mode():164: No suitable sensor mode. Selecting default one - 0 for start 1920x1080 at 0x0 fps min 0.000000 max 30.000000
              [E] hai_cm_sensor_select_mode():164: No suitable sensor mode. Selecting default one - 0 for start 1920x1080 at 0x0 fps min 0.000000 max 30.000000
              [184430101175A41200] [3.1] [1.107] [system] [warning] PRINT:LeonCss: [E] vpipe_conv_config():1465: Exit Ok
              [184430101175A41200] [3.1] [1.118] [system] [warning] PRINT:LeonCss: [E] callback():123: Camera CB START_DONE event.
              [E] app_guzzi_command_callback():173: command->id:5
              [E] camera_control_focus_trigger():591: Focus trigger succeeded camera_id = 0.
              
              [E] app_guzzi_command_callback():218: command "5 0" sent
              
              Starting camera 1
              [E] app_guzzi_command_callback():173: command->id:1
              [E] app_guzzi_command_callback():193: command "1 1" sent
              
              [184430101175A41200] [3.1] [1.140] [system] [warning] PRINT:LeonCss: [E] iq_debug_create():161: iq_debug address 0x87d8d480
              [E] hai_cm_driver_load_dtp():852: Features for camera MV200 (ov7750) are received
              [E] set_dtp_ids():396: //VIV HAL: Undefined VCM DTP ID 0
              [E] set_dtp_ids():405: //VIV HAL: Undefined NVM DTP ID 0
              [E] set_dtp_ids():414: //VIV HAL: Undefined lights DTP ID 0
              [184430101175A41200] [3.1] [1.151] [system] [warning] PRINT:LeonCss: [E] camera_control_start():347: Camera_id = 1 started.
              
              [E] lens_move_to_def_pos_do():251: Error executing af_move_to_pos()!
              [E] hai_cm_sensor_select_mode():164: No suitable sensor mode. Selecting default one - 0 for start 640x400 at 0x0 fps min 0.000000 max 30.000000
              [E] hai_cm_sensor_select_mode():164: No suitable sensor mode. Selecting default one - 0 for start 640x400 at 0x0 fps min 0.000000 max 30.000000
              [184430101175A41200] [3.1] [1.162] [system] [warning] PRINT:LeonCss: inc_camera_process set exposure and gain
              osDrvImx214Control:514: Start stream
              [184430101175A41200] [3.1] [1.205] [system] [warning] PRINT:LeonCss: [E] vpipe_conv_config():1465: Exit Ok
              [184430101175A41200] [3.1] [1.206] [system] [warning] PRINT:LeonMss: finished sippPrePrepareLinesFreeRT
              [184430101175A41200] [3.1] [1.217] [system] [warning] PRINT:LeonCss: [E] callback():123: Camera CB START_DONE event.
              Starting camera 2
              [E] app_guzzi_command_callback():173: command->id:1
              [E] app_guzzi_command_callback():193: command "1 2" sent
              
              [184430101175A41200] [3.1] [1.228] [system] [warning] PRINT:LeonCss: [E] iq_debug_create():161: iq_debug address 0x87908e00
              [E] hai_cm_driver_load_dtp():852: Features for camera MV200 (ov7750) are received
              [E] set_dtp_ids():396: //VIV HAL: Undefined VCM DTP ID 0
              [E] set_dtp_ids():405: //VIV HAL: Undefined NVM DTP ID 0
              [E] set_dtp_ids():414: //VIV HAL: Undefined lights DTP ID 0
              [E] camera_control_start():347: Camera_id = 2 started.
              
              [E] lens_move_to_def_pos_do():251: Error executing af_move_to_pos()!
              [E] hai_cm_sensor_select_mode():164: No suitable sensor mode. Selecting default one - 0 for start 640x400 at 0x0 fps min 0.000000 max 3
              [184430101175A41200] [3.1] [1.239] [system] [warning] PRINT:LeonCss: 0.000000
              [E] hai_cm_sensor_select_mode():164: No suitable sensor mode. Selecting default one - 0 for start 640x400 at 0x0 fps min 0.000000 max 30.000000
              inc_camera_process set exposure and gain
              [184430101175A41200] [3.1] [1.283] [system] [warning] PRINT:LeonCss: [E] vpipe_conv_config():1465: Exit Ok
              [E] guzzi_event_send():324: Send: Event ID=20003 no registered recipient
              [E] guzzi_event_send():324: Send: Event ID=20004 no registered recipient
              [E] callback():123: Camera CB START_DONE event.
              Starting Guzzi command handling loop...
              [184430101175A41200] [3.1] [1.293] [system] [warning] PRINT:LeonCss: inc_camera_process set exposure and gain
              [184430101175A41200] [3.1] [1.337] [system] [warning] PRINT:LeonMss: finished sippPrePrepareLinesFreeRT
              finished sippPrePrepareLinesFreeRT
              [184430101175A41200] [3.1] [1.347] [StereoDepth(4)] [info] Depth baseline: '7.5000005' cm, focal length: '452.50754'
              [184430101175A41200] [3.1] [1.348] [system] [warning] PRINT:LeonMss: finished sippPrePrepareLinesFreeRT
              [184430101175A41200] [3.1] [1.347] [StereoDepth(4)] [info] Depth horizontal FOV: '65.4526', vertical FOV: '39.748154'
              [184430101175A41200] [3.1] [1.359] [system] [warning] PRINT:LeonMss: finished sippPrePrepareLinesFreeRT
              [184430101175A41200] [3.1] [1.370] [system] [warning] PRINT:LeonMss: finished sippPrePrepareLinesFreeRT
              [184430101175A41200] [3.1] [1.382] [system] [warning] PRINT:LeonMss: finished sippPrePrepareLinesFreeRT
              [184430101175A41200] [3.1] [1.547] [system] [warning] PRINT:LeonCss: initial keepalive, countdown: 8
              2024-03-10 14:26:05 NN fps: 0.0      
              book       conf:816%  at (X,Y):  -240,257   pixels,  Z:827   mm
              
              book       conf:626%  at (X,Y):     0,0     pixels,  Z:0     mm
               
              2024-03-10 14:26:05 NN fps: 0.0      
              book       conf:471%  at (X,Y):  -229,253   pixels,  Z:827   mm
               
              2024-03-10 14:26:05 NN fps: 0.0      
              book       conf:838%  at (X,Y):     0,0     pixels,  Z:0     mm
              
              book       conf:580%  at (X,Y):     0,0     pixels,  Z:0     mm
               
              2024-03-10 14:26:05 NN fps: 0.0      
              book       conf:803%  at (X,Y):  -223,255   pixels,  Z:827   mm
               
              [184430101175A41200] [3.1] [1.804] [system] [info] Memory Usage - DDR: 80.05 / 340.34 MiB, CMX: 2.46 / 2.50 MiB, LeonOS Heap: 46.23 / 77.23 MiB, LeonRT Heap: 5.56 / 41.14 MiB
              [184430101175A41200] [3.1] [1.804] [system] [info] Temperatures - Average: 42.98C, CSS: 43.73C, MSS 43.96C, UPA: 42.12C, DSS: 42.12C
              [184430101175A41200] [3.1] [1.804] [system] [info] Cpu Usage - LeonOS 54.59%, LeonRT: 47.80%
              2024-03-10 14:26:05 NN fps: 0.0      
              book       conf:570%  at (X,Y):  -220,249   pixels,  Z:808   mm
               
              2024-03-10 14:26:05 NN fps: 0.0      
              book       conf:449%  at (X,Y):  -239,261   pixels,  Z:848   mm
               
              2024-03-10 14:26:05 NN fps: 0.0      
              book       conf:998%  at (X,Y):     0,0     pixels,  Z:0     mm
              
              book       conf:624%  at (X,Y):     0,0     pixels,  Z:0     mm
               
              2024-03-10 14:26:05 NN fps: 0.0      
              book       conf:1227%  at (X,Y):  -227,255   pixels,  Z:827   mm
              
              book       conf:756%  at (X,Y):     0,0     pixels,  Z:0     mm
               
              2024-03-10 14:26:06 NN fps: 0.0      
              book       conf:486%  at (X,Y):     0,0     pixels,  Z:0     mm
              
              book       conf:435%  at (X,Y):     0,0     pixels,  Z:0     mm
               
              2024-03-10 14:26:06 NN fps: 0.0      
              book       conf:367%  at (X,Y):  -236,258   pixels,  Z:827   mm
               
              2024-03-10 14:26:06 NN fps: 0.0      
              book       conf:645%  at (X,Y):  -225,257   pixels,  Z:827   mm
               
              2024-03-10 14:26:06 NN fps: 0.0      
              book       conf:547%  at (X,Y):  -223,249   pixels,  Z:808   mm
               
              2024-03-10 14:26:06 NN fps: 17.4     
              book       conf:542%  at (X,Y):  -222,250   pixels,  Z:808   mm
               
              2024-03-10 14:26:06 NN fps: 17.4     
              book       conf:389%  at (X,Y):  -231,254   pixels,  Z:827   mm
               
              2024-03-10 14:26:06 NN fps: 17.4     
              book       conf:1077%  at (X,Y):  -219,249   pixels,  Z:808   mm
            • Does Luxonis have a way for me to pay an upgrade fee to exchange my "no IMU" kickstarter Oak-D-Lite for a production unit with the IMU?

              Reason this is so important to me - I am attempting to get the Oak-D-Lite with depthai_ros_driver and RTABmap to work with the Create3 Humble/FastDDS platform. I have turned off the Create3 IMU topic (and many other topics) as one step closer to making the Create3 platform "happy". I have not achieved success, but having an IMU in the camera will help RTABmap and the Create3 workload.

            • kneave @jakaskerl

              suggest checking the output of dmesg to see if any hardware events have occurred. You've not mentioned if you're using an active cooler on the Pi5 as they can get very hot under load,

              Checked that - the problem is it gets overwritten by boot so the crashes remain mysterious. The last vcgencmd throttling before the crash was all zeros so no temp, no power issues reported prior to blinking out.

              It is looking like separate supply is the key to reliably using the Oak-D-Lite on the Pi5 (with a 3A USB-C supply such as the Create3).

              I ran depthai examples for several hours and my depthai-ros full up (even with RTABmap) for an extended period, drawing 3.25W at the camera, with no crashes. There was an occasional "lost message" and some "sync status" issues reported in /diagnostics, but the camera, MobileNet, and depth appeared be working (somewhat - I don't know enough to know how well yet).

              The USB-C plug connections to the oak-y-adapter and the oak-y-adapter into the Oak-D-Lite do not give a "solid connection" feeling, and perhaps my success today is due to unplug/replugging all the connections.

              BTW, my supply voltage is varying between 5.14v and 5.09v depending on load. I used a really serious USB-C Power Delivery cable (no data wires) from the supply to the Oak-D-Lite which appears to be holding the voltage well under load.

              I'm calling this issue solved by separating the power supply.

            • maxsitt

              Thanks - tried it out - worked for my simple test. Very nice work.

            • jakaskerl use the (oak-y-adapter)

              I hooked the Oak-D-Lite with the oak-y-adapter to a separate 5.1v 2A Pololu supply:

              And the setup has not crashed the Pi5.

              With this setup, the Oak-D-Lite camera still eventually after 6 minutes in this case has a problem and stops operating correctly:

              ---
              header:
                stamp:
                  sec: 1707756330
                  nanosec: 103827855
                frame_id: ''
              status:
              - level: "\0"
                name: 'oak: sys_logger'
                message: System Information
                hardware_id: oak_184430101175A41200_OAK-D-LITE
                values:
                - key: System Information
                  value: "System Information: \n  Leon CSS CPU Usage: 67.594\n  Leon MSS CPU Usage: 41.787\n Ddr Memory Usage: 183.537\n Ddr Memory Total: 334..."
              ---
              header:
                stamp:
                  sec: 1707756331
                  nanosec: 103863193
                frame_id: ''
              status:
              - level: "\x02"
                name: 'oak: sys_logger'
                message: 'Communication exception - possible device error/misconfiguration. Original message ''Couldn''t read data from stream: ''sys_logger_...'
                hardware_id: oak_184430101175A41200_OAK-D-LITE
                values: []
              ---
              
              
              pi@WaLiPi5:~/wali_pi5/c3ws $ cmds/launch_camera.sh 
              
                11:39:23 up  3:40,  0 users,  load average: 0.09, 0.14, 0.16
              LAUNCHING OAK-D-LITE camera.launch.py WITH params/camera.yaml (mobilenet + RGBD)
              ros2 launch depthai_ros_driver camera.launch.py camera_model:=OAK-D-LITE params_file:=/home/pi/wali_pi5/c3ws/params/camera.yaml
              
              [INFO] [launch]: All log files can be found below /home/pi/wali_pi5/c3ws/roslogs/2024-02-12-11-39-24-323475-WaLiPi5-2031
              [INFO] [launch]: Default logging verbosity is set to INFO
              [INFO] [component_container-1]: process started with pid [2045]
              [component_container-1] [INFO] [1707755964.887633203] [oak_container]: Load Library: /opt/ros/humble/lib/librobot_state_publisher_node.so
              [component_container-1] [INFO] [1707755964.891281628] [oak_container]: Found class: rclcpp_components::NodeFactoryTemplate<robot_state_publisher::RobotStatePublisher>
              [component_container-1] [INFO] [1707755964.891335684] [oak_container]: Instantiate class: rclcpp_components::NodeFactoryTemplate<robot_state_publisher::RobotStatePublisher>
              [component_container-1] [INFO] [1707755964.916449382] [oak_state_publisher]: got segment oak
              [component_container-1] [INFO] [1707755964.916538642] [oak_state_publisher]: got segment oak-d-base-frame
              [component_container-1] [INFO] [1707755964.916550179] [oak_state_publisher]: got segment oak_left_camera_frame
              [component_container-1] [INFO] [1707755964.916559567] [oak_state_publisher]: got segment oak_left_camera_optical_frame
              [component_container-1] [INFO] [1707755964.916568364] [oak_state_publisher]: got segment oak_model_origin
              [component_container-1] [INFO] [1707755964.916577938] [oak_state_publisher]: got segment oak_rgb_camera_frame
              [component_container-1] [INFO] [1707755964.916586512] [oak_state_publisher]: got segment oak_rgb_camera_optical_frame
              [component_container-1] [INFO] [1707755964.916594808] [oak_state_publisher]: got segment oak_right_camera_frame
              [component_container-1] [INFO] [1707755964.916603679] [oak_state_publisher]: got segment oak_right_camera_optical_frame
              [INFO] [launch_ros.actions.load_composable_nodes]: Loaded node '/oak_state_publisher' in container 'oak_container'
              [component_container-1] [INFO] [1707755964.922364992] [oak_container]: Load Library: /home/pi/wali_pi5/dai_ws/install/depthai_ros_driver/lib/libdepthai_ros_driver.so
              [component_container-1] [INFO] [1707755965.012236752] [oak_container]: Found class: rclcpp_components::NodeFactoryTemplate<depthai_ros_driver::Camera>
              [component_container-1] [INFO] [1707755965.012310011] [oak_container]: Instantiate class: rclcpp_components::NodeFactoryTemplate<depthai_ros_driver::Camera>
              [component_container-1] [INFO] [1707755965.037192839] [oak]: No ip/mxid specified, connecting to the next available device.
              [component_container-1] [INFO] [1707755967.275190117] [oak]: Camera with MXID: 184430101175A41200 and Name: 3.1 connected!
              [component_container-1] [INFO] [1707755967.276212394] [oak]: USB SPEED: SUPER
              [component_container-1] [INFO] [1707755967.297594816] [oak]: Device type: OAK-D-LITE
              [component_container-1] [INFO] [1707755967.300376538] [oak]: Pipeline type: RGBD
              [component_container-1] [INFO] [1707755967.416167995] [oak]: NN Family: mobilenet
              [component_container-1] [INFO] [1707755967.501130792] [oak]: NN input size: 300 x 300. Resizing input image in case of different dimensions.
              [component_container-1] [INFO] [1707755967.576460739] [oak]: Finished setting up pipeline.
              [component_container-1] [INFO] [1707755968.165226098] [oak]: Camera ready!
              [INFO] [launch_ros.actions.load_composable_nodes]: Loaded node '/oak' in container '/oak_container'
              
              OPERATING CORRECTLY FOR 6 MINUTES THEN ...
              
              [component_container-1] [ERROR] [1707756331.103732396] [oak]: No data on logger queue!
              [component_container-1] [ERROR] [1707756331.104188378] [oak]: Camera diagnostics error: Communication exception - possible device error/misconfiguration. Original message 'Couldn't read data from stream: 'sys_logger_queue' (X_LINK_ERROR)'
            • While running an Oak-D-Lite, connected to a USB 3 port of a Raspberry Pi5, with depthai-ros "camera.launch.py" publishing an RGB video topic, a MobileNet or YOLO v4 neural net detections topic, and the stereo depth image topic, the Raspberry Pi5 drawing 9.5W on average, drops into a "Powered drawing 0.0 watts" state.

              (The Raspberry Pi5 is powered from the USB C power & data port of a Create3 robot spec'd to provide 5v at 3A continuous - 15W.)

              During the test, the processor (uptime) load is averaging around 2.0 with 1 minute load as high as 3.8 seen which prior Pi5 CPU load tests have shown to draw 4W for 2.0 load, and 7W at 4.0 load.

              Before starting the test, the Pi5 is drawing 4.1W showing a 1m load of 0.1 to 0.37, and 15min ave of 0.16.

              Looking at the Oak-D-Lite spec:

              Power consumption

              Standby: 0.6 W
              Running depthai_demo.py: 4 W
              Max consumption: 4.5 W

              Occasional power spikes of 2W may occur when running videoEncoder and/or Neural Network. OAK-D-Lite can be also powered off of USB3.

              Are those "2 W power spikes" included in the "Max consumption: 4.5W" figure?

              I don't have a clue how to diagnose these Pi5 crashes.

              Running YOLOv4 5W max from USB3 port:
              [URL=https://i.imgur.com/uzXOtNb.jpg]

              At the Pi5 supply 10.1W max:

              Does it mean there is not a power problem if the crash left a core file?

              I've been seeing a lot of core files since I started messin' with the Oak-D-Lite.

               file core
              core: ELF 64-bit LSB core file, ARM aarch64, version 1 (SYSV), SVR4-style, from '/opt/ros/humble/lib/rclcpp_components/component_container --ros-args --log-leve', real uid: 1000, effective uid: 1000, real gid: 1000, effective gid: 1000, execfn: '/opt/ros/humble/lib/rclcpp_components/component_container', platform: 'aarch64'
                • Best Answerset by cycob

                kneave @jakaskerl

                suggest checking the output of dmesg to see if any hardware events have occurred. You've not mentioned if you're using an active cooler on the Pi5 as they can get very hot under load,

                Checked that - the problem is it gets overwritten by boot so the crashes remain mysterious. The last vcgencmd throttling before the crash was all zeros so no temp, no power issues reported prior to blinking out.

                It is looking like separate supply is the key to reliably using the Oak-D-Lite on the Pi5 (with a 3A USB-C supply such as the Create3).

                I ran depthai examples for several hours and my depthai-ros full up (even with RTABmap) for an extended period, drawing 3.25W at the camera, with no crashes. There was an occasional "lost message" and some "sync status" issues reported in /diagnostics, but the camera, MobileNet, and depth appeared be working (somewhat - I don't know enough to know how well yet).

                The USB-C plug connections to the oak-y-adapter and the oak-y-adapter into the Oak-D-Lite do not give a "solid connection" feeling, and perhaps my success today is due to unplug/replugging all the connections.

                BTW, my supply voltage is varying between 5.14v and 5.09v depending on load. I used a really serious USB-C Power Delivery cable (no data wires) from the supply to the Oak-D-Lite which appears to be holding the voltage well under load.

                I'm calling this issue solved by separating the power supply.

            • Oh WOW - I got rtabmap sort of working...with the params_file!

              $ more no_imu.yaml 
              /oak:
                ros__parameters:
                  camera:
                    i_enable_imu: false
                    i_enable_ir: false
              
              
              
              $ ros2 launch depthai_ros_driver rtabmap.launch.py params_file:=/home/pi/wali_pi5/dai_ws/no_imu.yaml

              And it does not seem to be taxing the Raspberry Pi 5 very much:

              ********** WaLiPi5  MONITOR ******************************
              Monday 02/05/24 12:10:47 up 7 days, 19:28,  5 users,  load average: 1.62, 0.97, 1.08
              temp=67.5'C
              frequency(0)=2400008192
              throttled=0x0
                             total        used        free      shared  buff/cache   available
              Mem:           7.9Gi       2.0Gi       630Mi        62Mi       5.4Gi       5.9Gi
              Swap:           99Mi        99Mi       960Ki
              CONTAINER ID   IMAGE     COMMAND                  CREATED        STATUS        PORTS     NAMES
              51debb7f004f   r2hdp     "/ros_entrypoint.sh …"   36 hours ago   Up 36 hours             r2hdp
              
              
              285410 /usr/bin/python3 /opt/ros/humble/bin/ros2 launch teleop_twist_joy teleop-launch.py joy_config:=F710
              285411 /usr/bin/python3 /opt/ros/humble/bin/ros2 run wali odometer
              285412 /usr/bin/python3 /opt/ros/humble/bin/ros2 run wali say_node
              285413 /usr/bin/python3 /opt/ros/humble/bin/ros2 run wali ir2scan
              285414 /usr/bin/python3 /opt/ros/humble/bin/ros2 run wali wali_node
              302367 /usr/bin/python3 /opt/ros/humble/bin/ros2 launch depthai_ros_driver rtabmap.launch.py params_file:=/home/pi/wali_pi5/dai_ws/no_imu.yaml

              Thank you!

            • Luxonis-Adam could you try upgrading depthai library sudo apt install ros-humble-depthai?

              pi@WaLiPi5:~/wali_pi5/dai_ws $ sudo apt update && sudo apt install ros-humble-depthai
              ...
              Reading package lists... Done
              Building dependency tree... Done
              Reading state information... Done
              ros-humble-depthai is already the newest version (2.23.0-1jammy.20240125.203547).

              Luxonis-Adam The driver should still run even if IMU is not detected as it checks for it using firmware library,

              Yes, much of the pointcloud.launch.py composite ROS node is alive but the oak camera exceptions when not finding the IMU. The camera is failing due to oak.create_pointcloud() (the C++ equivalent somewhere) failing.

              [oak_container]: Component constructor threw an exception: IMU(10) - IMU invalid settings!: IMU not detected. Your board doesn't have IMU 

              Luxonis-Adam you can still edit config files for other launch files (they are located in config directory in depthai_ros_driver directory

              Yes, I have modified: dai_ws/src/depthai-ros/depthai_ros_driver/config/camera.yaml,
              which build copies to: dai_ws/install/depthai_ros_driver/share/depthai_ros_driver/config/camera.yaml -

              camera.yaml: 
              /oak:
                ros__parameters:
                  camera:
                    i_enable_imu: false
                    i_enable_ir: true
                    i_nn_type: spatial
                    i_pipeline_type: RGBD
                  nn:
                    i_nn_config_path: depthai_ros_driver/mobilenet

              but it does not appear to affect the pointcloud.launch.py composite camera node.
              (that param file also configures a MobileNet NN so additionally appears to not be the correct param file).

              Luxonis-Adam you can also pass external config file using launch file arguments) to disable IMU explicitly.

              I created no_imu.yaml:

              /oak:
                ros__parameters:
                  camera:
                    i_enable_imu: false
                    i_enable_ir: false

              and using command:

              ros2 launch depthai_ros_driver pointcloud.launch.py params_file:=/home/pi/wali_pi5/dai_ws/no_imu.yaml

              The camera node appears to be launching without exception:

              [component_container-1] [INFO] [1707147242.231740145] [oak]: Camera with MXID: 184430101175A41200 and Name: 3.1 connected!
              [component_container-1] [INFO] [1707147242.238504726] [oak]: USB SPEED: SUPER
              [component_container-1] [INFO] [1707147242.260400946] [oak]: Device type: OAK-D-LITE
              [component_container-1] [INFO] [1707147242.263645533] [oak]: Pipeline type: RGBD
              [component_container-1] [INFO] [1707147242.389490866] [oak]: NN Family: mobilenet
              [component_container-1] [INFO] [1707147242.485281992] [oak]: NN input size: 300 x 300. Resizing input image in case of different dimensions.
              [component_container-1] [INFO] [1707147242.568013457] [oak]: Finished setting up pipeline.
              [component_container-1] [INFO] [1707147243.187124674] [oak]: Camera ready!
              [INFO] [launch_ros.actions.load_composable_nodes]: Loaded node '/oak' in container '/oak_container'

              The camera is running mobilenet and publishing /oak/detections (is that ok? Love it if so)

              The /point_cloud_xyzi node is running but does not publish anything on /oak/points (0 msgs)

              ros2 node info /point_cloud_xyzi 
              /point_cloud_xyzi
                Subscribers:
                  /oak/right/image_rect: sensor_msgs/msg/Image
                  /oak/stereo/camera_info: sensor_msgs/msg/CameraInfo
                  /oak/stereo/image_raw: sensor_msgs/msg/Image
                  /parameter_events: rcl_interfaces/msg/ParameterEvent
                Publishers:
                  /oak/points: sensor_msgs/msg/PointCloud2
                  /parameter_events: rcl_interfaces/msg/ParameterEvent
                  /rosout: rcl_interfaces/msg/Log
              
              $ ros2 topic hz /oak/points
              WARNING: topic [/oak/points] does not appear to be published yet

              I confirmed the camera is outputting /oak/stereo/image_raw, which appears to be a depth image.

            • @jakaskerl @Luxonis-Adam

              I cannot find any way to launch the pointcloud node with my "no-IMU" Oak-D-Lite camera:
              (tried with/without param i_enable_imu:=false)

              $ ./launch_pointcloud.sh 
              [INFO] [launch]: All log files can be found below /home/pi/wali_pi5/c3ws/roslogs/2024-02-04-22-50-29-179351-WaLiPi5-2073
              [INFO] [launch]: Default logging verbosity is set to INFO
              [INFO] [component_container-1]: process started with pid [2088]
              [component_container-1] [INFO] [1707105029.754148776] [oak_container]: Load Library: /opt/ros/humble/lib/librobot_state_publisher_node.so
              [component_container-1] [INFO] [1707105029.758434632] [oak_container]: Found class: rclcpp_components::NodeFactoryTemplate<robot_state_publisher::RobotStatePublisher>
              [component_container-1] [INFO] [1707105029.759005911] [oak_container]: Instantiate class: rclcpp_components::NodeFactoryTemplate<robot_state_publisher::RobotStatePublisher>
              [component_container-1] [INFO] [1707105029.776188764] [oak_state_publisher]: got segment oak
              [component_container-1] [INFO] [1707105029.776246523] [oak_state_publisher]: got segment oak-d-base-frame
              [component_container-1] [INFO] [1707105029.776260542] [oak_state_publisher]: got segment oak_imu_frame
              [component_container-1] [INFO] [1707105029.776272023] [oak_state_publisher]: got segment oak_left_camera_frame
              [component_container-1] [INFO] [1707105029.776284338] [oak_state_publisher]: got segment oak_left_camera_optical_frame
              [component_container-1] [INFO] [1707105029.776295764] [oak_state_publisher]: got segment oak_model_origin
              [component_container-1] [INFO] [1707105029.776305894] [oak_state_publisher]: got segment oak_rgb_camera_frame
              [component_container-1] [INFO] [1707105029.776317227] [oak_state_publisher]: got segment oak_rgb_camera_optical_frame
              [component_container-1] [INFO] [1707105029.776328412] [oak_state_publisher]: got segment oak_right_camera_frame
              [component_container-1] [INFO] [1707105029.776339653] [oak_state_publisher]: got segment oak_right_camera_optical_frame
              [INFO] [launch_ros.actions.load_composable_nodes]: Loaded node '/oak_state_publisher' in container 'oak_container'
              [component_container-1] [INFO] [1707105029.782189548] [oak_container]: Load Library: /home/pi/wali_pi5/dai_ws/install/depthai_ros_driver/lib/libdepthai_ros_driver.so
              [component_container-1] [INFO] [1707105029.875179007] [oak_container]: Found class: rclcpp_components::NodeFactoryTemplate<depthai_ros_driver::Camera>
              [component_container-1] [INFO] [1707105029.875275858] [oak_container]: Instantiate class: rclcpp_components::NodeFactoryTemplate<depthai_ros_driver::Camera>
              [component_container-1] [INFO] [1707105029.896919717] [oak]: No ip/mxid specified, connecting to the next available device.
              [component_container-1] [INFO] [1707105032.130643479] [oak]: Camera with MXID: 184430101175A41200 and Name: 3.1 connected!
              [component_container-1] [INFO] [1707105032.131766628] [oak]: USB SPEED: SUPER
              [component_container-1] [INFO] [1707105032.153159430] [oak]: Device type: OAK-D-LITE
              [component_container-1] [INFO] [1707105032.155825822] [oak]: Pipeline type: RGBD
              [component_container-1] [INFO] [1707105032.809933859] [oak]: Finished setting up pipeline.
              [component_container-1] [ERROR] [1707105035.135015371] [oak_container]: Component constructor threw an exception: IMU(10) - IMU invalid settings!: IMU not detected. Your board doesn't have IMU or requires firmware update (Set imu.enableFirmwareUpdate(True) explicitly.). 0, 328
              [component_container-1] [INFO] [1707105035.136224705] [oak_container]: Load Library: /opt/ros/humble/lib/libdepth_image_proc.so
              [ERROR] [launch_ros.actions.load_composable_nodes]: Failed to load node 'oak' of type 'depthai_ros_driver::Camera' in container '/oak_container': Component constructor threw an exception: IMU(10) - IMU invalid settings!: IMU not detected. Your board doesn't have IMU or requires firmware update (Set imu.enableFirmwareUpdate(True) explicitly.). 0, 328
              [component_container-1] [INFO] [1707105035.142136805] [oak_container]: Found class: rclcpp_components::NodeFactoryTemplate<depth_image_proc::ConvertMetricNode>
              [component_container-1] [INFO] [1707105035.142215842] [oak_container]: Found class: rclcpp_components::NodeFactoryTemplate<depth_image_proc::CropForemostNode>
              [component_container-1] [INFO] [1707105035.142231916] [oak_container]: Found class: rclcpp_components::NodeFactoryTemplate<depth_image_proc::DisparityNode>
              [component_container-1] [INFO] [1707105035.142246360] [oak_container]: Found class: rclcpp_components::NodeFactoryTemplate<depth_image_proc::PointCloudXyzNode>
              [component_container-1] [INFO] [1707105035.142260342] [oak_container]: Found class: rclcpp_components::NodeFactoryTemplate<depth_image_proc::PointCloudXyzRadialNode>
              [component_container-1] [INFO] [1707105035.142275027] [oak_container]: Found class: rclcpp_components::NodeFactoryTemplate<depth_image_proc::PointCloudXyziNode>
              [component_container-1] [INFO] [1707105035.142289027] [oak_container]: Instantiate class: rclcpp_components::NodeFactoryTemplate<depth_image_proc::PointCloudXyziNode>
              [INFO] [launch_ros.actions.load_composable_nodes]: Loaded node '/point_cloud_xyzi' in container 'oak_container'

              NO POINTCLOUD WITHOUT AN IMU IN THE CAMERA with depthai-ros