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

PX4 SITL Tests Improvements #23965

Open
8 tasks
mrpollo opened this issue Nov 18, 2024 · 5 comments
Open
8 tasks

PX4 SITL Tests Improvements #23965

mrpollo opened this issue Nov 18, 2024 · 5 comments

Comments

@mrpollo
Copy link
Contributor

mrpollo commented Nov 18, 2024

We need to improve the current SITL tests.

Stage 1

Stage 2

  • Update architecture to use the latest dependencies, Base OS, PX4, and MAVSDK
  • Migrate to the latest Gazebo (not classic)
  • Document how SITL tests work in Github Actions
mrpollo added a commit that referenced this issue Nov 18, 2024
@mrpollo mrpollo self-assigned this Nov 18, 2024
mrpollo added a commit that referenced this issue Nov 20, 2024
@MaEtUgR
Copy link
Member

MaEtUgR commented Nov 21, 2024

Can we coordinate on fixing the tests instead of just disabling them. I'm pretty sure they point us to real issues and we just gloss over because it's too hard to figure out what's going on in an hour.

I see two failure cases:

  1. VTOL related to airspeed validation dropping out
    grafik

    • Airspeed module should not be down in the first place not at the beginning and not mid flight, airspeed data is available the whole time.
    • Transition fails because the check considers outdated airspeed:
      const bool airspeed_triggers_transition = PX4_ISFINITE(_airspeed_validated->calibrated_airspeed_m_s)

      I quickly discussed with @sfuhrer
  2. Multicopter almost any test type can time out without arming because "ekf2 missing data"
    grafik

@mrpollo
Copy link
Contributor Author

mrpollo commented Nov 21, 2024

Yes, @MaEtUgR, we are changing gears here and started working on fixing the tests after we fixed the noisy issues that were hiding the real problems

@dagar
Copy link
Member

dagar commented Nov 21, 2024

This one looks real, during RTL there's a bogus "Pilot took over using sticks" and we have a fly away.

standard_vtol: 'RTL with Mission Landing': failed
https://github.com/PX4/PX4-Autopilot/actions/runs/11957851318/job/33335973614

https://logs.px4.io/plot_app?log=e0673b3c-8514-4390-b3ee-d00a317b17e3

image

@MaEtUgR
Copy link
Member

MaEtUgR commented Nov 21, 2024

A shot in the dark. Probably not the issue but might give us more insights also if it only rules out multi-EKF: #24017

@MaEtUgR
Copy link
Member

MaEtUgR commented Nov 21, 2024

@dagar Regarding pilot took over I'm confused. Plotjuggler doesn't show this message (event?). As expected there's no valid stick input and also never a sticks moving flag. The mode never changes to Position or indicates switching to Position/Altitude is not possible but that would be what "Pilot took over" stands for.
grafik

EDIT: Manual control is neither updated nor valid, nor moving. So I'd put my bet on the message being mixed up 🤔

if (manual_control_updated && manual_control_setpoint.valid) {
_is_throttle_above_center = (manual_control_setpoint.throttle > 0.2f);
_is_throttle_low = (manual_control_setpoint.throttle < -0.8f);
if (isArmed()) {
// Abort autonomous mode and switch to position mode if sticks are moved significantly
// but only if actually in air.
if (manual_control_setpoint.sticks_moving

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