Commit Graph

704 Commits

Author SHA1 Message Date
Josh Henderson 695ad5b4f6 Autotest: BaroDrivers tighten leeway for pressure and temp deltas 2021-08-24 09:55:01 +10:00
Josh Henderson 70166c8173 autotest: add battery_charge_state ok & low tests 2021-08-18 15:32:28 +10:00
Peter Barker 12ac5174d7 autotest: check battery_status.charge_state is critical on failsafe 2021-08-17 14:40:55 +10:00
Dr.-Ing. Amilcar do Carmo Lucas d53299ecb0 Tools: comment out the FETtecESC_safety_switch() function for now because it is failing
I do not understand why it is failing, and failed at fixing it.
2021-08-13 16:22:37 +10:00
Peter Barker 20f58afa93 Tools: complete rewrite of the ESC-configuration state machine
Co-authored-by: Dr.-Ing. Amilcar do Carmo Lucas <amilcar.lucas@iav.de>

tidy message sending using templates
Calculate and enforce the minimum update period.
Disable unused features to save flash
forced time gaps between all transmits
correct ESC reset functionality
Avoid re-initialization repeatition
Make sure we stop FETtec if safety is on (ignore reverse) this reduces duplicated code
Error count calculation changed
   as the telemetry error count is absolute only the overflow status can be safed and used for the percentage calculation
Update the README to add autotests information
FETtec needs a time gap between frames
  This allows running at high fast_loop_rates
do not send fast_throttle data if a configuration command just got sent
Example parameter configuration file is for a Quadcopter with ESCs connected to Telem2
remove two FIXME
fix compilation in master
Fix the ESC not re-initializing issue.
  Now we re-init whenever we loose connection
RVMASK parameter changes only take effect when not armed
Improve documentation
Always use the same wording when referring to fast-throttle commands
fix pre-arm check message
assure the length of the memmove is positive
Set HAL_AP_FETTEC_CONFIGURE_ESCS to 0 when no ESC hardware is available and you want to test the UART send function
2021-08-13 16:22:37 +10:00
Peter Barker e263063600 autotest: a gap in the beginning of the SERVO_FTW_MASK is now allowed, test it
make sure the SERVO_FWT_MASK is valid:
  - it can have bit gaps between active channels, but channels higher than 12 are not allowed (AP_EST_TELEM limitation)
  - Explain that the FETtec ESC IDs inside the FETtec Firmware need to be contiguous and start at 1.
