Commit Graph

7678 Commits

Author SHA1 Message Date
Peter Barker
0d8512cdfb Tools: tidy external baro probing 2023-04-23 08:28:55 +10:00
Rhys Mainwaring
96d7265823 Tools: add ROS 2 launch tests
Add ros2.repo for installing packages with vcstool.

Add cmake custom targets to run waf configure and build.

Update ros2.repo.
- Add dependency on arshPratap/ardupilot_ros2.git.
- Update version used for ardupilot_ros2.git.
- Update ardupilot branch.
- Reduce to minimum required.

Add ROS 2 launch tests.
- Add ROS 2 Python package for testing the AP_DDS library.
- Initial version including example Python test.
- Move the CMakeLists.txt to ./Tools/scripts/ros2/ardupilot_sitl.
- Add virtual port test.

Update README.
- Add instructions for using the docker image.

Disable socat tests return code.
- Not portable across platforms?

Update ros2.repo
- Reduce to minimum required.
- Update README.
- Update ardupilot_dds_tests packahe.xml

Use pytest tmp_path_factory.
- Use pytest built-in fixture for tmp directories.

Update test README.
- Update instructions for running test in docker.

Add test config and param files.

Add subscriber to Time messages.

Clean up virtual port test.
- Remove unused code.

Test time message is published.
- Copied from ardupilot_ros2/pr-ci-test-package branch.

Update time msg test
- Update workspace relative path.
- Remove sleep in main test.

Add original time message test.
- Add original version of time message test to help resolve failure.

Use separate processes for sitl and mavproxy.

Update original time message test.

Add Python testing to the ardupilot_sitl package.
- Add support for Python testing in the ardupilot_sitl package.

Add install section to CMakeLists.txt.
- Install executables and libs.
- Install default params and launch files.

Add launch for SITL.
- Add example launch file for SITL.
- Add local param file in config (test install).

Update ROS time message test.

Update CMakeLists.txt
- Set executable bit when installing programs.

Add example launch file for mavproxy.

Fix param path in sitl.launch.

Fix sitl address and port in example dds test.

Rename ardupilot dds yaml config file.

Rework sitl.launch to support launch arguments.
- Add launch arguments.
- Prep work for composing launch files.

Rework mavproxy.launch to support launch arguments.
- Add launch arguments.
- Fix default instance in sitl.launch.
- Run as MAVProxy in non-interactive mode.

Add launch file for socat virtual port process.
- Add separate launch file for process creating virtual ports.

Rename launch file for creating virtual ports.
- Remove unused import.

Add sample config yaml for sitl.launch.

Update ros2.repos.
- Remove ardupilot_ros2 and micro_ros_setup.
- Rename branch.

Move ROS 2 packages up a level.

Update path to ArduPilot root directory in CMakeLists.txt.

Update paths in ros2 dds time message tests

Update ros2 README and provide separate ros2.repo for macOS.
- Add build instructions for each platform.
- Provide separate ros2.repos for macOS which has additional dependencies to build from source.

Add composite launch for sitl and mavproxy.
-Provide example of composite launch that reuses existing launch files.

Add uart and serial port arguments to sitl.launch
- Add extra (optional) arguments for ports.
- Handle default arguments (e.g. wipe and synthetic clock).
- Remove use of TextSubstitution which seems redundant.

Simplify and update formatting in mavproxy and virtual port launches.
- Update print formatting.
- Remove use of TextSubstitution.

Add launch file for micro_ros_agent.
- The launch file in the micro_ros_agent does not have launch arguments.
- Replace hardcoded transport.

Correct install path for launch files in setup.py.
- Correct install path for launch files.
- Format line length.

Update micro_ros_agent launch.
- Do not use None for launch argument default value.

Add composite launch file for the time message test.
- Compose launch from four simpler launch files.

Comment unused variables for linting.

Install dds profile.
- Update CMakeLists.txt to install the dds_xrceprofile.
- Move install location of dds.parm to config/default_params.
- Update README with notes on equivalent command line calls.

Correct launch for micro_ros_agent.
- Remove extra space prefixing device field.
- Update README with example launch commands.

Update launch examples in README
- Update README with example launch commands.

Update combined launch for DDS time message test.
- Add events to combined launch to control launch sequence.
- Update README with example command for combined launch.

Remove dds.parm from ardupilot_dds_tests.
- File moved to ardupilot_sitl.

