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

ModalAI Forum

  1. ModalAI Support Forum
  2. VOXL Dev Drones
  3. Starling & Starling 2
  4. Considerate VIO drift (z-axis) in Starling V2.

Considerate VIO drift (z-axis) in Starling V2.

Scheduled Pinned Locked Moved Starling & Starling 2
7 Posts 3 Posters 2.4k 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.
  • Jetson NanoJ Offline
    Jetson NanoJ Offline
    Jetson Nano
    Veteran
    wrote on last edited by Jetson Nano
    #1

    Hello, @Chad-Sweet @James-Strawson @modaltb

    I had recently purchased a pair of Starling V2s. After using one of them for two months, a VIO issue arose. A consistent and considerate amount of drift quickly accumulates during flight, (especially on the z-axis). A constant incorrect height estimation is present, which causes the drone to shoot up while using the voxl-mapper.

    Things I tried :

    • Cleaning the tracking camera lens.
    • Made sure Odometery data is in the NED frame
    • Double-checking the extrinsics.conf.
    • Redid calibration for IMU and tracking camera. (This was quite hard for the camera as it failed most of the time).
    • Checked IMU vibration and confirmed they're low noise measurements.
    • Made sure the environment is well-lit and has sufficient features.
    • Inspected and restarted QVIO server (camera-server and vision hub as well)

    The weird thing is that both starling v2s have the same issue, one after using it for 2 months and the other which was never used. My current SDK version is 1.1.1
    I tried the other SDK versions, and the z-axis drift is not present only in SDK = 1.0.0.

    1. I want to know the reason behind this drift and how I could correct it. (Any solution/ suggestion except downgrading to SDK 1.0.0).

    2. Another follow-up question is I planned on reducing the overall drift by combing the system with a flightcore v2, and optical flow/ rangefinder and fusing it in the EKF. Is this possible/ done before?

    I have attached some pictures for reference. You can see that the floor of the map is below the horizon and the height in QGC is negative.

    51e060d6-8291-4bde-aa65-9b62b463ce4a-image.png

    a87639ba-195f-4f69-8202-d902216bdd5d-image.png

    Any help/suggestion would be greatly appreciated
    Thank you,

    James StrawsonJ 1 Reply Last reply
    0
    • Jetson NanoJ Jetson Nano

      Hello, @Chad-Sweet @James-Strawson @modaltb

      I had recently purchased a pair of Starling V2s. After using one of them for two months, a VIO issue arose. A consistent and considerate amount of drift quickly accumulates during flight, (especially on the z-axis). A constant incorrect height estimation is present, which causes the drone to shoot up while using the voxl-mapper.

      Things I tried :

      • Cleaning the tracking camera lens.
      • Made sure Odometery data is in the NED frame
      • Double-checking the extrinsics.conf.
      • Redid calibration for IMU and tracking camera. (This was quite hard for the camera as it failed most of the time).
      • Checked IMU vibration and confirmed they're low noise measurements.
      • Made sure the environment is well-lit and has sufficient features.
      • Inspected and restarted QVIO server (camera-server and vision hub as well)

      The weird thing is that both starling v2s have the same issue, one after using it for 2 months and the other which was never used. My current SDK version is 1.1.1
      I tried the other SDK versions, and the z-axis drift is not present only in SDK = 1.0.0.

      1. I want to know the reason behind this drift and how I could correct it. (Any solution/ suggestion except downgrading to SDK 1.0.0).

      2. Another follow-up question is I planned on reducing the overall drift by combing the system with a flightcore v2, and optical flow/ rangefinder and fusing it in the EKF. Is this possible/ done before?

      I have attached some pictures for reference. You can see that the floor of the map is below the horizon and the height in QGC is negative.

      51e060d6-8291-4bde-aa65-9b62b463ce4a-image.png

      a87639ba-195f-4f69-8202-d902216bdd5d-image.png

      Any help/suggestion would be greatly appreciated
      Thank you,

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

      @Jetson-Nano

      It's interesting that you see a difference in performance between SDK1.0 and SDK1.1, between those releases was a change in the way IMU timestamps were calculated that now provide more consistent and accurate timestamps which should have improved vio performance.

      Do you mind trying SDK 1.1.3 with both the newest qrb5165_imu_server (1.0.1) and the old qrb5165-imu-server (0.6.0) from the old SDK to see if the problem is tied to the IMU server or something else?

      http://voxl-packages.modalai.com/dists/qrb5165/sdk-1.0/binary-arm64/qrb5165-imu-server_0.6.0_arm64.deb
      http://voxl-packages.modalai.com/dists/qrb5165/sdk-1.1/binary-arm64/qrb5165-imu-server_1.0.1_arm64.deb

      Thank you!

      Jetson NanoJ 1 Reply Last reply
      0
      • James StrawsonJ James Strawson

        @Jetson-Nano

        It's interesting that you see a difference in performance between SDK1.0 and SDK1.1, between those releases was a change in the way IMU timestamps were calculated that now provide more consistent and accurate timestamps which should have improved vio performance.

        Do you mind trying SDK 1.1.3 with both the newest qrb5165_imu_server (1.0.1) and the old qrb5165-imu-server (0.6.0) from the old SDK to see if the problem is tied to the IMU server or something else?

        http://voxl-packages.modalai.com/dists/qrb5165/sdk-1.0/binary-arm64/qrb5165-imu-server_0.6.0_arm64.deb
        http://voxl-packages.modalai.com/dists/qrb5165/sdk-1.1/binary-arm64/qrb5165-imu-server_1.0.1_arm64.deb

        Thank you!

        Jetson NanoJ Offline
        Jetson NanoJ Offline
        Jetson Nano
        Veteran
        wrote on last edited by
        #3

        @James-Strawson
        Thank you. Will test and get back to you.

        ModeratorM 1 Reply Last reply
        0
        • Jetson NanoJ Jetson Nano

          @James-Strawson
          Thank you. Will test and get back to you.

          ModeratorM Offline
          ModeratorM Offline
          Moderator
          ModalAI Team
          wrote on last edited by
          #4

          @Jetson-Nano Please reference our VIO troubleshooting guide as well https://docs.modalai.com/flying-with-vio/#troubleshooting-vio

          Jetson NanoJ 1 Reply Last reply
          0
          • ModeratorM Moderator

            @Jetson-Nano Please reference our VIO troubleshooting guide as well https://docs.modalai.com/flying-with-vio/#troubleshooting-vio

            Jetson NanoJ Offline
            Jetson NanoJ Offline
            Jetson Nano
            Veteran
            wrote on last edited by Jetson Nano
            #5

            @Moderator @James-Strawson .

            Thanks for your suggestions.

            I could not use mapper with SDK 1.1.3, and the old qrb5165-imu-server (0.6.0). During "apt-get install voxl-mapper", it said that the mapper needed imu version >=1.0.1. I also want to report that I tried these tests with SDK 1.2.0.

            SDK 1.2.0 performs well and has no z-axis drift issue. So there is no z-axis drift in SDK 1.0.0 and 1.2.0.

            There is a different issue about the VIO now,
            After consistent testing, drifts accumulate much faster, making point-to-point planning hard. The VIO drift was visible in the Figure-eight offboard mode. This is not just in SDK 1.2.0

            6b050882-0062-45ca-ab77-4663d2e237f9-image.png

            258a90ff-f5e6-4dca-8b0b-a9ab19bbbc98-image.png

            f50124a7-3abe-48dc-9818-5ff33c1a003d-image.png

            I have followed all the steps in the VIO troubleshooting guide. Nothing seems to help. I've made sure the cameras are clean and are recalibrated ( reprojection error = 0.22). There are enough features ( & illumination) and the quality of QVIO was always high. It is much worse than before and doesn't even work for short distances.

            Any help/suggestions would be greatly appreciated
            Thank you,

            Jetson NanoJ 1 Reply Last reply
            0
            • Jetson NanoJ Jetson Nano

              @Moderator @James-Strawson .

              Thanks for your suggestions.

              I could not use mapper with SDK 1.1.3, and the old qrb5165-imu-server (0.6.0). During "apt-get install voxl-mapper", it said that the mapper needed imu version >=1.0.1. I also want to report that I tried these tests with SDK 1.2.0.

              SDK 1.2.0 performs well and has no z-axis drift issue. So there is no z-axis drift in SDK 1.0.0 and 1.2.0.

              There is a different issue about the VIO now,
              After consistent testing, drifts accumulate much faster, making point-to-point planning hard. The VIO drift was visible in the Figure-eight offboard mode. This is not just in SDK 1.2.0

              6b050882-0062-45ca-ab77-4663d2e237f9-image.png

              258a90ff-f5e6-4dca-8b0b-a9ab19bbbc98-image.png

              f50124a7-3abe-48dc-9818-5ff33c1a003d-image.png

              I have followed all the steps in the VIO troubleshooting guide. Nothing seems to help. I've made sure the cameras are clean and are recalibrated ( reprojection error = 0.22). There are enough features ( & illumination) and the quality of QVIO was always high. It is much worse than before and doesn't even work for short distances.

              Any help/suggestions would be greatly appreciated
              Thank you,

              Jetson NanoJ Offline
              Jetson NanoJ Offline
              Jetson Nano
              Veteran
              wrote on last edited by
              #6

              Hey @James-Strawson @Eric-Katzfey ,

              The z-axis issue recently arose, even in the latest SDK. I have followed all the VIO troubleshooting steps and even reflashed the system. The issue is consistent. The only trend I notice is that the issue originates when I continue to use the voxl-mapper for long distances and duration.

              Is there any fix to this issue? Any suggestion is appreciated as I'm currently testing the system and will report back immediately. Will be waiting for your response.

              Thank you

              James StrawsonJ 1 Reply Last reply
              0
              • Jetson NanoJ Jetson Nano

                Hey @James-Strawson @Eric-Katzfey ,

                The z-axis issue recently arose, even in the latest SDK. I have followed all the VIO troubleshooting steps and even reflashed the system. The issue is consistent. The only trend I notice is that the issue originates when I continue to use the voxl-mapper for long distances and duration.

                Is there any fix to this issue? Any suggestion is appreciated as I'm currently testing the system and will report back immediately. Will be waiting for your response.

                Thank you

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

                @Jetson-Nano

                In SDK 1.2.0 we did start pushing the default config of voxl-mapper a big harder with smaller voxl sizes, longer ray lengths, and double the UI update rate to better complement the newer TOF sensors on the Starling 2. Part of this update was also to lock some of the heavier parts of the mapper processing to cores 4,5,6 to make sure VIO wasn't affected too much. However, if you are still seeing a difference in VIO performance between mapper being on and off then there may still be some optimization to be done.

                Just to confirm you are seeing worse VIO performance when mapper is enabled, correct?

                If so, please try increasing the voxl_size parameter in /etc/modalai/voxl-mapper.conf from the default 0.1 to 0.25, and set the cpu into performance mode on bootup by changing the normal_cpu_mode field to "performance" in /etc/modalai/voxl-cpu-monitor.conf. The map will be very course and ugly with such a big voxel size but I'm just curious if the power cpu use helps resolve the issue.

                For reference, here is the commit history for voxl-mapper showing the recent tweaks for SDK 1.2 and newer that turn up some of the knobs.

                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

                • Don't have an account? Register

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