Commit Graph

449 Commits

Author SHA1 Message Date
Peter Barker 7571ef67af autotest: fix airspeed driver test mismatch at end of mission
ground interactions cause fluctuations
2022-08-29 11:02:14 +10:00
Peter Barker 3022299e71 autotest: disable SpeedToFly McReady tests
# mcReady tests don't work ATM, so just return early:
2022-08-29 08:23:41 +10:00
Peter Barker 2170c86b9c autotest: stop vehicle running into terrain in MAV_CMD_NAV_LOITER_TURNS 2022-08-19 17:05:22 +10:00
Iampete1 e7cbf266b3 Tools: autotest: plane: test allow mode change after fence breach option 2022-08-17 17:21:30 +10:00
Iampete1 83b544dd0c Tools: autotest: plane: wait at least 10 seconds before retriggering fence 2022-08-17 17:21:30 +10:00
Peter Barker d2d5aada09 autotest: re-enable terrain loiter check
We now have reliable terrain in autotest
2022-08-16 21:12:37 +10:00
Peter Barker 00d3af6fc5 autotest: handle terrain requests internally to autotest
We will cache all required SRTM data within the autotest branch
2022-08-16 11:12:44 +10:00
Peter Barker 46dacd3b61 autotest: add tests for disallowing flying mid-air 2022-08-12 09:44:08 +10:00
Peter Barker fecf7c2e0c autotest: augment Plane TerrainMission to check we *do* follow the terrain 2022-08-09 14:31:14 +10:00
Peter Barker 82bc2a7d85 autotest: adjust Plane EKF check for new configured-backend check 2022-07-28 15:53:13 +10:00
Peter Barker 3c700bdf44 autotest: disable terrain during frsky passthrough test
If terrain isn't available then our expected statustext gets blatted with one which RCTelemetry library emits
2022-07-21 14:31:32 +10:00
Peter Barker 515b79a6ca autotest: remove un-needed calls to drain_mav_unparsed
these calls are generally bad now, given we have context_collect things going on which always want to see messages coming in
2022-07-20 15:17:25 +10:00
Peter Barker acd9fb9c0a autotest: pause/unpause SITL while draining mav
If Python can't keep up with the message volume coming from the autopilot we never manage to drain all messages from the vehicle.

So try pausing/unpausing the simulation so we can drain the link...

AT-1968.6: AP: PreArm: Radio failsafe on
AT-1969.9: AP: PreArm: Radio failsafe on
AT-1971.2: AP: PreArm: Radio failsafe on
AT-1972.4: AP: PreArm: Radio failsafe on
AT-1973.7: AP: PreArm: Radio failsafe on
AT-1974.9: AP: PreArm: Radio failsafe on
AT-1975.3: Drained 2000283 messages from mav (7218.974791/s)
AT-1975.3: Exception caught: Traceback (most recent call last):
  File "/mnt/volume_nyc3_01/autotest/APM/APM/Tools/autotest/common.py", line 699
8, in run_one_test_attempt
    self.context_pop()
  File "/mnt/volume_nyc3_01/autotest/APM/APM/Tools/autotest/common.py", line 499
3, in context_pop
    self.set_parameters(dead_parameters_dict, add_to_context=False)
