Height estimate not stable and wrong heading
-
I have a clean install of voxl-sdk-1.1.2 and I am getting an error of a "height estimate not stable" which does not allow me to switch to position mode, or any autonomous functionality. Even with a GPS lock and 12 satellite connections.
I additionally observe that my compass's North points to the north of the PX4's init LOCAL orientation instead of the GLOBAL north, from GPS.
I am able to reproduce that by just changing orientation of the drone and restarting voxl-px4 service, while visualizing on QGroundControl.
Maybe the two are related. Is there any way to configure orientation to be taken from GPS and not perhaps the VIO channel?
P.S. I can bypass the error and switch to position mode by first arming in manual mode and then switching, but still I can't e.g return to home. Position holds great though.
-
@smilon If you run
voxl-configure-px4-params -w
to open the px4 param wizard, you can selectEKF2_helpers
and select from the param set options to fit your use case whether that is indoor/outdoor or vio vs gps flight -
@tom Hi Tom! To be honest I was not even aware this tool existed... super handy! So I played with the different EKF2_helpers and while the "Height estimate not stable" error was solved, I have two problems with the outdoor profiles that my application requires:
- outdoor_gps_baro.params:
While the heading is correct in this profile, I get the error "local position estimate not valid". I checked that VIO is up and PX4 receives vehicle_odometry data. Therefore I cannot takeoff with this configuration. Additionally I get a warning that "GPS speed accuracy too low".
- vio_gps_baro.params:
I can takeoff with position mode but I get the same "GPS speed accuracy too low" warning which does not allow me to trigger any autonomous PX4 functionality, which is crucial for my application. Even with 14 satellite lock, seems strange. Additionally the drone heading remains to be the local heading from the VIO initialization orientation, instead of the correct global heading. Is this intended?
Any ideas on how to solve these problems? I am more interested in the vio_gps_baro.params profile. Could it be a hardware issue with the GPS?
Best,
Milton
-
@smilon The parameter EKF2_REQ_SACC sets the maximum allowable speed accuracy. If you increase that value does the warning go away? Can you post a log?