Update combined launch for DDS time message test.
- Disable events as these will not work with a launch description as the target_action.

Rename launch file for bringing up sitl with dds.

Rename virtual ports launch test.

Use PathJoinSubstitution and FindPackageShare for package resolution.
- Use substitutions for package and launch path resolution.

Update launch example in readme.
- Fix typo in combined launch.

Update virtual ports test case.

Rename virtual ports test case.

Rename time message test case.

Rework the time msg test case to use previously defined launch files.

Add time message check node.

Clean up test cases.

Move bringup fixture into conftest.py.
- Factor out bringup fixture.

Remove unused code and imports.

Add test for navsatfix.
- Update qos profile for navsatfix test.

Update test case names.

Use pathlib instead of os.path.

Set speedup to 10, reduce test timeout.

Update CMakeLists.txt
- Remove --debug.
- Remove commented code.

Update sitl_launch.py.
- Use max_serial_ports instead of hardcoded number.

Remove sample python test.

Update maintainer for ros2 packages.

Update ros2.repos.
- Point to ardupilot master instead of fork and PR branch.

Update CMakeLists.txt.
- Fix format (indent) in build test section.

Enable ament linters and use black formatter.
- Enable ament_lint_auto in CMakeLists.txt.
- Override default flake8 config to prevent conflicts with black formatter.
- Update README.
- Update files to satisfy linters.

More PEP 257 compliance.
- Adopt recommended style for comments.

Apply linters and formatter.
- Apply linter and black formatter to ardupilot_dds_tests.
- Move package tests under folder.
- Reinstate copyright, flake8 and pep257 tests.

Reorganise ros2 launch files
- Move launch files for SITL from ardupilot_dds_tests to ardupilit_sitl.
- Update docs.

Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2023-04-22 11:02:24 +10:00
Andrew Tridgell
0573a86fcf Tools: use python3 in build_binaries.py 2023-04-21 15:46:24 +10:00
Andrew Tridgell
0d029ee055 Tools: change autotest to python3 2023-04-21 15:46:24 +10:00
Peter Barker
ddcfe5e734 Tools: move and rename CAN Driver_Type enumeration 2023-04-20 08:53:46 +10:00
Peter Barker
da00993354 AP_Bootloader: save a few byts contructing MCU string 2023-04-19 19:05:14 +10:00
Andy Piper
38a33a9b96 bootloaders: remove FlywooF745v2 bootloaders 2023-04-19 17:42:26 +10:00
Peter Barker
2271827c9d autotest: add tests for compass prearms 2023-04-19 14:25:06 +10:00
Peter Barker
95d8719465 Tools: remove CANTester 2023-04-18 11:43:58 +10:00
Peter Barker
eb2a4a68c5 AP_Periph: use CopyFieldsFrom in CAN parameters 2023-04-18 11:43:58 +10:00
Iampete1
6659b02e14 Tools: autotest: Plane: expand guided attitude target test 2023-04-18 09:36:06 +10:00
Peter Barker
2529c7fc40 autotest: add test for RESET_MODE_SWITCH 2023-04-18 09:19:20 +10:00
Peter Barker
38390d2840 autotest: allow more time for deepstall text
intermittent failures in CI - perhaps due to Plane dynamics changes
2023-04-17 21:26:07 +10:00
Peter Barker
f518c4f4d4 autotest: verify new safety switch state in set_safetyswitch 2023-04-17 13:25:55 +10:00
Tom Pittenger
34a990d2ff AP_Periph: add AP_KDECAN support 2023-04-17 11:52:52 +10:00
Tom Pittenger
c70d6d14eb Tools/scripts: AP_KDECAN_ENABLED docs 2023-04-17 11:52:52 +10:00
Tom Pittenger
8a530ee0a6 Tools: move AP_KDECAN build to AP_Vehicle 2023-04-17 11:52:52 +10:00
Peter Barker
558cec573b autotest: wait ready to arm in autotest
AKA avoid dreaded gyros-inconsistent failure
2023-04-16 21:18:36 +10:00
Peter Barker
8c92787e32 Tools: size_compare_branches: allow use in detached-head state 2023-04-15 23:16:16 +10:00
Peter Barker
d0e3bbe9e9 autotest: test_build_options.py: correct deps when enabling-in-turn 2023-04-15 22:15:16 +10:00
Peter Barker
f604eedf65 Tools: sim_vehicle.py: remove old --build-system
We haven't supported make for a very long time
2023-04-14 10:28:09 +10:00
Pierre Kancir
f49211b021 Tools: remove old jsbsim python scripts (unused anymore) 2023-04-14 08:23:15 +10:00
Pierre Kancir
31595f2e4d Tools: remove util.py pymavlink dependency by removing old code 2023-04-14 08:23:15 +10:00
Peter Barker
5cc046b9cc Tools: AP_Arming ensures mission items present when in auto mode
Co-authored-by: Henry Wurzburg <hwurzburg@yahoo.com>
2023-04-14 07:49:54 +10:00
tsubashmail@gmail.com
df5b2f7911 Tools: port for STM32L4+ processor
Added support for stm32l4+ processor