2022-07-19 11:00:27 +10:00
Peter Barker e77d0ce1a4 autotest: rewrite speedtofly test using wait_airspeed 2022-07-07 21:29:43 +10:00
Ryan Beall 592201d831 CI fix Soaring channel 3 check timeout 2022-06-30 20:06:33 +10:00
Ryan Beall 5a26635aca CI fix Climb before turn Timeout again 2 2022-06-30 20:06:33 +10:00
Ryan Beall 69ffac890f CI fix Climb before turn Timeout again 2022-06-30 20:06:33 +10:00
Ryan Beall 2b9d116274 CI fix Climb before turn Timeout 2022-06-30 20:06:33 +10:00
Ryan Beall ae6295e11c CI fix RTL Timeout 2022-06-30 20:06:33 +10:00
Peter Barker 7120d4f750 autotest: fix race condition in need-ekf-to-arm check
At extreme speedups we may not detect the reboot in the Python before the autopilot is ready to arm...
2022-06-16 14:53:21 +10:00
Peter Barker b18c597f0b autotest: fix race condition in arduplane.py fly_mission
We can lose the final message when we get_sim_time and wait_heartbeats and similar
2022-06-15 09:11:51 +10:00
Peter Barker 1b22de0dd9 autotest: fix race condition in deepstall tests 2022-06-14 08:16:03 +10:00
Peter Barker fc2c3604e8 autotest: change plane default speedup time to 100 2022-06-12 15:56:53 +10:00
Peter Barker 2e0653ef71 autotest: be more lenient with terrain report fetching 2022-06-12 15:56:53 +10:00
Peter Barker 09ab90b8be autotest: fix flapping AirspeedDrivers test 2022-06-12 15:56:53 +10:00
Pierre Kancir 4e2e4fa4d4 Tools: autotest: remove useless shebang 2022-06-08 08:16:42 +09:00
Peter Barker 069fdfae60 autotest: test SITL airspeed sensor backend 2022-05-25 17:52:44 +10:00
Iampete1 d5e282c5a1 Tools: allow FBWB alt control option in LOITER 2022-05-22 12:09:43 +10:00
Peter Barker 24771ab2a4 autotest: fix DO_CHANGE_SPEED autotest
Recent airspeed fixes means we need to give the vehicle more time to achieve the initial airspeed
2022-05-20 09:56:31 +10:00
Peter Barker d6504bcaa8 autotest: remove hack to get dual-airspeed-autocal passing 2022-05-18 18:06:18 +10:00
Andrew Tridgell 895c57562c autotest: adjust DO_CHANGE_SPEED test for EAS2TAS corrections 2022-05-17 19:34:32 +10:00
Peter Barker cebb57266d autotest: calibrate two airspeed sensors in-flight 2022-05-16 09:50:52 +10:00
Peter Barker b8407a4bec autotest: adjust current wp reset 2022-05-15 21:17:50 +10:00
Andrew Tridgell 151f17d563 autotest: reset mission on takeoff for quadplanes 2022-05-15 21:17:50 +10:00
Peter Barker 287573fff7 autotest: add test for large circle radii in NAV_LOITER_TURNS 2022-05-11 17:40:35 +10:00
Peter Barker b659360d64 autotest: test DO_CHANGE_SPEED mission item for Plane 2022-05-05 10:48:35 +10:00
Mirko Denecke 4c727eca60 Tools: fix auxiliary typo 2022-05-02 10:55:08 +10:00
Peter Barker 43b5f22c1a autotest: add test for avoidance resume-auto-or-loiter action 2022-04-21 06:59:39 +10:00
Peter Barker 573cb0494d autotest: set RL_AUTOLAND=1 for more tests 2022-03-14 09:52:41 +11:00
Andrew Tridgell 46a7f2cc4b autotest: adjust for RTL_AUTOLAND failure 2022-03-14 09:52:41 +11:00
Andrew Tridgell 6fcf85edb8 autotest: more changes for plane disarm disallow 2022-03-09 17:13:45 +11:00
Henry Wurzburg b3af8221be Tools: clarify and simplify RC failsafe messages 2022-03-01 11:05:15 +11:00
Peter Barker 850227ffdb autotest: add test for THR_FAILSAFE==2 and throttle output 2022-03-01 10:29:37 +11:00
Peter Barker 3f7e120a67 autotest: add test for terrain_check 2022-02-25 09:28:04 +11:00
Peter Barker 62efb470f6 autotest: change fly_terrain_mission test name 2022-02-25 09:28:04 +11:00
Peter Barker 376d7ade50 autotest: use assert_receive_message to remove redundant code 2022-02-15 11:06:10 +11:00
Randy Mackay 61871b1d7b Tools: disable Plane Landing-Drift test 2022-02-12 08:28:44 +09:00
Peter Barker 13d5b00a22 autotest: increase timeout in Baro-Drift test
timeout was being hit on the autotest server

