ModalAI Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    Troubleshooting/Improving VIO Accuracy

    GPS-denied Navigation (VIO)
    4
    13
    1046
    Loading More Posts
    • 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.
    • ModeratorM
      Moderator ModalAI Team @tom
      last edited by

      There are troubleshooting vio tips here: https://docs.modalai.com/flying-with-vio-0_9/#troubleshooting-vio

      nickyblanchN 1 Reply Last reply Reply Quote 0
      • nickyblanchN
        nickyblanch @tom
        last edited by

        @tom Thanks for your reply. I believe the PX4 versions are listed below:

        VIO Challenged Drone #1
        d9c109f0-e72b-47cb-ab52-e780bb087b95-image.png

        VIO Challenged Drone #2
        0e49ceeb-a5b1-4a45-9b1a-a15be14ec2ea-image.png

        VIO Successful Drone
        c182c8b3-86fc-4b78-b712-9c3ab5e264d7-image.png

        It appears that the newer drone is on a different PX4 version than the two that are struggling - I thought that reflashing a new system image to the older two drones would have updated PX4 but I was obviously wrong. I can upgrade the PX4 firmware on the older two drones and see if that affects flight.

        1 Reply Last reply Reply Quote 0
        • nickyblanchN
          nickyblanch @Moderator
          last edited by

          @Moderator Thank you for the tip. The vibration in particular could be a concern, I'll log some data and see.

          1 Reply Last reply Reply Quote 0
          • nickyblanchN
            nickyblanch @tom
            last edited by

            @tom Hi Tom, in case you have any other suggestions, here is some more info on what is happening:

            7c208950-7df9-44db-be61-91865bc558d8-image.png

            Sensors are calibrated.

            VIO works like a charm up until takeoff in position mode; while on the ground or with the props not spinning, VIO quality is good and rarely fails even with quick movements. VIO immediately fails within the first second or two of drone takeoff.

            There is data in both /data/modalai/opencv_tracking_intrinsics.yml and /data/modalai/voxl-imu-server.cal.

            Extrinsics are configured for the FC1 seeker (VOXL cam).

            The vibration analyzer in QGroundControl didn't show anything that appeared abnormal during flight, although I haven't totally ruled out vibration yet.

            Altitude mode is also extremely unstable, with jumps of several feet in each direction.

            I've had this drone working well with VIO in the past, running the same PX4 version. I guess it could also be a hardware fault but that is more difficult to diagnose.

            Thanks!

            1 Reply Last reply Reply Quote 0
            • nickyblanchN
              nickyblanch @tom
              last edited by

              @tom It's been a bit since the last update, but I after lots of fresh installs, calibrations, etc, I think the issue may be narrowed down to vibration. Shown below is the output of voxl-inspect-vibration for IMU0 during a relatively stable flight. The results are the same for IMU1.
              1038f6f9-e602-45ae-a081-39ba237d7a07-image.png

              It's clear that the vibration on the IMU is high, but is there anything I can do about it? The frame of the Seeker is unmodified, exactly as it came. Also, do you know if this vibration is high enough to cause occasional VIO failures?

              Thanks,
              Nick

              ModeratorM 1 Reply Last reply Reply Quote 0
              • ModeratorM
                Moderator ModalAI Team @nickyblanch
                last edited by

                @nickyblanch that vibration does look high. We typically have much better on Seeker. Is the VOXL CAM portion loose or anything?

                nickyblanchN 2 Replies Last reply Reply Quote 0
                • nickyblanchN
                  nickyblanch @Moderator
                  last edited by nickyblanch

                  @Moderator Hi, thank you for your response. The VOXL cam is firmly attached to the frame, the four main mounting screws are tight and the rubber washers are under compression. I will go through and make sure everything else is tight, but it all appears to be. I swapped out the propellers for brand new ones yesterday.

                  I added foam padding between the VOXL CAM and the frame in an attempt to dampen vibration but it may have made it worse. VIO failed after about a minute of slow flying.

                  4bced3ca-ca93-4522-9869-555da1bc35f7-image.png

                  79bb361a-f56d-426d-a9e4-7a8fa132f83b-image.png
                  a62de6d3-65f9-422d-b34c-bdac535a8a47-image.png

                  1 Reply Last reply Reply Quote 0
                  • nickyblanchN
                    nickyblanch @Moderator
                    last edited by nickyblanch

                    @Moderator Hi, just wanted to follow up - have you seen this problem before and/or how it was fixed? I tore the entire VOXL Cam portion apart, tightened everything, and re-secured the VOXL Cam to the airframe with a lot of thick foam between the VOXL and the airframe. Vibration still shows red (> 5.00m/s^2) after takeoff in Position Mode but is fine before takeoff. VIO flight technically works when moving slowly, but it is extremely unstable and the Seeker is constantly jerking up/down and left/right. Brand new propellers, motors appear to work fine. The drone has sustained a few crashes while indoors in the past.

                    I don't have the budget for a new VOXL cam and need to get the drone flying within the next week so I can finish my thesis and graduate - any suggestions? Is there possibly some software filtering in the VOXL sdk that I can check?

                    Thanks!

                    nickyblanchN 1 Reply Last reply Reply Quote 0
                    • nickyblanchN
                      nickyblanch @nickyblanch
                      last edited by

                      @nickyblanch I'll send an update here for anyone else with bad VIO quality that may be affected by vibration - tearing apart/reassembling the VOXL Cams may have helped a small amount, but the majority of the problem was definitely centered around the battery. The battery seemed fine and secure, but after adding foam all the way around the battery, the VIO quality improved significantly.

                      Curiously, although the vibration data is lower now, it still shows red ( > 5 m/s^2) in all three directions. I compared this against my brand new VOXL2 Seeker drone that doesn't have any VIO problems and that drone also shows red ( > 5 m/s^2) for vibration data. However, despite the high vibration, both the new VOXL2 drone and the older, previously unflyable VOXL1 drones fly semi-well in position mode.

                      A 1 Reply Last reply Reply Quote 0
                      • A
                        AP123 @nickyblanch
                        last edited by

                        @nickyblanch Hey Nicky Thank you for posting on here! I'm having issues with the VIO as well but my error is, "avoidance system not ready" with a "pre-arm check" error. This only happens when i enable obstetrical avoidance under safety on OGC. Was this occurring with you before by chance?

                        nickyblanchN 1 Reply Last reply Reply Quote 0
                        • nickyblanchN
                          nickyblanch @AP123
                          last edited by

                          @AP123 Hi, I have not seen this before, but I also haven't tried enabling obstacle avoidance. I can't pretend to know much about the obstacle avoidance code running inn the VOXL SDK, but I suppose this error could be caused by some obstacle avoidance service not running on the VOXL when it should be, hence QGroundcontrol being confused.

                          1 Reply Last reply Reply Quote 0
                          • First post
                            Last post
                          Powered by NodeBB | Contributors