forked from IMRCLab/crazyswarm2
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
98 changed files
with
6,259 additions
and
1,248 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -16,6 +16,7 @@ jobs: | |
ros_distribution: | ||
- humble | ||
- iron | ||
- jazzy | ||
|
||
# Define the Docker image(s) associated with each ROS distribution. | ||
include: | ||
|
@@ -29,6 +30,11 @@ jobs: | |
ros_distribution: iron | ||
ros_version: 2 | ||
|
||
# Jazzy Jalisco (May 2024 - May 2029) | ||
- docker_image: ubuntu:noble | ||
ros_distribution: jazzy | ||
ros_version: 2 | ||
|
||
container: | ||
image: ${{ matrix.docker_image }} | ||
steps: | ||
|
@@ -40,16 +46,27 @@ jobs: | |
- name: install dependencies | ||
run: | | ||
sudo apt update | ||
sudo apt install -y libusb-1.0-0-dev | ||
sudo apt install -y libboost-program-options-dev libusb-1.0-0-dev | ||
- name: install pip dependencies | ||
# TODO: would be better to follow https://answers.ros.org/question/370666/how-to-declare-an-external-python-dependency-in-ros2/ | ||
# but this requires some upstream changes | ||
|
||
# colcon still does not seem to properly support venv, so we use a workaround to install | ||
# a python package globally by disabling the externally managed flag that is default on Ubuntu 24.04 | ||
run: | | ||
sudo rm -f /usr/lib/python3.12/EXTERNALLY-MANAGED | ||
pip install rowan | ||
- uses: actions/checkout@v2 | ||
- name: build and test ROS 2 | ||
uses: ros-tooling/[email protected] | ||
with: | ||
# TODO: removed crazyflie_interfaces since it causes some test failures | ||
package-name: | | ||
crazyflie | ||
crazyflie_examples | ||
crazyflie_interfaces | ||
crazyflie_py | ||
crazyflie_sim | ||
target-ros2-distro: ${{ matrix.ros_distribution }} | ||
vcs-repo-file-url: rosinstall |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,69 @@ | ||
name: System Tests | ||
|
||
on: | ||
push: | ||
branches: [ "feature-systemtests-better" ] | ||
# manual trigger | ||
workflow_dispatch: | ||
|
||
jobs: | ||
build: | ||
runs-on: self-hosted | ||
steps: | ||
- name: Create workspace | ||
id: step1 | ||
run: | | ||
cd ros2_ws/src || mkdir -p ros2_ws/src | ||
- name: Checkout motion capture package | ||
id: step2 | ||
run: | | ||
cd ros2_ws/src | ||
ls motion_capture_tracking || git clone --branch ros2 --recursive https://github.com/IMRCLab/motion_capture_tracking.git | ||
- name: Checkout Crazyswarm2 | ||
id: step3 | ||
uses: actions/checkout@v4 | ||
with: | ||
path: ros2_ws/src/crazyswarm2 | ||
submodules: 'recursive' | ||
- name: Build workspace | ||
id: step4 | ||
run: | | ||
source /opt/ros/humble/setup.bash | ||
cd ros2_ws | ||
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release | ||
- name: Flight test | ||
id: step5 | ||
run: | | ||
cd ros2_ws | ||
source /opt/ros/humble/setup.bash | ||
. install/local_setup.bash | ||
export ROS_LOCALHOST_ONLY=1 | ||
export ROS_DOMAIN_ID=99 | ||
python3 src/crazyswarm2/systemtests/test_flights.py | ||
- name: Upload files | ||
id: step6 | ||
if: '!cancelled()' | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: pdf_rosbags_and_logs | ||
path: | | ||
ros2_ws/results | ||
|
||
# - name: build and test ROS 2 | ||
# uses: ros-tooling/[email protected] | ||
# with: | ||
# package-name: | | ||
# crazyflie | ||
# crazyflie_examples | ||
# crazyflie_interfaces | ||
# crazyflie_py | ||
# crazyflie_sim | ||
# target-ros2-distro: humble | ||
# vcs-repo-file-url: rosinstall |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,77 @@ | ||
name: System Tests Simulation | ||
|
||
on: | ||
push: | ||
branches: [ main ] | ||
pull_request: | ||
branches: [ main ] | ||
# manual trigger | ||
workflow_dispatch: | ||
|
||
jobs: | ||
build: | ||
runs-on: self-hosted | ||
steps: | ||
- name: Build firmware | ||
id: step1 | ||
run: | | ||
ls crazyflie-firmware || git clone --recursive https://github.com/bitcraze/crazyflie-firmware.git | ||
cd crazyflie-firmware | ||
git pull | ||
git submodule sync | ||
git submodule update --init --recursive | ||
make cf2_defconfig | ||
make bindings_python | ||
cd build | ||
python3 setup.py install --user | ||
- name: Create workspace | ||
id: step2 | ||
run: | | ||
cd ros2_ws/src || mkdir -p ros2_ws/src | ||
- name: Checkout motion capture package | ||
id: step3 | ||
run: | | ||
cd ros2_ws/src | ||
ls motion_capture_tracking || git clone --branch ros2 --recursive https://github.com/IMRCLab/motion_capture_tracking.git | ||
cd motion_capture_tracking | ||
git pull | ||
git submodule sync | ||
git submodule update --recursive --init | ||
- name: Checkout Crazyswarm2 | ||
id: step4 | ||
uses: actions/checkout@v4 | ||
with: | ||
path: ros2_ws/src/crazyswarm2 | ||
submodules: 'recursive' | ||
- name: Build workspace | ||
id: step5 | ||
run: | | ||
source /opt/ros/humble/setup.bash | ||
cd ros2_ws | ||
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release | ||
- name: Flight test | ||
id: step6 | ||
run: | | ||
cd ros2_ws | ||
source /opt/ros/humble/setup.bash | ||
. install/local_setup.bash | ||
export PYTHONPATH="${PYTHONPATH}:/home/github/actions-runner/_work/crazyswarm2/crazyswarm2/crazyflie-firmware/build/" | ||
export ROS_LOCALHOST_ONLY=1 | ||
export ROS_DOMAIN_ID=99 | ||
python3 src/crazyswarm2/systemtests/test_flights.py --sim -v #-v is verbose argument of unittest | ||
- name: Upload files | ||
id: step7 | ||
if: '!cancelled()' | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: pdf_rosbags_and_logs | ||
path: | | ||
ros2_ws/results | ||
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
image_topic: /camera/image | ||
camera_info_topic: /camera/camera_info | ||
deck_ip: "192.168.4.1" | ||
deck_port: 5000 | ||
image_width: 324 | ||
image_height: 324 | ||
camera_name: crazyflie | ||
camera_matrix: | ||
rows: 3 | ||
cols: 3 | ||
data: [181.87464, 0. , 162.52301, | ||
0. , 182.58129, 160.79418, | ||
0. , 0. , 1. ] | ||
distortion_model: plumb_bob | ||
distortion_coefficients: | ||
rows: 1 | ||
cols: 5 | ||
data: [-0.070366, -0.006434, -0.002691, -0.001983, 0.000000] | ||
rectification_matrix: | ||
rows: 3 | ||
cols: 3 | ||
data: [1., 0., 0., | ||
0., 1., 0., | ||
0., 0., 1.] | ||
projection_matrix: | ||
rows: 3 | ||
cols: 4 | ||
data: [169.24555, 0. , 161.54541, 0. , | ||
0. , 169.97813, 159.07974, 0. , | ||
0. , 0. , 1. , 0. ] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -52,4 +52,7 @@ | |
land: | ||
button: 6 # 6 back | ||
emergency: | ||
button: 1 # 1 red | ||
button: 1 # 1 red | ||
arm: | ||
button: 3 # yellow | ||
|
Submodule crazyflie_tools
updated
5 files
+1 −1 | .github/workflows/cmake_mac.yml | |
+16 −16 | CMakeLists.txt | |
+1 −1 | crazyflie_cpp | |
+42 −6 | src/comCheck.cpp | |
+4 −1 | src/downloadUSDLogfile.cpp |
Oops, something went wrong.