Also wait_disarmed isntead of wait for statustext You get a bit more information about what's going on this way
2022-02-09 19:27:21 +11:00
Samuel Tabor dbc63f7b0d autotest: Improve Landing-Drift 2022-02-08 13:25:17 +11:00
Peter Barker d086b5e9fc autotest: add test for DO_CHANGE_ALTITUDE 2022-02-08 10:59:13 +11:00
Andrew Tridgell 2193f18ad7 autotest: fixed DCM fallback test
give equivalent lag to old test
2022-01-12 07:54:46 +11:00
Samuel Tabor 71596c2c9f autotest: Add a test for GLIDE_SLOPE_THR 2021-12-27 11:27:52 +11:00
Samuel Tabor 75ee4b07fe autotest: Add test for soaring speed-to-fly feature 2021-12-16 07:12:24 +11:00
Peter Barker 66395ce195 autotest: add tests for AVD_F_ALT_MIN 2021-12-04 11:35:13 +11:00
Peter Barker 7afb472244 autotest: reboot after resetting parameters for ekf lane switchtest 2021-11-29 15:30:00 +11:00
Peter Barker b2f00d469e autotest: use set_parameters some more 2021-11-26 18:30:13 +11:00
Samuel Tabor 7931b10baf autotest: Fix rangefinder in Landing-Drift test. 2021-11-24 18:14:26 +11:00
Peter Barker c99a49eeb9 autotest: add test that we continue to get simulated vehicles from SIM_ADSB 2021-11-23 11:09:29 +11:00
Peter Barker b42432ea3e autotest: add trivial test for MSP 2021-11-17 12:06:07 +11:00
Shiv Tyagi 5811a62bc6 Tools: add autotest for DEVO telemetry
This adds an autotest to test if we receive data with devo telemetry correctly.
2021-11-16 11:37:10 +11:00
Peter Barker b6293acbce autotest: tweak how we make gps bad in fallback test 2021-11-05 23:18:11 +11:00
Iampete1 bc7c5c24da Tools: autotest: quadplane: reboot for tailsitters and allow longer time for disarm 2021-10-26 10:03:00 +11:00
Peter Barker 5cf62e8fb3 autotest: tweak soaring test SOAR_VSPEED
This is right on the edge on master
2021-10-21 12:09:21 +11:00
Peter Barker b9a4902aa6 autotest: let system settle before annoying
Also fly in circles to avoid long flight home
2021-10-21 12:09:21 +11:00
Peter Barker 0e6b0cbf35 autotest: add trivial test for MegaSquirt EFI system 2021-10-17 10:00:08 +11:00
Davis Schenkenberger 3e748d77c9 Tools: autotest: add test for LORD EAHRS 2021-10-17 08:55:03 +11:00
Josh Henderson 941cd6ebc2 Tools: arduplane.py add HIGH_LATENCY2 tests and Check Air_Temperature 2021-10-13 19:40:45 +11:00
Peter Barker 5f32fb82e8 autotest: add basic test that Plane autotune completes 2021-10-10 18:18:44 +11:00
Peter Barker dd49d79798 autotest: add test for Plane flying with a very slow GPS 2021-10-05 21:40:45 +11:00
Peter Barker a55bd3955a autotest: ensure camera feedback messages at correct altitude 2021-09-30 08:50:47 +10:00
Peter Barker bc664d77b7 autotest: add trivial test for MAVFTP using MAVProxy 2021-09-27 11:42:47 +10:00
Peter Barker b82b6f1e50 autotest: add test which force-switches to DCM and watches plane land 2021-09-26 17:35:46 +10:00
Samuel Tabor 9f77d5ac9d autotest: fly_mission should respect mission_timeout when waiting for wps. 2021-08-19 17:59:33 +10:00
Samuel Tabor 3a185e7533 autotest: Add plane test for landing with barometer drift. 2021-08-19 17:59:33 +10:00
Peter Barker d03cfb8615 autotest: Plane: wait for origin before enabling fence
we load into memory as origin-relative positions
2021-08-12 20:34:36 +10:00
Peter Barker abb6521127 Revert "autotest: use SIM_STATE (common.xml) instead of SIMSTATE (ardupilotmega.xml)"
This reverts commit 540a56adb8.

Polling this message caused issues on reboot - shouldn't be a problem
but is.

