Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bug: PX4 SITL EKF-Failure/GPS-loss #3415

Open
ahmed-elsaharti opened this issue Feb 22, 2021 · 1 comment
Open

Bug: PX4 SITL EKF-Failure/GPS-loss #3415

ahmed-elsaharti opened this issue Feb 22, 2021 · 1 comment

Comments

@ahmed-elsaharti
Copy link
Contributor

(Similar to the post over at #3406 but a bug report is more appropriate at this point)

Bug report

  • AirSim Version/#commit: 1.4 0096b5e
  • UE/Unity version: 4.25
  • autopilot version: PX4 1.10.1 SITL
  • OS Version: Windows 10 x64 (Running SITL on Cygwin 0.8)

What's the issue you encountered?

As seen in #3167, #3213, #3087 and many more, after launching AirSim in PX4 SITL mode (with lockstep mode enabled by default) the terminal displays the following errors continuously:
image
Although they do not affect the flight instantaneously, an EKF error shows up, QGC throws an 'no global position' error and the drone flies diagonally into the ground (and a line is actually traced on QGC showing that the GPS estimate just threw itself way off). As this happens timeout on HilActuatorControlMessage, resetting lock step mode appears on UE's side.
Here's a gif showing the problem in action:
PX4Bug

A workaround that fixes this by disabling lockstep mode is discussed in #3406. If you are facing a similar issue and need a temp fix have a look at that post

Also, I'm curious as to whether this problem occurs on Linux systems too. If not then this might be caused by Cygwin and AirSim not communicating well?
Anyway, it would be great if someone could test this out on a Linux system.

Settings

{
  "SettingsVersion": 1.2,
  "SeeDocsAt": "https://github.com/Microsoft/AirSim/blob/master/docs/settings.md",
  "SimMode": "Multirotor",
  "DefaultVehicleConfig": "PX4",
  "Vehicles": {
    "PX4": {
            "VehicleType": "PX4Multirotor",
            "UseSerial": false,
            "UseTcp": true,
            "TcpPort": 4560,
            "ControlPort": 14570
        }
  },
  "OriginGeopoint": {
    "Latitude": 47.641468,
    "Longitude": -122.140165,
     "Altitude": 0
    }
}

How can the issue be reproduced?

Note this error is inconsistent, ie: sometimes it happens as soon as the drone takes off and sometimes it takes a good 2-3 mins of flying before it happens.

To reproduce:

  1. Follow the docs to set up and launch PX4 SITL using release 1.10.1
  2. Launch QGroundControl
  3. Launch AirSim with the settings shown above
  4. Fly around for a bit using QGroundControl's 'go to location' (click somewhere on the map in QGC and it'll give u the option to go there) and/or upload a mission and run it.

Include full error message in text form

image
and
timeout on HilActuatorControlMessage, resetting lock step mode

What's better than filing an issue? Filing a pull request :).
Will probably file a PR with some edits and scripts to make disabling lockstep easier till we figure this out 😂

@lovettchris
Copy link
Member

Lockstep has been fixed in latest AirSim bits, can you try again using these fixes. Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants