Commit Graph

1903 Commits

Author SHA1 Message Date
Peter Barker d1170db4bf Tools: allow parameters to be specified on a per-vehicle basis 2020-06-16 11:21:47 +10:00
Peter Barker ba5e4b8e37 autotest: python3 fix for fly_guided_move_to 2020-06-15 12:54:25 +10:00
Peter Barker 300e7ac2eb autotest: increase timeout on receiving mission-related messages
... to silly proportions.
2020-06-12 14:05:35 +10:00
Peter Barker 77e5236278 autotest: drain mavlink queue to avoid failing on slow MISSION_COUNT
It was observed from a log of a failed CI test that the ACK from
clearing the rally items took 6 wallclock seconds to arrive.

We were not waiting for that ACK to arrive before sending the request
for the mission item count, but if it has taken more than six seconds
for the ACK to arrive it is reasonable to assume that MISSION_COUNT
could very well take more than the 10 seconds we allow for it.

If we drain the mav before sending the request for the mission count we
should remove any signficiant timing problem due to a backlog of mavlnk
messages, but the amount of traffic here is problematic.

Also drain in lots of other places where we might be spending way too
long parsing messages.
2020-06-11 20:53:50 +10:00
Peter Barker dc19dfaed8 autotest: fix several race conditions in RCOverride test 2020-06-11 08:30:32 +10:00
Peter Barker e207bbdf2a autotest: fix SYSTEM_TIME stream detection function
MAVProxy's output is read by autotest via pexpect.

SITL's output is read by MAVProxy.

If we don't read MAVProxy's stdout then it doesn't read SITL and
everything stops.

Also, since we need to drain pexpects as part of reboot, and applying
parameter files requires rebooting... we need to append the expect
objects to the global list before we apply parameter files.  So move
that call.
2020-06-10 22:00:01 +10:00
Iampete1 579227d27a Tools: param.py add MB 2020-06-09 09:23:25 +10:00
bugobliterator 0528daecd8 autotest: increase timeout for compass calibration 2020-06-08 07:25:51 +10:00
Andrew Tridgell 7390846851 autotest: we need more than 1500 throttle for SimpleMode test
we are in stabilize and flying around, needs more than half throttle
to maintain height. This test was already marginal, but addition of
pressure alt in SITL pushed it over the edge
2020-06-05 11:35:53 +10:00
bugobliterator a5e9da337a Tools: autotest: fix FixedYawCalibration 2020-06-05 09:38:40 +10:00
bugobliterator 2c3bd61eb4 autotest: remove older compass calibration test 2020-06-05 09:38:40 +10:00
Pierre Kancir bd53796ed4 Tools: copter: add compass calibration testing 2020-06-05 09:38:40 +10:00
Pierre Kancir 2c7fc65fbd Tools: common.py: add generic compass calibration test 2020-06-05 09:38:40 +10:00
Pierre Kancir b72a17533c Tools: common: add a method to try arming and wait a result 2020-06-05 09:38:40 +10:00
Pierre Kancir 59de90d97f Tools: common.py: make max_delta a paramter for verify_parameter_values 2020-06-05 09:38:40 +10:00
Peter Barker 6490a57179 autotest: move check_logs to be an AutoTest-class function
This makes the AutoTest instance cognizant of the binary log files it is creating.  This will be useful for checking the contents of the log files created.
2020-06-04 20:15:31 +10:00
Peter Barker d08e9b3363 autotest: --list-subtests works for QuadPlane, Heli and BalanceBot 2020-06-04 10:13:57 +10:00
Peter Barker 6c67ddacf4 autotest: rename set_heartbeat_interval to set_heartbeat_rate 2020-06-04 01:11:28 +10:00
Peter Barker 4e216f976f autotest: assert that Plane doesn't support fence-via-mission-item-protocol
Hopefully this starts to fail at some stage!
2020-06-02 19:00:32 +10:00
Christian Clauss b07fb05dde autotest: Use ==/!= to compare constant literals (str, bytes, int, float, tuple)
Avoid SyntaxWarnings on Python >= 3.8