Retrying that showed that the Tracker GUIDED test failed reliably due to
a yaw problem.
2021-08-07 16:18:05 +10:00
Peter Barker 540a56adb8 autotest: use SIM_STATE (common.xml) instead of SIMSTATE (ardupilotmega.xml)
It is a useful superset
2021-08-05 18:35:11 +10:00
Peter Barker 8e72dc32d1 autotest: add test home is restored persistently on wdog reset 2021-08-03 10:36:50 +10:00
Josh Henderson 1cb11a5ff2 Tools: autotest change smartbatt param names 2021-08-03 09:36:26 +10:00
Peter Barker 7929122f49 autotest: improve AHRS trim test 2021-07-28 17:20:28 +10:00
Peter Barker da3ff2c142 autotest: add test for live change of AHRS orientation 2021-07-27 17:28:09 +10:00
Paul Riseborough 9207744152 Tools: Rework Plane.EKFlaneswitch autotest 2021-07-22 18:20:45 +10:00
Paul Riseborough ef1dda005f Tool: Allow more time for quadplane autotest to land and disarm 2021-07-22 18:20:45 +10:00
Paul Riseborough a0ae998a4d Tools: Fix AIRSPEED_AUTOCAL test failure
The mission plan for this test causes a lot of overshoot when turning onto final approach with the result that there is still some lateral offset when passing the landing waypoint that is not a measure of estimator accuracy.
2021-07-22 18:20:45 +10:00
Peter Barker 9fb7ef915e Tools: add support for ms5525 i2c sensor 2021-07-13 12:00:37 +10:00
Peter Barker 7842f55a3b Tools: add rc channel option to disable all airspeed sensors 2021-06-23 15:13:13 +10:00
Peter Barker d3f90bde7f autotest: add FlyEachFrame test for Plane 2021-06-21 14:13:18 +10:00
Peter Barker 61fda691f2 autotest: add trivial test for smart battery logging 2021-06-15 09:46:26 +10:00
Peter Barker 14b2af84ab autotest: break out a home_relative_loc_ne for getting a home-rel loc 2021-06-11 16:59:51 +10:00
Peter Barker fd792bebf8 autotest: wipe SITL state after temperature cal test
ArduPilot internals are fiddling state that the autotest suite is
unaware of, so wipe the eeprom after the test
2021-06-09 14:14:06 +10:00
Peter Barker 6944ef6af1 autotest: fly each working Helicopter frame 2021-06-09 12:15:42 +10:00
James O'Shannessy bc38d8a78c AutoTest: Fix autotest from failing due to state from earlier test
Autotest was failing because there was an expectation that the plane would fly relatively north from the takeoff point.
This assumption may not be true. We work around it by using a tin can instead of an exclusion polygon so that we breach no matter the direction we fly.
2021-05-05 10:59:10 +10:00
James O'Shannessy 0e656c1504 AutoTest: Ensure Plane uses home as Fence Return Point if one is not present and no exclusion fence is present 2021-05-05 10:59:10 +10:00
Iampete1 aa72b7da46 Tools: autotest: Plane: add loiter terrain following test 2021-05-02 18:51:27 +10:00
Peter Barker 0ee0228883 autotest: fix flapping fly-home-land-and-disarm
One of the tests just happened to be within acceptance radius of
waypoint 8 - so when we set that as a waypoint we never saw it actually
be our waypoint so the set_waypoint failed
2021-04-20 23:04:24 +10:00
Peter Barker fff4aa8bde autotest: increase allowed time for climb_before_turn to get home 2021-04-01 19:11:31 +11:00
Peter Barker 30ebe6cde9 autotest: augment test DO_AUX_FUNCTIION test for FAILED AND DENIED 2021-03-31 11:36:09 +11:00
Peter Barker b55094fef4 autotest: Test triggering Auxillary Functions via mavlink 2021-03-31 11:36:09 +11:00
Peter Barker 462ac255a3 autotest: start MAVProxy only as needed for testing 2021-03-19 09:46:45 +11:00
Stavros Korokithakis f6fc6d22da autotest: Fix the climb-before-turn test 2021-03-18 07:37:21 +11:00
Peter Barker 0c7f3d20a4 autotest: fix attitude test
autotest: add a get_messages_frame method