add tests for ESC power outages
add test that safety switch zeroes PWM for FETtec ESC
2021-08-13 16:22:37 +10:00
Peter Barker 3bc4cf710f autotest: add test for FETtecESC 2021-08-13 16:22:37 +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 44d5885d99 autotest: augment blending test to ensure GPS switch events make log 2021-08-06 15:30:18 +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 ca35d01baa autotest: move upload_simple_relhome_mission up 2021-08-05 10:38:03 +10:00
Josh Henderson 162b3b70cf Autotest: use MAV_POS_TARGET_TYPE_MASK, remove POS_TYPE_MASK_FORCE 2021-08-03 12:48:38 +10:00
Peter Barker 909decc5be autotest: move wait_attitude up to common.py 2021-07-28 17:20:28 +10:00
Paul Riseborough 7f3980c1f4 Tools: Rework Copter VibrationFailsafe test to use commanded land 2021-07-22 18:20:45 +10:00
Paul Riseborough ff1c465a17 Tools: relax navigation test accuracy 2021-07-22 18:20:45 +10:00
Peter Barker 27de0a3d23 autotest: add new Copter yaw tests 2021-07-21 17:05:01 +10:00
Peter Barker 571ae46b0f Tools: split yaw-vehicle-for-mount-roi test out 2021-07-19 18:16:13 +10:00
Peter Barker 2ae6030f0c autotest: add baro i2c drivers autotest 2021-07-14 17:46:15 +10:00
Peter Barker 14d271776e autotest: break out a fly_mission method 2021-07-14 17:46:15 +10:00
Peter Barker 53e980bada autotest: add test for two consecutive drops with no reboot 2021-07-14 16:38:36 +09:00
Pierre Kancir 8234fd4c39 Tools: autotest: add IRLock SITL test 2021-07-12 17:50:31 +10:00
Leonard Hall 33ec8b965b Tools: Autotest update guided bitbask to include acceleration 2021-07-10 20:25:05 +09:00
Andrew Tridgell 5a5018cda2 autotest: adjust test_altitude_types for small change in longitude_scale 2021-07-10 07:20:41 +10:00
Peter Barker aa27479e95 autotest: show output from Replay run 2021-07-08 16:20:12 +10:00
Siddharth Purohit 2750b361aa autotest: move to using tool instead of tools program group 2021-07-07 17:31:09 +10:00
Peter Barker df02289493 autotest: add test for two consecutive drops with no reboot 2021-07-07 12:01:07 +10:00
Randy Mackay 5ec75578ab Tools: add copter gps_glitch_loiter_test2
checks for twitches in Loiter after GPS glitch
2021-06-25 16:52:57 +09:00
Randy Mackay f3c96b438b Tools: autotest of vibration failsafe 2021-06-24 08:34:56 +10:00
Peter Barker d6f619fb1a autotest: emit 'attempt 1/3' when retrying set_parameter
Also reterm things in terms of attempts rather than retries
2021-06-24 08:30:03 +10:00
Peter Barker 8395bf617f autotest: disable autotesting of tri frame as it is still busted 2021-06-21 21:17:10 +10:00
Peter Barker 697fbb0db0 autotest: verify roll/pitch are not adversely affected by yaw inputs 2021-06-21 21:17:10 +10:00
Peter Barker 4c20bc2d9d autotest: ensure reasonable yawrate on takeoff in FlyEachFrame 2021-06-21 21:17:10 +10:00
Peter Barker 723d2dee00 autotest: improve diagnostics around touchdown/takeoff expected tests
Also looks at last result as we don't appear to have a consistent number
in our tests
2021-06-18 09:03:34 +09:00
Peter Barker e77512ba08 autotest: add method to create simple relative-to-home mission 2021-06-11 16:59:51 +10:00
Peter Barker 6944ef6af1 autotest: fly each working Helicopter frame 2021-06-09 12:15:42 +10:00
Andrew Tridgell 3be7f1ae23 autotest: removed tri from doesn't fly list 2021-06-08 19:11:32 +10:00
arsh 45f1d03bda autotest:Copter test fix for some frames
removed some lines

Whitespace messages removal
2021-06-08 16:50:37 +10:00
Peter Barker 0bd9610687 autotest: add trivial test for BodyFrameOdom 2021-06-04 15:09:51 +10:00
Peter Barker 2439587c5a autotest: add tests for ground effect compensation active in EKF 2021-06-02 11:13:16 +09:00
Peter Barker c1a20ceab4 autotest: add test to catch bug with opticalflow if no rangefinder 2021-06-01 11:31:42 +10:00
Leonard Hall 41c437b768 AutoTest: Copter: fly_poshold_takeoff increase acceptable range 2021-05-24 20:13:37 +10:00
Peter Barker c7a9fb3c9c autotest: retry dynamic notches 8 times before failing
This test is flapping.

This is a poor - but serviceable - workaround.
2021-05-18 11:13:10 +10:00
Andy Piper 2df7b5453e autotest: add test for ESC telemetry driven notches. 2021-05-12 17:01:11 +10:00
Peter Barker d2f78c69be autotest: add a simple test for SMART_RTL 2021-05-12 13:01:50 +10:00
Peter Barker 7ab094f3a1 autotest: tidy fly_guided_move_local 2021-05-12 13:01:50 +10:00
Peter Barker 1d6efbd56f autotest: fix loiter_to_ne
Co-Authored-By: leonardthall@gmail.com
2021-05-11 14:51:28 +10:00
Peter Barker 04aed49572 autotest: adjust GyroFFT threshold to make it pass
From Andy:

Can you make this 0. The test should then pass. I'm not terribly happy about it but its better than disabling the test and I can't tell whether there is actually a problem or not.
2021-05-07 18:30:08 +10:00
Peter Barker 0a235ce094 autotest: remove retry loop from within GyroFFT
This effectively removes an infinite loop from the GyroFFT test.
2021-05-07 18:30:08 +10:00
Peter Barker b04dfda9fb autotest: enable deca and dodeca frames in FlyEachFrame test 2021-05-06 16:26:28 +10:00
Peter Barker 57abaf0dec autotest: remove retry loop from within GyroFFTHarmonic 2021-05-01 21:30:28 +10:00
Peter Barker 4928ec18af autotest: remove retry loop from within fly_dynamic_notches
We retried externally to the test - may as well do so within
2021-05-01 21:30:28 +10:00
Peter Barker 2cd0099bbc autotest: exclude decarotor from fly-each-frame-test 2021-05-01 13:25:13 +10:00
Peter Barker 76678ffaf3 autotest: fix octa-cwx in SITL 2021-05-01 13:25:13 +10:00
Peter Barker 5172e767df autotest: fix octa-dji in SITL 2021-05-01 13:25:13 +10:00
Peter Barker 63ba484087 autotest: add test which flies each frame we can 2021-05-01 13:25:13 +10:00
Peter Barker e4c405b77b autotest: add a test for Spline missions showing terrain requirement 2021-04-28 18:40:26 +10:00
Peter Barker 30e8160aa1 autotest: sort logs before moving
Makes it easier to find last log in output.

Also removing pointless lamdaing of some functions
2021-04-21 13:16:24 +10:00
Peter Barker ea4bbcf6ee autotest: add test for copter position reset 2021-04-05 00:02:42 +10:00
Randy Mackay ab2e429f32 Tools: Copter.fly_square descends more quickly 2021-04-03 12:07:59 +09:00
Randy Mackay f341429977 Tools: Copter.RTLSpeed gets increased speed tolerance 2021-04-03 12:07:59 +09:00
Randy Mackay c04f686ce7 Tools: extend copter NavDelay test by 80sec
s-curves slows missions slightly
2021-04-03 12:07:59 +09:00
Peter Barker f0094bac40 autotest: remove copied-in duplicate of pymavlink rotmat 2021-04-03 13:26:06 +11:00
Peter Barker d384ba6585 autotest: increase time permitted for Copter to turn east
Sometimes they turn almost 360 which takes a while
2021-04-02 21:29:43 +11:00
Peter Barker b2f47ba367 autotest: add test for auxilliary functions in missions 2021-03-31 11:36:09 +11:00
Peter Barker e2a350f12e autotest: reduce race condition in fly_square mission
We end up where we started, so when we start to play the mission back we
might immediately be at the first waypoint.  That's a problem as we may
never see the NAV_CONTROLLER_OUTPUT mention waypoint 1 and thus we
fail the test
2021-03-25 02:13:44 +11:00
Peter Barker fdbbcaa506 autotest: bump default speedups for several vehicles
These tests seem to run stabley on my box with essentially no speedup
limit
2021-03-24 14:46:48 +11:00
Peter Barker 9f15689850 autotest: wait longer for prearm failure in IE24 autotest
we only emit prearm failures every 30 seconds - we just weren't waiting
long enough here
2021-03-23 20:34:47 +11:00
Peter Barker 073a9e3390 autotest: fix frsky passthrough test
Mainly through polling much faster, but also allowing for statustexts in
different orders from frsky/statustext
2021-03-22 18:08:44 +11:00
Peter Barker 8901efd69d autotest: start and stop MAVProxy for alttype and surface tracking tests
autotest doesn't currently supply terrain tiles, so MAVProxy must be
started
2021-03-19 09:46:45 +11:00
Peter Barker 462ac255a3 autotest: start MAVProxy only as needed for testing 2021-03-19 09:46:45 +11:00
Peter Barker 37efb1cbeb autotest: Copter sim passes default file instead of setting parms
We're now waiting for the vehicle simulation to provide us a heartbeat
for a non-generic frame before considering it good to fly.

Unfortunately, Copter relies on the parameter file to tell it which
frame to use - and we don't apply parameters from parameter files until
after we've checked the heartbeat.

Passing the file into ArduPilot on the commandline means we don't have
this problem.
2021-03-19 09:46:45 +11:00
Peter Barker 120167f799 autotest: fix fly_square mission
waypoint doesn't change until mission is running
2021-03-18 17:02:06 +11:00
Peter Barker 42eec13f5e autotest: adjust CAN test for lack of MAVProxy 2021-03-18 13:50:57 +11:00
Peter Barker da52e5d08c autotest: set SYSID_MYGCS in tests which need it
This was still relying on heartbeats coming from MAVProxy.  As speedup
increased those heartbeats may not come fast enough - and they really
should be coming from autotest as that's who's doing the commanding.