- Added scripts for hwdef generation
- Tested in custom hardware prototype (stm32l4r5vit6)
- Tested all peripherals and auto pilot modes.
2023-04-14 07:48:56 +10:00
openstack
3a811b8f1e Tools: added name to GIT_Success.txt 2023-04-13 21:03:43 +10:00
Peter Barker
8c326bc6fb Tools: correct extraction of handle_play_tune feature 2023-04-13 15:24:45 +10:00
Peter Barker
e5a0d1bf9c Tools: add proximity backends to custom build server 2023-04-13 07:07:18 +10:00
Peter Barker
54aca7dc0d autotest: exempt sailboats from initial location check
we have a sanity check that when you reboot a vehicle that soon afterwards the vehicle is in the place we expect it to start.

That's fine for most vehicles, which stay put.  But we start the ship simulation with wind, so it can actually drift before we get around to checking its location.  Simply skip this check for now (we could, perhaps, allow for a very large radius instead?)
2023-04-13 07:05:38 +10:00
Randy Mackay
322ef64aad Tools: ScriptMountPOI test uses applet directory 2023-04-13 07:04:22 +10:00
Andy Piper
db7fad0aca bootloaders: bootloaders for MatekF405-TE/VTOL-bdshot 2023-04-12 17:24:15 +10:00
Peter Barker
f2cc1c501b Tools: use AP_BEACON_ENABLED instead of BEACON_ENABLED 2023-04-12 09:24:39 +10:00
Andrew Tridgell
5c3d464754 waf: support extra C and C++ flags on a per library basis 2023-04-11 12:18:29 +10:00
Andrew Tridgell
402de293d6 Tools: text messages and more defines 2023-04-11 10:31:31 +10:00
Andrew Tridgell
c53e5eaafc Tools: cleanup more defines and classes 2023-04-11 10:31:31 +10:00
Andrew Tridgell
c7231240c8 Tools: rename more variables, types and defines 2023-04-11 10:31:31 +10:00
Andrew Tridgell
b322a7a1fe Tools: change UAVCAN_ENABLED to DRONECAN_ENABLED 2023-04-11 10:31:31 +10:00
Henry Wurzburg
9371e60431 AP_HAL_ChibiOS: Add SpeedyBeeF405Wing 2023-04-11 10:22:29 +10:00
Peter Barker
395c1e1815 Tools: correct OSD feature extraction
... setting OSD_ENABLED false doesn't actually get rid of AP_OSD::AP_OSD ATM!
2023-04-11 08:57:20 +10:00
Peter Barker
b620ba23a9 autotest: correct implicit reboot after a failed test
correct problem where we only rebooted if the vehicle was armed after a failed test.

Should correct cascading failures after some tests
2023-04-11 00:29:45 +10:00
Peter Barker
3863183996 autotest: give Rover longer to arrive home
vagaries of interaction with Python script means we need to give this more time when running balancebot
2023-04-11 00:25:53 +10:00
Andrew Tridgell
6944e73c57 Tools: fixed build of CPUInfo and other tools 2023-04-10 16:48:50 +10:00
Andrew Tridgell
7b4e4889c7 AP_Periph: use generated decoder for FW update and actuators 2023-04-10 14:46:54 +10:00
Andrew Tridgell
119b0b15f1 AP_Periph: cope with mixed bxCAN and CANFD packets
this allows for runtime switching of CANFD enable, while supporting
incoming bxCAN packets in CANFD mode
2023-04-10 14:46:54 +10:00
Andrew Tridgell
47a73d2c8f waf: fixed build with CANFD and TAO for sitl_periph_gps 2023-04-10 14:46:54 +10:00
Andrew Tridgell
b24adf04f2 autotest: allow sitl periph GPS to run under valgrind and gdb 2023-04-10 14:46:54 +10:00
Andrew Tridgell
cb4b27042c waf: build sitl periph GPS as 64 bit 2023-04-10 14:46:54 +10:00
Andrew Tridgell
85d4024e64 waf: allow for 64 bit CAN builds 2023-04-10 14:46:54 +10:00
Peter Barker
9c32c96334 Tools: build_options.py correct winch enablement
this was renamed throughout - except in here
2023-04-10 09:20:47 +10:00
Peter Barker
465e8839c8 Tools: validate features are removed when we compile them out 2023-04-09 22:04:05 +10:00
Peter Barker
9f2aef4c97 autotest: allow other prearm failures while waiting for estop prearm
accels inconsistent was popping up in here.