Attempts to get a set of messages as close as reasonable in time.
2021-03-16 14:19:44 +11:00
Stavros Korokithakis 29043d62e9 Add FLIGHT_OPTION to climb before RTL 2021-03-16 11:58:47 +11:00
Hwurzburg d15e01d390 Plane: fix DO_CHANGE_SPEED airspeed to impact only AUTO and GUIDED modes 2021-03-16 10:09:34 +11:00
Peter Barker eb702b0f82 Tools: add support for ATTITUDE_QUATERNION 2021-03-13 09:44:12 +11:00
Peter Barker f78d7c3b25 autotest: add option to not check current wp after set_current_wp
Sometimes a waypoint is set which we'll never emit as our current
waypoint (e.g. a JUMP)
2021-03-10 09:12:39 +11:00
Peter Barker 4a251bebbd autotest: fix fly_home_land_and_disarm; wp 7 is never current wp
This is never a current waypoint, so we can't wait for it
2021-03-10 09:12:39 +11:00
Peter Barker bdeadce95b autotest: improve deadreckoning test
autotest: use location_offset rather than coordinates in Deadreckoning test
2021-03-05 21:34:58 +11:00
Peter Barker 425ab1358a autotest: tidy streamrate handling
Stop setting MAVProxy stream rates; these are neither here-nor-there now as MAVProxy will only modify its own connection's streamrates now

Stop doing the set-streamrate dance to work around MAVProxy's
set_streamrate algorithms.

Remove useless and misleading set of streamrate in Plane test; we reset
streamrates on the reboot immediately following this set.  Considering
the streamrate was never eset this was a good thing.
2021-03-05 21:34:58 +11:00
James O'Shannessy bcc0da9c47 AutoTest: Adds additional autotests to capture mode change while breached
AutoTest: Adds test for fence breach switching to guided mode when no fence return point is present. In upstream, this results in a vehicle fly-away.
2021-03-05 14:52:46 +11:00
James O'Shannessy dac5996d93 AutoTest: Fix autotest conflicts after rebase on upstream 2021-03-05 14:52:46 +11:00
James O'Shannessy fa7be629e5 AutoTest: Make fence tests flake8 compliant 2021-03-05 14:52:46 +11:00
James O'Shannessy 2353b55452 AutoTest: Address race conditions in changes to fence tests 2021-03-05 14:52:46 +11:00
James O'Shannessy 76a2a76b54 AutotTest: Adds autotests for Plane to test RetRally flag added to AC_Fence 2021-03-05 14:52:46 +11:00
James O'Shannessy 8545715837 AutoTest: Add Static Fence Tests for unallowed arming when breaching geofence 2021-03-05 14:52:46 +11:00
James O'Shannessy 6f7ba3b037 AutoTest: Ensure fence is disabled at end of throttle_failsafe_fence test 2021-03-05 14:52:46 +11:00
James O'Shannessy bbd606b8b5 AutoTest: Corrections to autotests 2021-03-05 14:52:46 +11:00
James O'Shannessy 47e76a1807 AutoTest: Move fence enable/disable to common location 2021-03-05 14:52:46 +11:00
James O'Shannessy 215901be30 Autotest: Correct the logic for fence based autotest functions
Adds corrections to enabling fence using aux function.
Correctly test fences statically. Only uploaded fences can be checked using a fence file, so we check those first. Then we add steps to check tin can, max and minm all set the fence as present, as expected.
Plane will support MAV_PROTOCOL_CAPABILITY_MISSION_FENCE, so we assert that it does support it.
To test ceiling and floor, leverage some existing functions for takeoff, change altitude and land. Check for respective breach.
Add a floor breach check to copter.
2021-03-05 14:52:46 +11:00
James O'Shannessy 1a3e168ced Autotest: Fence is present, but test looking for not present
Autotest: Remove ties to mavlink FENCE_ACTION

Autotest: Add ArduPlane autotest to test ceiling and floor

Adds a test to ensure the vehicle reverts to RTL when breaching a ceiling or floor.

Autotest: Progress the test once we reach takeoff complete and fence enable

Autotest: Use RC_OPTION for Aux Switch functionality

Autotest: Enable fence last
2021-03-05 14:52:46 +11:00
Peter Barker a235246628 autotest: correct units in new AHRS2 test 2021-03-03 18:41:14 +11:00
Peter Barker b3ee5d5f59 autotest: increase verbosity in AHRS2 test 2021-03-03 16:29:33 +11:00
Peter Barker 317181922c autotest: ensure we're getting vaguely sane data in AHRS2 message 2021-03-02 20:48:36 +11:00
Peter Barker cc83562add autotest: tidy fence handling 2021-03-02 16:54:06 +11:00
Peter Barker 10007e2e42 autotest: load missions natively rather than using MAVProxy 2021-03-02 14:24:36 +11:00
Peter Barker 9120882e9e autotest: print name of open dataflash log when test exception caught
The stack trace is already extremely useful... but mapping back to the
relevant dataflash log is a bit of a pain.