% `python3.8`
```
>>> "second" is "second"
<stdin>:1: SyntaxWarning: "is" with a literal. Did you mean "=="?
```
`flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics`
```
./Tools/autotest/arducopter.py:3899:20: F632 use ==/!= to compare constant literals (str, bytes, int, float, tuple)
                if loop is not "second":
                   ^
./Tools/autotest/arducopter.py:4047:20: F632 use ==/!= to compare constant literals (str, bytes, int, float, tuple)
                if loop is not "second":
                   ^
2     F632 use ==/!= to compare constant literals (str, bytes, int, float, tuple)
2
```
2020-06-02 16:25:15 +10:00
Peter Barker ffaa60b9ed autotest: stop emitting duplicate rangefinder headings
This was only an issue for the Wasp rangefinder block, which drops stuff
in at the top level by specifying the same subgroup name as the top
level.
2020-06-02 09:37:33 +10:00
Rajat Singhal 969a66fa01 Tools: autotest: Add Max RC input test for Rover
Currently disabled since it triggers Arithmetic Exception
2020-05-31 21:11:36 +10:00
Peter Barker c474edbfbc autotest: attempt to make parameter download more reliable
something is stopping parameters from being fetched.  Give it time to
clear.
2020-05-30 10:11:07 +10:00
Peter Barker adeb37581f autotest: fix heli for setpoint change 2020-05-29 14:53:12 +10:00
Peter Barker aaef44858f autotest: add test for Heli stabilize-mode takeoff 2020-05-29 14:25:30 +10:00
Peter Barker c44b760f3c autotest: explicitly run hello-world test and check for string 2020-05-28 13:49:47 +10:00
Peter Barker b0916231b2 autotest: add tests for log download 2020-05-26 19:32:49 +10:00
Peter Barker c8fdf9305b autotest: add test for quadplane stickmixing 2020-05-24 12:17:50 +10:00
Andy Piper 1358e39ffd autotest: test 256 FT windows and fix calculation of log-based FFT
fix quadplane FFT reference calculation
re-enable harmonic test
use median for measuring in-flight FFT average as it's much more reliable
relax quadplane filter restriction
harmonic switching test
tighten frequency check and loop twice to avoid heisenbugs
2020-05-24 07:43:34 +10:00
Peter Barker 605672b631 autotest: round frsky altitude rather than truncate
Closes https://github.com/ArduPilot/ardupilot/issues/14431
2020-05-23 17:40:24 +10:00
Arash Negahdar a7768aabae Tools: Expose more options to SCRIMMAGE 2020-05-21 08:04:23 +10:00
Peter Barker 1f1383ab64 autotest: add quadplane test for qassist 2020-05-20 18:39:42 +10:00
Peter Barker f9c86bbfd0 autotest: ensure cached timestamp is up-to-date for run_cmd_get_ack
If a long-running process drains the mavlink stream rather than parsing
it then the cached timestamp can be very, very out-of-date.  When we
next receieve a timestamp, then, there can be a signficant change in
time when we weren't expecting it.

run_cmd_get_ack can't use get_sim_time() as it might swallow the ack it
is looking for.
2020-05-19 19:12:41 +10:00
Peter Barker b857002158 autotest: drain mav before checking EKF values
May be getting stale values from this function
2020-05-19 19:12:41 +10:00
Peter Barker d51d6752e5 autotest: drain mav before delay
We're seeing suspiciously low wall-clock delays.
2020-05-19 19:12:41 +10:00
bugobliterator 183e50b31f autotest: fix autotest on mac os x 2020-05-17 16:12:43 +10:00
Peter Barker c0fae0b1fb autotest: disable GyroFFT test; underlying issue being actively worked on 2020-05-15 16:02:41 +10:00
Peter Barker dec615bfb5 autotest: drain SITL pexpect when waiting for parameter
This is important when rebooting as the ArduPilot process can block on
sending to stdout, which pexpect is reading from.  While rebooting we're
waiting for a parameter to be reset to a different value in this loop,
which could take quite some time.
2020-05-15 16:02:09 +10:00
Peter Barker f6b121ad87 autotest: add tests for logging 2020-05-15 16:02:09 +10:00
Andrew Tridgell 8c59eb58bb Tools: added generic copter CMAC mission 2020-05-09 12:33:33 +10:00
Andy Piper 8f864f02fb autotest: 256 windows don't currently work 2020-05-06 10:14:30 +10:00
Andy Piper db4a612c13 autotest: test 256 FT windows and fix calculation of log-based FFT
fix quadplane FFT reference calculation
re-enable harmonic test
use median for measuring in-flight FFT average as it's much more reliable
relax quadplane filter restriction
2020-05-06 10:14:30 +10:00
Peter Barker 1c7354c321 autotest: improve mount debug 2020-05-05 20:51:23 +10:00
Peter Barker b312260be3 autotest: add timestamp to progress message 2020-05-05 11:09:43 +10:00
Peter Barker bd0ebb5778 autotest: accept statustext and ack in any order for mission errors
Accept statustext/ack in any order; statustext may come after ack
2020-05-04 18:42:18 +10:00
Peter Barker ebc781ba3a autotest: switch to looking for barometer update string for passthrough test
MAVProxy can fetch parameters using FTP rather than normal param
mechanism.  Currently this does not emit any of our statustext
information - like the text we're looking for in this test
2020-05-04 10:07:38 +10:00
Peter Barker d197fd4acf autotest: fix rare, random failure in GCSRally test
Notionally the statustext could be put aside and we could not have room
for it, so we see the ack first.
2020-05-04 00:22:54 +10:00
Peter Barker 475027e03a Tools: autotest.py: add --enable-math-check-indexes 2020-04-28 15:12:39 +10:00
Peter Barker cb3c1742e8 Tools: sim_vehicle.py: add --enable-math-check-indexes 2020-04-28 15:12:39 +10:00
Arash Negahdar 7de136121b Tools: Exit cleanly based on the environment
As suggested by Peter Barker
2020-04-28 11:09:51 +10:00