autotest: set SYSID_MYGCS in AFS test

autotest: set SYSID_MYGCS before setGCSfailsafe
2021-03-17 16:02:45 +11:00
Peter Barker 216140b58d autotest: remove un-needed portion of reset_delay_item
Looks like this function evolved and this appendix remained
2021-03-17 14:17:39 +11:00
Peter Barker f7d8994ce1 autotest: move assert_mission_count up, use it 2021-03-17 00:23:05 +11:00
Peter Barker 30c9d4bcf4 autotest: remove pointless loiter switch 2021-03-16 23:33:51 +11:00
Peter Barker 0414929310 autotest: fix Heli spline waypoint test
Mission isn't round-tripped so make it non-strict
2021-03-13 09:35:22 +11:00
bugobliterator 5074b6d336 autotest: add test case for GPS ordering
also fix flake8 issues
2021-03-12 16:32:36 +09:00
bugobliterator 48277b43e4 Tools: add autotest for checking GPS ordering 2021-03-12 16:32:36 +09:00
Randy Mackay 78ddd0512c Tools: autotest for copter spelling fix 2021-03-09 11:49:42 +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 269fa5cbe2 AutoTest: Copter remove FENCE_AUTOENABLE tests
Addresses comments made in review, removes the FENCE_AUTOENABLE param for copter.
No param means no tests required.
2021-03-05 14:52:46 +11:00
James O'Shannessy e16bbe6e18 AutoTest: Ensure fence state is disabled at end of test
This appears to be another case of the fence state carrying over from one test to another. Disabling the fence at the end of the test appears to have fixed this problem
2021-03-05 14:52:46 +11:00
James O'Shannessy 31462418c6 AutoTest: Ensure Copter can RTL and Land even when Fence Floor has not been auto disabled 2021-03-05 14:52:46 +11:00
James O'Shannessy 6251b6eead AutoTest: Rebase and carry across changes from autotest 2021-03-05 14:52:46 +11:00
James O'Shannessy b2346ef6df AutoTest: Adds additional tests to ArduCopter to test autoenable and floor
Adds tests for:
* Testing auto-enable disabled (when no autoenabling of the fence is required)
* Test auto-enabled always after takeoff (when takeoff complete condition met)
* Test auto-enabled disable floor only (when land sequence begins)
* Test auto- on arm/disarm (when vehicle is armed/disarmed)
* Tests ability to land when fence is breached
2021-03-05 14:52:46 +11:00
Dr.-Ing. Amilcar do Carmo Lucas dd5ede0fe0 autotest: small comment improvements 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
Dr.-Ing. Amilcar do Carmo Lucas 528defd560 Autotest: activate the fence via a mavlink command
This should not be required in the future, please fix this and revert this commit
2021-03-05 14:52:46 +11:00
Dr.-Ing. Amilcar do Carmo Lucas 8d8753b14c Autotest: fix two copter tests after parameter rename
I'm not sure if a better fix would be to remove the set_parameter() call
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
Randy Mackay a35a7e1523 Tools: autotest manual control test requires 12 deg
adjusted down because of lower default angle_max
2021-03-03 08:03:39 +09:00
Peter Barker cc83562add autotest: tidy fence handling 2021-03-02 16:54:06 +11:00
Peter Barker fc9a93ba67 autotest: stop using mavproxy for clearing missions 2021-03-02 14:24:36 +11:00
Peter Barker 97e2596bf8 autotest: stop clearing mission at start of test
These are implicitly cleared by the framework
2021-03-02 14:24:36 +11:00
Peter Barker 973510a4ff autotest: push context after customising cmdline
doing things in the other order causes problems when running the
complete suite
2021-03-02 14:24:36 +11:00
Peter Barker 10007e2e42 autotest: load missions natively rather than using MAVProxy 2021-03-02 14:24:36 +11:00
Peter Barker 34a52e9cfe autotest: use wait_statustext in place of mavproxy.expect for autorotate test 2021-03-02 13:34:09 +11:00