Adding more stuff to this method in the future might be good, too.
2021-02-21 21:35:35 +11:00
Peter Barker d4aef2dba8 autotest: stop using MAVProxy to change mode 2021-02-20 00:03:24 +11:00
Peter Barker c13d229877 autotest: use self.set_current_waypoint rather than "wp set" to set current wp 2021-02-19 12:25:40 +11:00
Peter Barker dcc04ccd09 autotest: stop using MAVProxy to change modes 2021-02-18 17:38:52 +11:00
Peter Barker 628a3843b2 autotest: flake8 compliance for arduplane.py 2021-02-18 10:43:05 +11:00
Peter Barker a292fe1b8b autotest: use wait_statustext rather than mavproxy.expect
This is important when running under Valgrind as the text can be
significantly delayed.  wait_statustext times out in simulation time,
whereas mavproxy.expect has a flat 60s timeout
2021-02-17 18:16:04 +11:00
Peter Barker c00a82868e autotest: make DLVR sole airspeed sensor in test
The test wasn't actually *using* the DLVR...
2021-02-17 14:23:07 +11:00
Peter Barker ca49f62b6d autotest: add test for Plane's RTL_CLIMB_MIN parameter 2021-02-13 19:34:52 +11:00
Peter Barker d60fa86026 autotest: use set_map_from_rc more 2021-02-13 19:34:52 +11:00
Andrew Tridgell 3add045924 autotest: fixed accel/gyro threshold consistency for tempcal 2021-01-21 13:09:21 +11:00
Andrew Tridgell fe7d933976 autotest: use delay_sim_time() in tempcal test 2021-01-21 13:09:21 +11:00
Andrew Tridgell 58b9cd2c6e autotest: added assert_reach_imu_temperature() abstraction 2021-01-21 13:09:21 +11:00
Andrew Tridgell 4c315b57ca autotest: run gyro/accel cal at non-reference temperature 2021-01-21 13:09:21 +11:00
Andrew Tridgell 2cf7e7945c autotest: make tempcal debug output clearer 2021-01-21 13:09:21 +11:00
Andrew Tridgell 84dda13b42 autotest: use new learn param setup 2021-01-21 13:09:21 +11:00
Andrew Tridgell 30385fb8cb autotest: use set_parameters() in IMU temp cal test 2021-01-21 13:09:21 +11:00
Andrew Tridgell 327db46c15 autotest: added automatic testing of IMU Temperature calibration 2021-01-21 13:09:21 +11:00
Andrew Tridgell c396d15890 Revert "autotest: ensure defaults files don't set already-default-values"
This reverts commit 3d431cd4f1.

It breaks MissionPlanner SITL. We can re-apply once MissionPlanner
copes with external_model.
2021-01-20 08:54:43 +11:00
Peter Barker 3d431cd4f1 autotest: ensure defaults files don't set already-default-values
autotest: mark some vehicles as having external physics models

autotest: add default_params_filename to some vehicle info
2021-01-19 10:34:00 +11:00
Peter Barker 6becd90df0 autotest: increase timeout on DO_CHANGE_SPEED test 2021-01-18 19:08:46 +11:00
Peter Barker 5848ff7512 autotest: eliminate race condition in plane fence static test 2021-01-18 16:32:21 +11:00
Peter Barker 6865649b9b autotest: tidy and correct ekf lane switching test 2021-01-18 15:19:39 +11:00
Peter Barker 48a38f3ee2 autotest: wait for GPS fix before installing position validation handling 2021-01-18 15:11:19 +11:00
Peter Barker cd8a393ac2 autotest: create own RC thread to handle setting of RC overrides
autotest: prevent method-on-undef problem in case of early test failure

autotest: plumb MAVProxy rc input back in for switch test

autotest: close off rc thread in case of timeout
2021-01-15 20:56:30 +11:00
Peter Barker 47aea5f44c autotest: print stack traces for caught exceptions 2021-01-13 19:46:13 +11:00
Andrew Tridgell b5476c6e5c autotest: added ExternalAHRS test 2021-01-05 21:13:12 +11:00