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

    Invalid local position

    Ask your questions right here!
    5
    30
    3.1k
    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.
    • D
      DillonAllen
      last edited by 2 Aug 2021, 16:10

      Heres the output from QGC:

      nsh> ekf2 status
      INFO  [ekf2] local position: invalid
      INFO  [ekf2] global position: invalid
      INFO  [ekf2] time slip: 0 us
      ekf2: update: 8677 events, 49546us elapsed, 5.71us avg, min 1us max 94us 4.090us rms
      nsh> listener vehicle_visual_odometry
      
      TOPIC: vehicle_visual_odometry
       vehicle_odometry_s
          timestamp: 431364179  (297.960915 seconds ago)
          timestamp_sample: 431346994  (17185 us before timestamp)
          x: -682.8690
          y: -951.3774
          z: -868.9987
          q: [0.9878, -0.0083, 0.0614, -0.1428]
          q_offset: [0.0000, 0.0000, 0.0000, 0.0000]
          pose_covariance: [nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan]
          vx: 0.0002
          vy: 0.0009
          vz: -0.0032
          rollspeed: 0.0095
          pitchspeed: 0.0000
          yawspeed: 0.0000
          velocity_covariance: [nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan]
          local_frame: 1
          velocity_frame: 3
      nsh> 
      
      1 Reply Last reply Reply Quote 0
      • ?
        A Former User
        last edited by 2 Aug 2021, 16:16

        Do you see data from voxl-inspect-qvio

        1 Reply Last reply Reply Quote 0
        • D
          DillonAllen
          last edited by 2 Aug 2021, 16:33

          Yes, but it is very iffy, when I have it sitting on my desk and move it around all of the data changes like it should, but then when I move it to the floor or vice versa then it will start giving me the LOW_FEATURES error

           T_imu_wrt_vio (m)   |Roll Pitch Yaw (deg)| state| error_code
             -0.02   -0.01   -0.07|   0.2    0.4    0.2| OKAY | 
          
          1 Reply Last reply Reply Quote 0
          • ?
            A Former User
            last edited by 2 Aug 2021, 16:43

            Yeah it'll be unstable when its being moved around like that, it's meant to have the service start at the takeoff location and then track initial features on the floor/wall during takeoff. However, this does show that localization data is coming from the VIO service, so the problem is further down the line.

            The two things to look at now are the vvpx4 config file at cat /etc/modalai/voxl-vision-px4.conf and make sure that the QGC stuff is set up properly, and that en_vio and send_vio_to_qgc are both set to true.

            If all of that looks good, then you should run voxl-inspect-pose vvpx4_body_wrt_local to see if the voxl-vision-px4 service is getting the localization data peroperly.

            1 Reply Last reply Reply Quote 0
            • D
              DillonAllen
              last edited by 2 Aug 2021, 16:47

              I believe that I have the voxl-vision-px4 setup correctly for QGC, here is the conf file:

              yocto:/$ cat /etc/modalai/voxl-vision-px4.conf
              /**
               * VOXL Vision PX4 Configuration File
               *
               */
              {
              	"qgc_ip":	"192.168.8.20",
              	"en_localhost_mavlink_udp":	true,
              	"en_secondary_qgc":	false,
              	"secondary_qgc_ip":	"192.168.1.214",
              	"qgc_udp_port_number":	14550,
              	"localhost_udp_port_number":	14551,
              	"udp_mtu":	512,
              	"en_vio":	true,
              	"en_voa":	false,
              	"en_send_vio_to_qgc":	true,
              	"en_send_voa_to_qgc":	false,
              	"en_set_clock_from_gps":	true,
              	"en_force_onboard_mav1_mode":	true,
              	"en_reset_px4_on_error":	true,
              	"qvio_auto_reset_quality":	0.00050000002374872565,
              	"en_adsb":	false,
              	"adsb_uart_bus":	7,
              	"adsb_uart_baudrate":	57600,
              	"px4_uart_bus":	5,
              	"px4_uart_baudrate":	921600,
              	"offboard_mode":	"figure_eight",
              	"follow_tag_id":	0,
              	"en_tag_fixed_frame":	false,
              	"fixed_frame_filter_len":	5,
              	"en_transform_mavlink_pos_setpoints_from_fixed_frame":	false
              }
              

              And here is the output for voxl-inspect-pose vvpx4_body_wrt_local:

              timestamp(ms)|     Position (m)     | Roll Pitch Yaw (deg) |    Velocity (m/s)    | angular rate (deg/s) |
                    153336 |   0.00  -0.01  -0.09 |   -0.6   11.0   -0.2 |  -0.00   0.00   0.00 |  -0.00  -0.03   0.01 
              
              1 Reply Last reply Reply Quote 0
              • ?
                A Former User
                last edited by 2 Aug 2021, 17:19

                Yeah that all looks fine, but there's no data in the local_position_ned or either of the odometry messages?

                1 Reply Last reply Reply Quote 0
                • D
                  DillonAllen
                  last edited by 2 Aug 2021, 17:23

                  In QGC I only have the ODOMETRY data, but there is no local_position_ned tab if that is what you're referring to.

                  1 Reply Last reply Reply Quote 0
                  • ?
                    A Former User
                    last edited by 2 Aug 2021, 17:24

                    And what happens if you try to put it in position mode?

                    1 Reply Last reply Reply Quote 0
                    • D
                      DillonAllen
                      last edited by 2 Aug 2021, 17:30

                      It just tells me "REJECT POSITION CONTROL"

                      1 Reply Last reply Reply Quote 0
                      • ?
                        A Former User
                        last edited by 2 Aug 2021, 17:59

                        I've asked some of our px4 experts what their thoughts are, can you share your px4 params file so we can see what's going on there since this seems to be a px4-side issue.

                        1 Reply Last reply Reply Quote 0
                        • D
                          DillonAllen
                          last edited by 2 Aug 2021, 18:08

                          I couldn't figure out how to share the file through here, so I uploaded them to a drop box:
                          https://www.dropbox.com/s/7kxknquutoav00i/PX4_Param_Voxl.params?dl=0

                          1 Reply Last reply Reply Quote 0
                          • ?
                            A Former User
                            last edited by 2 Aug 2021, 18:39

                            We noticed that your EKF2 Aid mask is different from what we usually run, did you install the voxl px4 parameters file as here or did you create your own? Can you try to run with our default parameters file and see what happens?

                            1 Reply Last reply Reply Quote 0
                            • D
                              DillonAllen
                              last edited by 2 Aug 2021, 18:47

                              I ran the parameters from the quickstart guide, I also ran the indoor_VIO helper and just changed the aid mask to fit was in the quickstart guide. I reverted it back to its original settings and the drone is still having the same problems.

                              1 Reply Last reply Reply Quote 0
                              • D
                                DillonAllen
                                last edited by 3 Aug 2021, 18:25

                                So I've tried completely resetting the parameters on the drone back to factory and reloading all of the parameters again, but I am still getting invalid local position data.

                                Also as a small side note, should the tracking camera be inverted? (for example, I move an object from the top of the tracking camera and it shows up from the bottom on the feed)

                                1 Reply Last reply Reply Quote 0
                                • Chad SweetC
                                  Chad Sweet ModalAI Team
                                  last edited by 3 Aug 2021, 20:14

                                  Do you have a magnetometer connected? We have seen this issue when the px4 ekf doesn't initialize due to missing sensor

                                  1 Reply Last reply Reply Quote 0
                                  • Cliff WongC
                                    Cliff Wong ModalAI Team
                                    last edited by 3 Aug 2021, 20:27

                                    Hi Dillion--the reject control on mode switching is from having GPS activated (sounds like you don't have a 3D fix) considering your aid mask is 329. For vio-only flight, the parameters should be this:start-vio.png

                                    If that does not solve it, you'll need to confirm in QGC's nuttx shell that vio message data is getting to PX4:

                                    • In QGC, goto the [mavlink console] under [analysis tools], press [enter] to get a nuttx prompt
                                    • type "uorb top vehicle_visual_odometry" [enter]
                                    • confirm you're getting similar rates like this (key is the rate column)
                                    TOPIC NAME                    INST #SUB RATE #Q SIZE
                                    vehicle_visual_odometry          0    1   30  1  256 
                                    vehicle_visual_odometry_aligned  0    0   15  1  256
                                    

                                    That will confirm vio data is being processed directly in PX4's EKF module. If not, we'll need to have you setup the video overlay to verify vio data itself (aka verify a mavlink issue).

                                    A 1 Reply Last reply 9 Dec 2021, 19:42 Reply Quote 0
                                    • D
                                      DillonAllen
                                      last edited by 3 Aug 2021, 22:33

                                      Since we are attempting to preforming indoor flight using VIO I had disabled the SYS_HAS_MAG and the GPS_1 config like it says in the quickstart guide, so for this reason I didn't have the GPS and magnetometer plugged in. Once I plugged in the GPS and magnetometer the drone had valid position data and we were able to actually fly the drone.

                                      The problem now is that when we flew it (which was outside in the sun which might have caused problems) the drone would take off in position mode very nice for about 5 seconds then it would start to freak out and flying more sporadically which is when we would land the drone. Is this due to the drone being flown outside is the sun or is this some type of calibration issue?

                                      1 Reply Last reply Reply Quote 0
                                      • Chad SweetC
                                        Chad Sweet ModalAI Team
                                        last edited by 4 Aug 2021, 02:51

                                        Hi Dillon,

                                        You can initialize properly without mag, but you'll need a ModalAI firmware image on the Flight Core. You can see the v1.10 and 1.11 images here

                                        I found the SYS_HAS_MAG reference in the calibrate cameras page where it also references needing the firmware. I could not find it in a quickstart though. If you have a pointer to that page we would like to make sure it correctly calls out the custom firmware as well as it could be an oversight on our end.

                                        The firmware we shipped the unit with would support this, so maybe you upgraded through QGC or something.

                                        1 Reply Last reply Reply Quote 0
                                        • Chad SweetC
                                          Chad Sweet ModalAI Team
                                          last edited by 4 Aug 2021, 02:55

                                          To debug VIO, there are a number of different tools:

                                          1. Monitor in QGC as shown here
                                          2. Use voxl-inspect-qvio
                                          3. Monitor on qvio overlay (still to be documented here)
                                          1 Reply Last reply Reply Quote 0
                                          • Chad SweetC
                                            Chad Sweet ModalAI Team
                                            last edited by 4 Aug 2021, 03:13

                                            This is all assuming you have not modified the location of your tracking camera relative to the IMU. Are you using the Flight Deck mechanical configuration exactly, or has it been modified?

                                            1 Reply Last reply Reply Quote 0
                                            8 out of 30
                                            • First post
                                              8/30
                                              Last post
                                            Powered by NodeBB | Contributors