Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
Collapse
Brand Logo

ModalAI Forum

  1. ModalAI Support Forum
  2. Software Development
  3. Voxl-mapper -d error / map generation error

Voxl-mapper -d error / map generation error

Scheduled Pinned Locked Moved Software Development
5 Posts 3 Posters 897 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    S Offline
    samp
    wrote on last edited by
    #1

    Hi there,

    We connected VOXL2 to Flight Core v2 using the method specified in the document:

    https://docs.modalai.com/flight-core-v2-telemetry/. We connected the stereo camera, calibrated it, and started the voxl-dfs-server. We activated the following services:

    voxl-camera-server
    voxl-dfs-server
    voxl-vision-px4
    voxl-qvio-server

    On voxl-portal, we can see the point cloud, the image from the stereo camera, and stereo disparity. In /run/mpa, we see the following poses:

    horizon_cal_io
    qvio
    qvio_overlay
    stereo_disparity
    stereo_pc
    vvpx4_attitude
    vvpx4_body_wrt_local
    vvpx4_gps_raw_int
    vvpx4_sys_status
    mavlink_to_px4
    qvio_extended
    stereo
    stereo_disparity_scaled
    voa_pc_out
    vvpx4_body_wrt_fixed
    vvpx4_fixed_pose_input
    vvpx4_mavlink_io

    We edited the file /etc/modalai/voxl-mapper.conf and added the following lines:

    "depth_pipe_1": "/run/mpa/stereo_pc",
    "depth_pipe_1_enable": true,
    "extrinsics1_name": "stereo_l"

    But when we run voxl-mapper -d, we encounter the following errors and the map is not generated:

    Trying to init tsdf server
    created tsdf server
    waiting for server at /run/mpa/vvhub_body_wrt_fixed/
    waiting for server at /run/mpa/stereo_pc
    Initializing ESDF structs
    Connected to depth pipe
    Updating mesh
    Updating ESDF Map
    Generating CostMap
    ERROR fetching tf from tf ringbuffer
    there wasn't sufficient data in the buffer
    ERROR fetching tf from tf ringbuffer
    there wasn't sufficient data in the buffer

    What are we doing wrong? What is missing? Is there a detailed instruction for VOXL2 on how to run voxl-mapper?"

    Second question:

    We have our own navigation and obstacle avoidance system, and it requires maintaining a minimum of 45-60 FPS for required capability. However, it is stated that the maximum FPS of your module is 30 FPS. Is there any way to bypass this limitation?

    We would be keen to get the source code so we can develop optimisation of various bottlenecks to get the FPS up.

    Thank you.

    Sam.

    James StrawsonJ 1 Reply Last reply
    0
    • ModeratorM Offline
      ModeratorM Offline
      Moderator
      ModalAI Team
      wrote on last edited by
      #2

      Hi Sam,

      We are investigating your question. Can you please clarify what you are trying to achieve? Your high-level goal?

      It appears you're trying to use voxl-mapper with a stereo image pair for high-rate obstacle avoidance? This is not a well tested configuration, or likely to be the right approach.

      Can you point to the 30Hz limit in stereo processing? What are you achieving? You can set the voxl-camera-server configuration to 45Hz and check performance. There isn't a hard-coded limitation

      S 1 Reply Last reply
      0
      • S samp

        Hi there,

        We connected VOXL2 to Flight Core v2 using the method specified in the document:

        https://docs.modalai.com/flight-core-v2-telemetry/. We connected the stereo camera, calibrated it, and started the voxl-dfs-server. We activated the following services:

        voxl-camera-server
        voxl-dfs-server
        voxl-vision-px4
        voxl-qvio-server

        On voxl-portal, we can see the point cloud, the image from the stereo camera, and stereo disparity. In /run/mpa, we see the following poses:

        horizon_cal_io
        qvio
        qvio_overlay
        stereo_disparity
        stereo_pc
        vvpx4_attitude
        vvpx4_body_wrt_local
        vvpx4_gps_raw_int
        vvpx4_sys_status
        mavlink_to_px4
        qvio_extended
        stereo
        stereo_disparity_scaled
        voa_pc_out
        vvpx4_body_wrt_fixed
        vvpx4_fixed_pose_input
        vvpx4_mavlink_io

        We edited the file /etc/modalai/voxl-mapper.conf and added the following lines:

        "depth_pipe_1": "/run/mpa/stereo_pc",
        "depth_pipe_1_enable": true,
        "extrinsics1_name": "stereo_l"

        But when we run voxl-mapper -d, we encounter the following errors and the map is not generated:

        Trying to init tsdf server
        created tsdf server
        waiting for server at /run/mpa/vvhub_body_wrt_fixed/
        waiting for server at /run/mpa/stereo_pc
        Initializing ESDF structs
        Connected to depth pipe
        Updating mesh
        Updating ESDF Map
        Generating CostMap
        ERROR fetching tf from tf ringbuffer
        there wasn't sufficient data in the buffer
        ERROR fetching tf from tf ringbuffer
        there wasn't sufficient data in the buffer

        What are we doing wrong? What is missing? Is there a detailed instruction for VOXL2 on how to run voxl-mapper?"

        Second question:

        We have our own navigation and obstacle avoidance system, and it requires maintaining a minimum of 45-60 FPS for required capability. However, it is stated that the maximum FPS of your module is 30 FPS. Is there any way to bypass this limitation?

        We would be keen to get the source code so we can develop optimisation of various bottlenecks to get the FPS up.

        Thank you.

        Sam.

        James StrawsonJ Offline
        James StrawsonJ Offline
        James Strawson
        ModalAI Team
        wrote on last edited by
        #3

        @samp

        Please ignore the ERROR fetching tf from tf ringbuffer message unless it prints continuously. It's simply a result of needing to wait for a buffer to fill up before being able to process depth data.

        3D mapping with a stereo pair is possible but not recommended. The PMD TOF sensor is much better suited for this.

        I've not pushed it faster than 30hz but you are welcome to try increasing the stereo camera framerate to 60hz in /etc/modalai/voxl-camera-server.conf and set skip_n_frames to 0 in /etc/modalai/voxl-dfs-server.conf. Reducing max_disparity in /etc/modalai/voxl-dfs-server.conf may also help speed it up.

        We are working on some optimizations for qrb5165-dfs-server for SDK1.0.1, if you can give us an overview of your design goals (resolution, framerate, min/max distance) I can take that into consideration during the optimization.

        Best,
        James

        S 1 Reply Last reply
        0
        • ModeratorM Moderator

          Hi Sam,

          We are investigating your question. Can you please clarify what you are trying to achieve? Your high-level goal?

          It appears you're trying to use voxl-mapper with a stereo image pair for high-rate obstacle avoidance? This is not a well tested configuration, or likely to be the right approach.

          Can you point to the 30Hz limit in stereo processing? What are you achieving? You can set the voxl-camera-server configuration to 45Hz and check performance. There isn't a hard-coded limitation

          S Offline
          S Offline
          samp
          wrote on last edited by
          #4

          @Moderator Changing fps in the /etc/modalai/voxl-camera-server.conf file only works down. If I specify more than 30, then 30 remains. Moreover, 30 fps is indicated on your website.

          1 Reply Last reply
          0
          • James StrawsonJ James Strawson

            @samp

            Please ignore the ERROR fetching tf from tf ringbuffer message unless it prints continuously. It's simply a result of needing to wait for a buffer to fill up before being able to process depth data.

            3D mapping with a stereo pair is possible but not recommended. The PMD TOF sensor is much better suited for this.

            I've not pushed it faster than 30hz but you are welcome to try increasing the stereo camera framerate to 60hz in /etc/modalai/voxl-camera-server.conf and set skip_n_frames to 0 in /etc/modalai/voxl-dfs-server.conf. Reducing max_disparity in /etc/modalai/voxl-dfs-server.conf may also help speed it up.

            We are working on some optimizations for qrb5165-dfs-server for SDK1.0.1, if you can give us an overview of your design goals (resolution, framerate, min/max distance) I can take that into consideration during the optimization.

            Best,
            James

            S Offline
            S Offline
            samp
            wrote on last edited by
            #5

            @James-Strawson ERROR fetching tf from tf ringbuffer - published constantly.

            image1.png

            1 Reply Last reply
            0

            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

            With your input, this post could be even better 💗

            Register Login
            Reply
            • Reply as topic
            Log in to reply
            • Oldest to Newest
            • Newest to Oldest
            • Most Votes


            ModalAI
            Categories Recent Tags ModalAI.com Docs
            © 2026 ModalAI® · Accelerating autonomy for smaller, smarter, safer drones · Powered by NodeBB
            • Login

            • Login or register to search.
            • First post
              Last post
            0
            • Categories
            • Recent
            • Tags
            • Popular
            • Users
            • Groups