Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
118 commits
Select commit Hold shift + click to select a range
4b162e4
Migrate to jazzy.
Jelmerdw Jun 5, 2025
c2f6e7b
Update ty paths.
Jelmerdw Jun 5, 2025
aad181a
Remove unused ty path.
Jelmerdw Jun 5, 2025
b1dea01
Change Twist to TwistStamped
Jelmerdw Jun 6, 2025
8c2102a
Add version parameter.
Jelmerdw Jun 13, 2025
87f95bc
Use register.
Jelmerdw Jun 13, 2025
f1ecae2
Use rmw_cyclonedds_cpp like panther.
Jelmerdw Jun 13, 2025
b19568b
Fix typo.
Jelmerdw Jun 13, 2025
ffb7c81
empty commit to trigger workflow
Jelmerdw Jun 16, 2025
d145388
Fix realsense in simulation. (#202)
Jelmerdw Jun 10, 2025
bee603c
Merge branch 'main' into 199-migrate-to-jazzy
Jelmerdw Jun 16, 2025
d5b9f1e
Fix ty.
Jelmerdw Jun 16, 2025
bd0b757
Fix install of git-lfs.
Jelmerdw Jun 16, 2025
f788597
Update on_log message.
Jelmerdw Jun 16, 2025
b1e3130
Fix older version of Pytest.
Jelmerdw Jun 16, 2025
3bd292b
Disable RMW_IMPLEMENTATION=rmw_cyclonedds_cpp
Jelmerdw Jun 16, 2025
2373edf
Move/Remove pyrealsense2 dependencies, since no binary pyrealsense2 i…
Jelmerdw Jun 16, 2025
971c539
Stop pytest on fist fail/error in pipeline.
Jelmerdw Jun 16, 2025
2e24848
Add ZED2i support and related materials to Panther and Gazebo launch …
MaxWaterhout Aug 1, 2025
797dadc
Add ZED2i mesh and update URDF references to use the new mesh path
MaxWaterhout Aug 1, 2025
8c326d8
Add ZED2i mesh and update installation paths in CMakeLists.txt
MaxWaterhout Aug 1, 2025
b81bb17
Update ZED2i camera model and bridge topics in launch files
MaxWaterhout Aug 4, 2025
8e717b0
Update ZED2i camera topics to match new naming conventions
MaxWaterhout Aug 5, 2025
365247d
WIP
MaxWaterhout Aug 5, 2025
d688f56
Merge branch 'main' into 199-migrate-to-jazzy
Jelmerdw Aug 5, 2025
8537c98
WIP
MaxWaterhout Aug 5, 2025
4319110
WIP
MaxWaterhout Aug 5, 2025
3ea54ce
Merge branch 'main' into 199-migrate-to-jazzy
Jelmerdw Aug 5, 2025
2e70510
WIP
MaxWaterhout Aug 5, 2025
0944ace
WIP
MaxWaterhout Aug 5, 2025
cd077dd
Update husarion_ugv_ros to 2.3.1
Jelmerdw Aug 5, 2025
2c308b4
Try new Franka Jazzy fork.
Jelmerdw Aug 5, 2025
1d50e5b
Fix install script.
Jelmerdw Aug 5, 2025
8561439
Update husarion URDFs.
Jelmerdw Aug 5, 2025
e705b91
Add base Docker image for ROS2 with CUDA support
MaxWaterhout Aug 5, 2025
354f823
Add Gazebo binary install.
Jelmerdw Aug 5, 2025
17c8965
Add ros-dev-tools.
Jelmerdw Aug 5, 2025
f72d0bb
Add zedsdk
MaxWaterhout Aug 5, 2025
b50f973
Merge branch 'main' into 233-add-cuda-to-devcontainer
MaxWaterhout Aug 5, 2025
e118aaf
WIP
MaxWaterhout Aug 5, 2025
f51830e
WIP
MaxWaterhout Aug 5, 2025
fe59206
WIP
MaxWaterhout Aug 5, 2025
b4fbc56
building image with develop cuda
MaxWaterhout Aug 5, 2025
af96cd1
first run without zed
MaxWaterhout Aug 5, 2025
43c242a
Docker image wasnt pushed yet oops
MaxWaterhout Aug 5, 2025
c064a95
Fix strings.
Jelmerdw Aug 5, 2025
d6a9396
WIP
MaxWaterhout Aug 5, 2025
341573a
WIP
MaxWaterhout Aug 5, 2025
52b131a
WIP
MaxWaterhout Aug 5, 2025
bd8a4a5
Change old ignition tags to gazebo.
Jelmerdw Aug 5, 2025
e261ce1
WIP
MaxWaterhout Aug 5, 2025
47aae22
Uncomment zed installation scripts in Dockerfile
MaxWaterhout Aug 5, 2025
aae4f6c
WIP
MaxWaterhout Aug 6, 2025
9032acb
WIP
MaxWaterhout Aug 6, 2025
480a8bc
WIP
MaxWaterhout Aug 6, 2025
af11705
Disable default Franka unlock.
Jelmerdw Aug 6, 2025
7914510
Allow nonzero velocity at trajectory end to enable moveit servo.
Jelmerdw Aug 6, 2025
a5ace72
Undo changes to rviz files.
Jelmerdw Aug 6, 2025
4035582
Undo unrelated changes.
Jelmerdw Aug 6, 2025
bb2f33b
Undo changes to pytest in workflow.
Jelmerdw Aug 6, 2025
7a9df9e
Fix pyrealsense2 dependency.
Jelmerdw Aug 7, 2025
052ce7c
Update Franka URDFs.
Jelmerdw Aug 7, 2025
ae54bca
Update ignition tags to gazebo.
Jelmerdw Aug 7, 2025
10cfea5
Fix env variables.
Jelmerdw Aug 7, 2025
f37dc4d
Run pytest with output to debug.
Jelmerdw Aug 7, 2025
8c10f63
WIP
MaxWaterhout Aug 7, 2025
d1bdde1
Remove unneeded xacros
MaxWaterhout Aug 7, 2025
9755827
Merge branch 'main' into 223-add-zed2i-to-simulation
MaxWaterhout Aug 7, 2025
c361f93
Add zed2i launch argument to core.launch.py and update its default in…
MaxWaterhout Aug 7, 2025
e845c72
WIP
MaxWaterhout Aug 7, 2025
fe96960
Fix deprecated remapping.
Jelmerdw Aug 8, 2025
b4576cb
Use ogre as render engine, since ogre2 seems to have problems in pipe…
Jelmerdw Aug 8, 2025
4d45c2a
Fix jerk definition deprecation.
Jelmerdw Aug 8, 2025
e2b62b0
Add install of default ros controllers to docker image.
Jelmerdw Aug 8, 2025
4740351
Refactor zed_sdk.sh to use assignment instead of declaration for vari…
MaxWaterhout Aug 8, 2025
d8ff883
Use new parallel_gripper_action_controller.
Jelmerdw Aug 8, 2025
f6fbcae
Disable realsense test.
Jelmerdw Aug 8, 2025
38961c1
to jazzy
MaxWaterhout Aug 8, 2025
db5567c
merge 199-to-jazzy in this branch
MaxWaterhout Aug 8, 2025
9dcea37
merge main into this branch
MaxWaterhout Aug 12, 2025
621e1d5
merge 233 into this branch
MaxWaterhout Aug 12, 2025
24da949
Update Ubuntu release year and CUDA version in zed_sdk.sh
MaxWaterhout Aug 12, 2025
ea79f26
Refactor Dockerfile to include zed_sdk and zed_wrapper installation s…
MaxWaterhout Aug 12, 2025
ca8dc7f
Merge remote-tracking branch 'origin/main' into 223-add-zed2i-to-simu…
MaxWaterhout Sep 11, 2025
7667f35
Enhance disk space management by adding cleanup step in reusable work…
MaxWaterhout Sep 11, 2025
2a21df0
WIP
MaxWaterhout Sep 11, 2025
dd2af74
Refactor reusable workspace workflow to improve disk space management…
MaxWaterhout Sep 12, 2025
37026f3
Merge branch 'main' into create-space-in-gh-runner
MaxWaterhout Sep 12, 2025
8200564
missed runs on
MaxWaterhout Sep 12, 2025
0190447
WIP
MaxWaterhout Sep 12, 2025
7a7bc93
test
MaxWaterhout Sep 12, 2025
553433c
WIP
MaxWaterhout Sep 12, 2025
72cd8a0
Refactor docker run commands for better readability in reusable works…
MaxWaterhout Sep 12, 2025
af07b44
WIP
MaxWaterhout Sep 12, 2025
dba9c45
WIP
MaxWaterhout Sep 12, 2025
df5408c
WIP
MaxWaterhout Sep 12, 2025
e31c7a3
Add interactive flag to docker run commands for improved terminal int…
MaxWaterhout Sep 12, 2025
77faa32
WIP
MaxWaterhout Sep 12, 2025
6505402
test
MaxWaterhout Sep 12, 2025
dfdb9ff
WIP
MaxWaterhout Sep 12, 2025
ff29b6b
WIP
MaxWaterhout Sep 12, 2025
056a47d
Merge remote-tracking branch 'origin/main' into 223-add-zed2i-to-simu…
MaxWaterhout Sep 12, 2025
7b61c56
Merge remote-tracking branch 'origin/create-space-in-gh-runner' into …
MaxWaterhout Sep 12, 2025
678c0b7
Refactor docker run commands to set working directory to ros2_ws for …
MaxWaterhout Sep 12, 2025
6c9cdf8
Merge remote-tracking branch 'origin/create-space-in-gh-runner' into …
MaxWaterhout Sep 15, 2025
1173b4f
Add conditional execution for disk usage display step
MaxWaterhout Sep 15, 2025
a086f8f
Merge remote-tracking branch 'origin/create-space-in-gh-runner' into …
MaxWaterhout Sep 15, 2025
d58a8bc
Add CUDA installation scripts and update Dockerfile for ROS 2 Jazzy
MaxWaterhout Sep 15, 2025
93f80bc
Add CUDA installation step to Dockerfile
MaxWaterhout Sep 15, 2025
d00f86e
WIP
MaxWaterhout Sep 15, 2025
b84cf2a
Add rosdep initialization step in Dockerfile
MaxWaterhout Sep 15, 2025
74fdc49
WIP
MaxWaterhout Sep 15, 2025
5df5b96
try without extra packages
MaxWaterhout Sep 16, 2025
701e57f
Merge remote-tracking branch 'origin/233-add-cuda-second-try' into 22…
MaxWaterhout Sep 16, 2025
a437d0a
WIP
MaxWaterhout Sep 16, 2025
367988e
Refactor zed_wrapper.sh to improve source command placement and speci…
MaxWaterhout Sep 16, 2025
edc0598
Merge remote-tracking branch 'origin/main' into 223-add-zed2i-to-simu…
MaxWaterhout Sep 29, 2025
20c400e
Merge remote-tracking branch 'origin/main' into 223-add-zed2i-to-simu…
MaxWaterhout Sep 29, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .devcontainer/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@ services:
- "../pyproject.toml:/home/rcdt/pyproject.toml"
- "../.config:/home/rcdt/.config"
- "/dev:/dev"
- "${HOME}/zed_resources:/usr/local/zed/resources"
- "${HOME}/zed_settings:/usr/local/zed/settings"
environment:
- "DISPLAY"
- "RCUTILS_COLORIZED_OUTPUT=1"
Expand Down
3 changes: 1 addition & 2 deletions dockerfiles/general/pre_install.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ FROM nvidia/cuda:12.9.1-devel-ubuntu24.04 AS base
ARG COLCON_BUILD_SEQUENTIAL
ENV UNAME=rcdt
ENV UID=1000

# Remove existing user with same UID if exists:
RUN if getent passwd $UID; then userdel $(id -nu $UID); else :; fi

Expand All @@ -20,4 +19,4 @@ RUN apt update

# Create bashrc file:
RUN echo "if test -f ~/.personal.bashrc; then\nsource ~/.personal.bashrc\nfi" >> /home/$UNAME/.bashrc
RUN echo "if test -f ~/.env; then\nset -a && source ~/.env && set +a\nfi" >> /home/$UNAME/.bashrc
RUN echo "if test -f ~/.env; then\nset -a && source ~/.env && set +a\nfi" >> /home/$UNAME/.bashrc
49 changes: 49 additions & 0 deletions dockerfiles/install_scripts/zed_sdk.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
#!/bin/bash -i

# SPDX-FileCopyrightText: Alliander N. V.
#
# SPDX-License-Identifier: Apache-2.0

# Based on dockerfile of ZED-ros2-wrapper at:
# https://github.com/stereolabs/zed-ros2-wrapper/blob/e9f54907fbf41ee9ce5d54f3bb694af93dad8bb3/docker/Dockerfile.desktop-humble

set -e

UBUNTU_RELEASE_YEAR=24
CUDA_MAJOR=12
CUDA_MINOR=9
ZED_SDK_MAJOR=5
ZED_SDK_MINOR=0

### CUDA “version.txt” marker
echo "CUDA Version ${CUDA_MAJOR}.${CUDA_MINOR}.0" > /usr/local/cuda/version.txt || true

### System prerequisites
apt-get update -y \
&& DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
lsb-release wget less udev sudo zstd build-essential cmake \
python3 python3-pip libpng-dev libgomp1

### Download + install ZED SDK
installer="ZED_SDK_Ubuntu${UBUNTU_RELEASE_YEAR}_cuda${CUDA_MAJOR}.${CUDA_MINOR}.run"
sdk_url="https://download.stereolabs.com/zedsdk/${ZED_SDK_MAJOR}.${ZED_SDK_MINOR}/cu${CUDA_MAJOR}/ubuntu${UBUNTU_RELEASE_YEAR}"

echo "Downloading ${sdk_url}${installer} ..."
wget -q -O "${installer}" "${sdk_url}"
chmod +x "${installer}"

echo "Running installer …"
./"${installer}" -- silent

### Post-install

ln -sf /lib/x86_64-linux-gnu/libusb-1.0.so.0 /usr/lib/x86_64-linux-gnu/libusb-1.0.so

chmod 755 /usr/local/zed/lib
find /usr/local/zed/lib -type f -name 'libsl_*.so*' -exec chmod 644 {} +
chmod -R u+rwX /usr/local/zed/resources /usr/local/zed/settings
chmod o+rx /usr/local/zed /usr/local/zed/lib
chmod a+r /usr/local/zed/lib/libsl_zed.so

rm -f "${installer}"
rm -rf /var/lib/apt/lists/*
21 changes: 21 additions & 0 deletions dockerfiles/install_scripts/zed_wrapper.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
#!/bin/bash -i

# SPDX-FileCopyrightText: Alliander N. V.
#
# SPDX-License-Identifier: Apache-2.0

set -e
source /home/$UNAME/.bashrc
apt update

cd /home/$UNAME
mkdir zed_ws
cd /home/$UNAME/zed_ws
git clone -b jazzy https://github.com/stereolabs/zed-ros2-wrapper.git src/zed_ros2_wrapper

sudo apt update
rosdep update
rosdep install --from-paths src --rosdistro $ROS_DISTRO -y -r
colcon build --symlink-install --cmake-args=-DCMAKE_BUILD_TYPE=Release

echo "source /home/$UNAME/zed_ws/install/setup.bash" >>/home/$UNAME/.bashrc
6 changes: 6 additions & 0 deletions dockerfiles/rcdt_robotics.Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,12 @@ RUN ./ros2_jazzy.sh
COPY ./install_scripts/core_packages.sh .
RUN ./core_packages.sh

COPY ./install_scripts/zed_sdk.sh .
RUN ./zed_sdk.sh

COPY ./install_scripts/zed_wrapper.sh .
RUN ./zed_wrapper.sh

COPY ./install_scripts/franka_ros2.sh .
RUN ./franka_ros2.sh

Expand Down
2 changes: 1 addition & 1 deletion docs/content/panther.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ To use the ZED 2i camera, ssh into the *ThinkStation*. Here you can find the clo
cd ~/zed-docker/demo;
xhost local:root;
export ZED_IMAGE=husarion/zed-desktop:humble;
export CAMERA_MODEL=zed2;
export CAMERA_MODEL=zed2i;
docker compose up zed;
```

Expand Down
61 changes: 61 additions & 0 deletions ros2_ws/src/rcdt_sensors/urdf/rcdt_zed2i.urdf.xacro
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
<?xml version="1.0"?>
<!--
SPDX-FileCopyrightText: Alliander N. V.
SPDX-License-Identifier: Apache-2.0
-->
<robot xmlns:xacro="http://www.ros.org/wiki/xacro" name="rcdt_zed2i">

<xacro:macro name="rcdt_zed2i"
params="robot_namespace
device_namespace
parent:=world
model:=zed2i
enable_gnss:=false
xyz:='0 0 0' rpy:='0 0 0' ">

<xacro:include filename="$(find zed_wrapper)/urdf/zed_macro.urdf.xacro"/>

<xacro:zed_camera name="${device_namespace}"
model="${model}"
enable_gnss="${enable_gnss}">
<origin xyz="${xyz}" rpy="${rpy}"/>

</xacro:zed_camera>

<gazebo reference="${device_namespace}_left_camera_frame">
<sensor type="camera" name="${device_namespace}_rgb">
<!-- Shift the lens 1 cm forward in +X (robot-forward) -->
<pose>0.01 0 0 0 0 0</pose>

<always_on>true</always_on>
<update_rate>30.0</update_rate>
<topic>/zed/zed_node/rgb/image_rect_color</topic>
<visualize>false</visualize>
<camera>
<horizontal_fov>1.204277</horizontal_fov>
<image><width>640</width><height>360</height></image>
<clip><near>0.02</near><far>300.0</far></clip>
</camera>
</sensor>
</gazebo>

<gazebo reference="${device_namespace}_left_camera_frame">
<sensor type="depth_camera" name="${device_namespace}_depth">
<pose>0.01 0 0 0 0 0</pose>
<always_on>true</always_on>
<update_rate>30.0</update_rate>
<topic>/zed/zed_node/depth/depth_registered</topic>
<visualize>false</visualize>
<camera>
<horizontal_fov>1.204277</horizontal_fov>
<image><width>640</width><height>360</height></image>
<clip>
<near>0.01</near>
<far>65.536</far>
</clip>
</camera>
</sensor>
</gazebo>

</xacro:macro>
</robot>