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

ModalAI Forum

  1. ModalAI Support Forum
  2. VOXL Dev Drones
  3. PX4 Autonomy Developer Kit
  4. UAV climbs out of control in POSITION mode (All QVIO sensors successfully calibrated)

UAV climbs out of control in POSITION mode (All QVIO sensors successfully calibrated)

Scheduled Pinned Locked Moved PX4 Autonomy Developer Kit
19 Posts 4 Posters 4.6k Views 2 Watching
  • 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.
  • rdjarvisR Offline
    rdjarvisR Offline
    rdjarvis
    Regular
    wrote on last edited by
    #1

    Good morning team,

    Link Preview Image
    Starling gone rogue (uncontrollable) in Position flight mode

    @Eric-Katzfey Hi, The first change of flight mode to "Altitude" was because of the loss of control of pilot (see it from the "Manual Control Output") on the ...

    favicon

    ModalAI Forum (forum.modalai.com)

    We are experiencing the same issues when attempting to fly in POSITION mode.

    UAV flies flawlessly in MANUAL mode, good vibes good gyros.

    Indoor flight, tracking camera mounted vertically, not 45deg.

    All cameras successfully calibrated.

    QVIO Overlay in Web Portal is between 80-100% when armed on the deck.

    Instantly drops to 6-13% on takeoff, with same number of points in QVIO Overlay.

    UAV climbs, uncontrollably in POSTION and ALTITUDE modes, even after throttle reduced to 0.

    Any help would be appreciated.

    ModeratorM 1 Reply Last reply
    0
    • rdjarvisR rdjarvis

      Good morning team,

      Link Preview Image
      Starling gone rogue (uncontrollable) in Position flight mode

      @Eric-Katzfey Hi, The first change of flight mode to "Altitude" was because of the loss of control of pilot (see it from the "Manual Control Output") on the ...

      favicon

      ModalAI Forum (forum.modalai.com)

      We are experiencing the same issues when attempting to fly in POSITION mode.

      UAV flies flawlessly in MANUAL mode, good vibes good gyros.

      Indoor flight, tracking camera mounted vertically, not 45deg.

      All cameras successfully calibrated.

      QVIO Overlay in Web Portal is between 80-100% when armed on the deck.

      Instantly drops to 6-13% on takeoff, with same number of points in QVIO Overlay.

      UAV climbs, uncontrollably in POSTION and ALTITUDE modes, even after throttle reduced to 0.

      Any help would be appreciated.

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

      @rdjarvis Have you gone through the steps in the VIO troubleshooting guide? https://docs.modalai.com/flying-with-vio/#troubleshooting-vio

      Screen record the qvio overlay, you should see what is causing your issue

      rdjarvisR 1 Reply Last reply
      0
      • ModeratorM Moderator

        @rdjarvis Have you gone through the steps in the VIO troubleshooting guide? https://docs.modalai.com/flying-with-vio/#troubleshooting-vio

        Screen record the qvio overlay, you should see what is causing your issue

        rdjarvisR Offline
        rdjarvisR Offline
        rdjarvis
        Regular
        wrote on last edited by
        #3

        @Moderator We have followed the QVIO trouble shooting steps.

        I will post a screenshot of voxl-logger --preset_odometry and a short video clip of the QVIO overlay.

        -Ryan

        Stefan AmundarainS 1 Reply Last reply
        0
        • rdjarvisR rdjarvis

          @Moderator We have followed the QVIO trouble shooting steps.

          I will post a screenshot of voxl-logger --preset_odometry and a short video clip of the QVIO overlay.

          -Ryan

          Stefan AmundarainS Offline
          Stefan AmundarainS Offline
          Stefan Amundarain
          Contributor
          wrote on last edited by
          #4

          @rdjarvis @Moderator

          Flight log from second flight:https://logs.px4.io/plot_app?log=4bb1781f-abc9-49bc-a713-e03a7629b074

          a few screenshots from qvio logger while on the bench. Can get some from the air potentially. Screenshot 2024-05-17 121123.png Screenshot 2024-05-17 121105.png

          video of QVIO Overly from web portal. This was two flights, one in manual, the second in position. drone becomes uncontrollable in position mode and keeps attempting to climb with no throttle input or extremely little
          (https://drive.google.com/file/d/1fBXyT1QNDqnYAGuz7ahqJcGqRUeZFnU-/view?usp=sharing)

          Alex KushleyevA 1 Reply Last reply
          1
          • Stefan AmundarainS Stefan Amundarain

            @rdjarvis @Moderator

            Flight log from second flight:https://logs.px4.io/plot_app?log=4bb1781f-abc9-49bc-a713-e03a7629b074

            a few screenshots from qvio logger while on the bench. Can get some from the air potentially. Screenshot 2024-05-17 121123.png Screenshot 2024-05-17 121105.png

            video of QVIO Overly from web portal. This was two flights, one in manual, the second in position. drone becomes uncontrollable in position mode and keeps attempting to climb with no throttle input or extremely little
            (https://drive.google.com/file/d/1fBXyT1QNDqnYAGuz7ahqJcGqRUeZFnU-/view?usp=sharing)

            Alex KushleyevA Offline
            Alex KushleyevA Offline
            Alex Kushleyev
            ModalAI Team
            wrote on last edited by
            #5

            @Stefan-Amundarain ,

            Is your vehicle in standard configuration that is offered in our dev kits (specifically, orientation between the camera and the VIO IMU?)

            This looks like you may have an incorrect transform between the VIO IMU and camera.

            Before attempting to fly using VIO after making changes or initial bring up, always verify VIO operation by doing handheld tests that would simulate flight (propellers off, disarmed, etc).

            You can look at the qvio overlay to make sure features are tracked and quality is good, otherwise you most likely have an issue with the IMU to camera transform.

            Alex

            rdjarvisR 2 Replies Last reply
            0
            • Alex KushleyevA Alex Kushleyev

              @Stefan-Amundarain ,

              Is your vehicle in standard configuration that is offered in our dev kits (specifically, orientation between the camera and the VIO IMU?)

              This looks like you may have an incorrect transform between the VIO IMU and camera.

              Before attempting to fly using VIO after making changes or initial bring up, always verify VIO operation by doing handheld tests that would simulate flight (propellers off, disarmed, etc).

              You can look at the qvio overlay to make sure features are tracked and quality is good, otherwise you most likely have an issue with the IMU to camera transform.

              Alex

              rdjarvisR Offline
              rdjarvisR Offline
              rdjarvis
              Regular
              wrote on last edited by
              #6

              @Alex-Kushleyev

              Hello Alex,

              1. Yes, vehicle is in standard configuration for C11 DevKit
              2. Extrinsic have been set for the placement of IMU and VIO
              3. If this is an incorrect transform between the VIO IMU (IMU Apps) and Camera, how do we correct it other than adjusting extrinsics.conf file?
              4. When hand flying VIO quality fluctuates through the entire range -1 - 100%, in a multiple indoor, highly lite conditions.
              5. As you can see in the video link posted, points are tracked, and stay tracked as the VIO quality drops to 0 after takeoff.

              Any suggestions?
              Thanks,
              RDJ

              1 Reply Last reply
              0
              • Alex KushleyevA Alex Kushleyev

                @Stefan-Amundarain ,

                Is your vehicle in standard configuration that is offered in our dev kits (specifically, orientation between the camera and the VIO IMU?)

                This looks like you may have an incorrect transform between the VIO IMU and camera.

                Before attempting to fly using VIO after making changes or initial bring up, always verify VIO operation by doing handheld tests that would simulate flight (propellers off, disarmed, etc).

                You can look at the qvio overlay to make sure features are tracked and quality is good, otherwise you most likely have an issue with the IMU to camera transform.

                Alex

                rdjarvisR Offline
                rdjarvisR Offline
                rdjarvis
                Regular
                wrote on last edited by
                #7

                @Alex-Kushleyev was the issue referenced at the start of this post from March ever resolved? It seems they had the same issues with a Starling UAV.

                ModeratorM 1 Reply Last reply
                0
                • rdjarvisR rdjarvis

                  @Alex-Kushleyev was the issue referenced at the start of this post from March ever resolved? It seems they had the same issues with a Starling UAV.

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

                  @rdjarvis was the camera orientation changed? That does not look like the standard C11 orientation

                  rdjarvisR 1 Reply Last reply
                  0
                  • ModeratorM Moderator

                    @rdjarvis was the camera orientation changed? That does not look like the standard C11 orientation

                    rdjarvisR Offline
                    rdjarvisR Offline
                    rdjarvis
                    Regular
                    wrote on last edited by
                    #9

                    @Moderator Yes, as per ModalAI documentation, is says putting the camera in a vertical plane is ideal for indoor only operations.

                    We modified camera t wrt body from 45 to 0 for the vertical placement of camera.

                    UAV had identical unstable flight before this value and camera position was modified.

                    screenshot_2024-05-17_145240.png

                    Alex KushleyevA 1 Reply Last reply
                    0
                    • rdjarvisR rdjarvis

                      @Moderator Yes, as per ModalAI documentation, is says putting the camera in a vertical plane is ideal for indoor only operations.

                      We modified camera t wrt body from 45 to 0 for the vertical placement of camera.

                      UAV had identical unstable flight before this value and camera position was modified.

                      screenshot_2024-05-17_145240.png

                      Alex KushleyevA Offline
                      Alex KushleyevA Offline
                      Alex Kushleyev
                      ModalAI Team
                      wrote on last edited by Alex Kushleyev
                      #10

                      @rdjarvis ,

                      the RPY between imu_apps and tracking frames is not correct. Please review the following documentation : https://docs.modalai.com/configure-extrinsics/

                      The IMU has z axis "into the pcb" = down, if you look at the VOXL2 board from top. You have specified rotation 0,0,90, which is just yaw 90 degrees (around z axis). However, the camera is looking straight out, which means the camera's Z axis is where IMU's X axis is.

                      The RPY should be 0, 90, 90 - please make sure you understand how to calculate it based on the documentation. Let me know if that fixes your issue.

                      Regarding VIO initialization, it is a bit tricky. When the vehicle initially is not moving, there is no way for VIO to initialize scale (disatance) of all the features for monocular VIO. In order to fully initialize, VIO needs to start moving. Also only when it starts moving, if there are errors in reference frames, they will result in inconsistencies within VIO and it will blow up.

                      When vio reports quality and features before you start moving, it can be a bit misleading -- VIO is only using partial information to report its state. But it needs to report some "good news", otherwise you would not even take off until your VIO has converged (chicken and egg problem - you need VIO to be converged before you take off, but in order to for vio to converge, it needs to take off..). So, vio evaluates initial quality based on the availability of features that are being tracked without fully localizing them until there is sufficient motion.

                      rdjarvisR 2 Replies Last reply
                      0
                      • Alex KushleyevA Alex Kushleyev

                        @rdjarvis ,

                        the RPY between imu_apps and tracking frames is not correct. Please review the following documentation : https://docs.modalai.com/configure-extrinsics/

                        The IMU has z axis "into the pcb" = down, if you look at the VOXL2 board from top. You have specified rotation 0,0,90, which is just yaw 90 degrees (around z axis). However, the camera is looking straight out, which means the camera's Z axis is where IMU's X axis is.

                        The RPY should be 0, 90, 90 - please make sure you understand how to calculate it based on the documentation. Let me know if that fixes your issue.

                        Regarding VIO initialization, it is a bit tricky. When the vehicle initially is not moving, there is no way for VIO to initialize scale (disatance) of all the features for monocular VIO. In order to fully initialize, VIO needs to start moving. Also only when it starts moving, if there are errors in reference frames, they will result in inconsistencies within VIO and it will blow up.

                        When vio reports quality and features before you start moving, it can be a bit misleading -- VIO is only using partial information to report its state. But it needs to report some "good news", otherwise you would not even take off until your VIO has converged (chicken and egg problem - you need VIO to be converged before you take off, but in order to for vio to converge, it needs to take off..). So, vio evaluates initial quality based on the availability of features that are being tracked without fully localizing them until there is sufficient motion.

                        rdjarvisR Offline
                        rdjarvisR Offline
                        rdjarvis
                        Regular
                        wrote on last edited by
                        #11

                        @Alex-Kushleyev

                        Thank you for explaining this. We will review, test and get back to you.

                        Thanks again,
                        RDJ

                        1 Reply Last reply
                        0
                        • Alex KushleyevA Alex Kushleyev

                          @rdjarvis ,

                          the RPY between imu_apps and tracking frames is not correct. Please review the following documentation : https://docs.modalai.com/configure-extrinsics/

                          The IMU has z axis "into the pcb" = down, if you look at the VOXL2 board from top. You have specified rotation 0,0,90, which is just yaw 90 degrees (around z axis). However, the camera is looking straight out, which means the camera's Z axis is where IMU's X axis is.

                          The RPY should be 0, 90, 90 - please make sure you understand how to calculate it based on the documentation. Let me know if that fixes your issue.

                          Regarding VIO initialization, it is a bit tricky. When the vehicle initially is not moving, there is no way for VIO to initialize scale (disatance) of all the features for monocular VIO. In order to fully initialize, VIO needs to start moving. Also only when it starts moving, if there are errors in reference frames, they will result in inconsistencies within VIO and it will blow up.

                          When vio reports quality and features before you start moving, it can be a bit misleading -- VIO is only using partial information to report its state. But it needs to report some "good news", otherwise you would not even take off until your VIO has converged (chicken and egg problem - you need VIO to be converged before you take off, but in order to for vio to converge, it needs to take off..). So, vio evaluates initial quality based on the availability of features that are being tracked without fully localizing them until there is sufficient motion.

                          rdjarvisR Offline
                          rdjarvisR Offline
                          rdjarvis
                          Regular
                          wrote on last edited by
                          #12

                          @Alex-Kushleyev You are correct. After reviewing, studying and having a better understanding of the relationship between imu_apps and tracking we have achieved stable indoor flight in POSTION with QVIO.

                          Thank you for all you have done!
                          RDJ

                          Alex KushleyevA 1 Reply Last reply
                          0
                          • rdjarvisR rdjarvis

                            @Alex-Kushleyev You are correct. After reviewing, studying and having a better understanding of the relationship between imu_apps and tracking we have achieved stable indoor flight in POSTION with QVIO.

                            Thank you for all you have done!
                            RDJ

                            Alex KushleyevA Offline
                            Alex KushleyevA Offline
                            Alex Kushleyev
                            ModalAI Team
                            wrote on last edited by
                            #13

                            @rdjarvis , very good! I am glad you got it working.

                            Alex

                            rdjarvisR 2 Replies Last reply
                            0
                            • Alex KushleyevA Alex Kushleyev

                              @rdjarvis , very good! I am glad you got it working.

                              Alex

                              rdjarvisR Offline
                              rdjarvisR Offline
                              rdjarvis
                              Regular
                              wrote on last edited by
                              #14

                              @Alex-Kushleyev After logging 10 flights indoors/position we've noticed the Camera server is running at 100+%, and VIO around 30-40%. We disabled front and rear stereo for troubling shooting the tracking camera. Camera server dropped to 30-40% while running, but flight still tends to be erratic, but not uncontrollable.

                              Flight in Altitude and Manual are great, and honestly rather enjoyable.

                              Where should we start to optimize the tracking camera/VIO to keep dialing this in?

                              1 Reply Last reply
                              0
                              • Alex KushleyevA Alex Kushleyev

                                @rdjarvis , very good! I am glad you got it working.

                                Alex

                                rdjarvisR Offline
                                rdjarvisR Offline
                                rdjarvis
                                Regular
                                wrote on last edited by
                                #15

                                @Alex-Kushleyev When the UAV is stationary on the deck, looking at the same objects the VIO quality fluctuates, randomly from 0-100%. Occasionally (bad camera calibration/Not stationary/no position estimate) errors are sent. Is this a result of the camera server being overloaded, or are there any other issues we can investigate?

                                Thanks,
                                RDJ

                                Alex KushleyevA 1 Reply Last reply
                                0
                                • rdjarvisR rdjarvis

                                  @Alex-Kushleyev When the UAV is stationary on the deck, looking at the same objects the VIO quality fluctuates, randomly from 0-100%. Occasionally (bad camera calibration/Not stationary/no position estimate) errors are sent. Is this a result of the camera server being overloaded, or are there any other issues we can investigate?

                                  Thanks,
                                  RDJ

                                  Alex KushleyevA Offline
                                  Alex KushleyevA Offline
                                  Alex Kushleyev
                                  ModalAI Team
                                  wrote on last edited by
                                  #16

                                  @rdjarvis , the cpu (by default) will run in auto mode, meaning it will slow down under light load. Can you try to set the cpu to performance mode using voxl-set-cpu-mode perf and see if your performance inproves?

                                  For front and rear stereo, which outputs for those cameras do you use? The code does debayering to mono and color for each camera, so disabling unneeded debayering can help.

                                  rdjarvisR 1 Reply Last reply
                                  1
                                  • Alex KushleyevA Alex Kushleyev

                                    @rdjarvis , the cpu (by default) will run in auto mode, meaning it will slow down under light load. Can you try to set the cpu to performance mode using voxl-set-cpu-mode perf and see if your performance inproves?

                                    For front and rear stereo, which outputs for those cameras do you use? The code does debayering to mono and color for each camera, so disabling unneeded debayering can help.

                                    rdjarvisR Offline
                                    rdjarvisR Offline
                                    rdjarvis
                                    Regular
                                    wrote on last edited by
                                    #17

                                    @Alex-Kushleyev As always, thanks Alex. I will plug away at it today and get back to you.

                                    FYI FPV 4n1 ESC will be sent to you this week so you can evaluate when you get the time.

                                    THanks,
                                    RDJ

                                    Stefan AmundarainS 1 Reply Last reply
                                    0
                                    • rdjarvisR rdjarvis

                                      @Alex-Kushleyev As always, thanks Alex. I will plug away at it today and get back to you.

                                      FYI FPV 4n1 ESC will be sent to you this week so you can evaluate when you get the time.

                                      THanks,
                                      RDJ

                                      Stefan AmundarainS Offline
                                      Stefan AmundarainS Offline
                                      Stefan Amundarain
                                      Contributor
                                      wrote on last edited by
                                      #18

                                      @Alex-Kushleyev

                                      We applied the changed to the CPU and that seems to be working slightly better. The drone no longer climbs out of control and seems to maintain VIO with between 20-45%, however, the drone continuously goes nose down and to the left like the front left motor is not working hard enough.

                                      steps we have taken include calibrating level and doing an accelerometer calibration as well; however, the issue still persists.
                                      We have recalibrated the cameras as well and double checked our extrinsic values to make sure those are correct as well.
                                      we have double checked the weight and balance of the drone as well and these are not causing the issue in our opinion.

                                      what are other steps we can take to try and correct this issue?

                                      ModeratorM 1 Reply Last reply
                                      0
                                      • Stefan AmundarainS Stefan Amundarain

                                        @Alex-Kushleyev

                                        We applied the changed to the CPU and that seems to be working slightly better. The drone no longer climbs out of control and seems to maintain VIO with between 20-45%, however, the drone continuously goes nose down and to the left like the front left motor is not working hard enough.

                                        steps we have taken include calibrating level and doing an accelerometer calibration as well; however, the issue still persists.
                                        We have recalibrated the cameras as well and double checked our extrinsic values to make sure those are correct as well.
                                        we have double checked the weight and balance of the drone as well and these are not causing the issue in our opinion.

                                        what are other steps we can take to try and correct this issue?

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

                                        @Stefan-Amundarain what do the flight logs tell you?

                                        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