We can ignore that - we only care we won't arm because of the estop being active.  This will also save a bit of time with the removal of the raw delay-for-10-seconds
2023-04-09 20:48:34 +10:00
Peter Barker
ae37d76f2d autotest: allow other prearm failures while waiting for estop prearm
accels inconsistent was popping up in here.

We can ignore that - we only care we won't arm because of the estop being active.  This will also save a bit of time with the removal of the raw delay-for-10-seconds
2023-04-09 20:48:34 +10:00
Andrew Tridgell
70fb79c349 Tools: rename AP_UAVCAN to AP_DroneCAN 2023-04-08 07:11:23 +10:00
Andrew Tridgell
75ed340efa waf: rename UAVCAN to DroneCAN 2023-04-08 07:11:23 +10:00
Andrew Tridgell
0c3c379f69 Tools: remove references to modules/uavcan 2023-04-08 07:11:23 +10:00
Peter Barker
cdb4012886 Tools: enforce astyle formatting in AP_DDS 2023-04-07 18:21:14 +10:00
Randy Mackay
945b013e58 Tools: build option for Camera_MAVLinkCamV2 2023-04-06 20:58:22 +10:00
Peter Barker
59c2197029 Tools: extract_features: extract precland backend features 2023-04-05 18:33:19 +10:00
Peter Barker
149b0e68f2 build_options.py: add options for companion and IRLock 2023-04-05 18:33:19 +10:00
Peter Barker
d8bc223fe4 autotest: param_parse.py: recurse, don't glob in lua script dirs
many scripts are now categoriesed e.g. Aerobatics
2023-04-05 10:07:19 +10:00
Peter Barker
aa863523a6 Tools: remove dsdl_generated before building bootloader
waf doesn't take care of this for us
2023-04-05 07:52:30 +10:00
Peter Barker
10c74f3a44 sim_vehicle.py: consolidate vehicle aliases into once place 2023-03-30 20:16:39 +11:00
Peter Barker
18dc37eef8 Tools: blacklist build of CubeOrangePlus-SimOnHardware bootloader
Just as we do the CubeOrange equivalent; this uses the CubeOrangePlus bootloader
2023-03-30 09:33:01 +11:00
Andy Piper
ca5dc2ba90 IO_Firmware: rebuild iofirmware 2023-03-29 20:49:40 +11:00
Andy Piper
99eb8cf141 bootloaders: update bootloaders for MatekF405-CAN 2023-03-29 20:49:40 +11:00
Andy Piper
0221b565a5 scripts: make sure configure_all.py detects periph builds correctly 2023-03-29 20:49:40 +11:00
Andy Piper
c7bd87ce33 waf: disable watchdogs on debug builds 2023-03-29 20:49:40 +11:00
Andy Piper
5af45db4f2 bootloaders: update SPRacingH7 bootloader 2023-03-29 20:49:40 +11:00
Andy Piper
7884694771 AP_Bootloader: fix virtual timer interface 2023-03-29 20:49:40 +11:00
bugobliterator
56068e65c6 waf: add support for multithreaded register/unregister of DroneCAN handlers 2023-03-29 17:16:39 +11:00
bugobliterator
50a760d8a5 Tools: add --enable-dronecan-tests option to autotest 2023-03-29 17:16:39 +11:00
bugobliterator
ef117dc3cf AP_Bootloader: fix bootloader build 2023-03-29 17:16:39 +11:00
bugobliterator
d0b79959e7 Tools: scripts: replace sitl-32bit with force-32bit 2023-03-29 17:16:39 +11:00
bugobliterator
c90cf03619 autotest: replace sitl_32bit with force_32bit 2023-03-29 17:16:39 +11:00
bugobliterator
50bfa516bc waf: add support for dronecan on linux 2023-03-29 17:16:39 +11:00
bugobliterator
c386f9bdcd Tools: add force-32bit option while building sitl for CAN test 2023-03-29 17:16:39 +11:00
bugobliterator
0e80802f69 waf: replace libuavcan with libcanard for vehicle builds 2023-03-29 17:16:39 +11:00
jfbblue0922
378bfe238c Tools: allocate a board ID for AP_HW_JFB110
add JFB-110 board definition
2023-03-29 07:08:38 +11:00
Peter Barker
81a73e9477 Tools: remove dead Tools/scripts/magfit_flashlog.py script
place has been taken by things like magfit.py
2023-03-27 10:43:57 +11:00
tzarjakob
6fa14ffe87 Tools: configuration of Precision Landing for custom build server 2023-03-27 09:04:07 +11:00
Peter Barker
1bc9c490a1 Tools: remove remove redundant install-apt-ci.sh
this isn't referenced anywhere and is causing unnecessary maintenance overhead.

Presumably overtaken by github docker install images and the devenv install scripts
2023-03-27 08:50:08 +11:00
Andrew Tridgell
e6d6848fb1 AP_Periph: prepare for 1.5.0 release 2023-03-27 07:36:19 +11:00
Andrew Tridgell
7f66e35459 AP_Periph: release notes for 1.5.0 2023-03-27 07:35:41 +11:00
Andrew Tridgell
7e3b538b16 waf: added --board-start-time configure option 2023-03-24 08:31:25 +11:00
xiao
fb75c2f50b Tools: reserve ID for PixSurveyA1-IND 2023-03-22 18:41:15 +11:00
Cedric0489
288c9696ae bootloaders: add bootloader for PixSurveyA1-IND 2023-03-22 18:41:15 +11:00
Andy Piper
75c31cc8de bootloaders: bootloaders for Flywoo F745v2 2023-03-22 18:35:08 +11:00
bugobliterator
a065e5f158 bootloaders: add CubeOrangePlus-bdshot bootloaders 2023-03-22 18:14:32 +11:00
Peter Barker
97f8781a3d build_options.py: add generator backend options to build_options.py 2023-03-22 18:06:31 +11:00
Peter Barker
ba3aa0c158 AP_Periph: add and use a "bool read(c)" method to AP_HAL
this is much less likely to not work vs the int16_t equivalent
2023-03-22 17:59:11 +11:00
Pierre Kancir
546e70ff92 Tools: split dds test into SITL and STM 2023-03-22 09:22:36 +11:00
Ryan Friedman
f604dd5cdf Tools: CI: Add building DDS to a STM32H7 board
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-03-22 09:22:36 +11:00
Ryan Friedman
74e7703288 waf: Remove unused XRCE_DEPENDENCIES
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-03-22 09:22:36 +11:00
Ryan Friedman
d1639f5d58 autotest: Add option to enable dds
* Disabled by default

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
Co-authored-by: Arsh Pratap <arshpratapofficial@gmail.com>
Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
2023-03-22 09:22:36 +11:00
Ryan Friedman
c7cac9abae waf: Add building DDS client to waf
* Had to ignore pre-commit hooks for isort and mypy since there are unrelated broken issues in the file

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
Co-authored-by: Arsh Pratap <arshpratapofficial@gmail.com>
Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
2023-03-22 09:22:36 +11:00
Nicholas Kruzan
522f480b2d Tools: add jolnir on install script
Allow to install dev environment on distros that have 'jolnir' as release name
2023-03-20 19:25:01 -07:00
Iampete1
65374a01a3 Tools: autotest: param metadata: allow parsing multi line values 2023-03-21 11:41:18 +11:00
Iampete1
8b36fde0c1 AP_Periph: fix proximity parameter path 2023-03-21 11:41:18 +11:00
Peter Barker
f12777f369 autotest: add test for GuidedYawRate being indpendent of set-rate rate
A bug is being fixed where we couldn't achieve the maximum rate due to the input speed of the guided command.

This makes sure the rate achieved is independent of the rate at which the attitude rate is being set
2023-03-21 08:23:12 +09:00
bugobliterator
4808b5bfa1 Replay: change INS_ to INS 2023-03-21 10:04:16 +11:00