Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
11 changes: 8 additions & 3 deletions docker/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ RUN apt-get update && apt-get install -y \
libglfw3-dev \
ros-${ROS_DISTRO}-image-transport-plugins \
ros-${ROS_DISTRO}-usb-cam \
ros-${ROS_DISTRO}-rmw-zenoh-cpp \
vim \
nano \
&& rm -rf /var/lib/apt/lists/*
Expand All @@ -31,14 +32,14 @@ RUN mkdir -p ${COLCON_WS}/src && \
git clone -b jazzy https://github.com/ROBOTIS-GIT/dynamixel_interfaces.git && \
git clone -b jazzy https://github.com/ROBOTIS-GIT/DynamixelSDK.git && \
git clone -b jazzy https://github.com/ROBOTIS-GIT/open_manipulator.git && \
git clone -b jazzy https://github.com/ros2/rmw_zenoh.git && \
git clone -b jazzy https://github.com/ROBOTIS-GIT/robotis_interfaces.git && \
Comment thread
GyuH13 marked this conversation as resolved.
git clone -b r/4.56.4 https://github.com/IntelRealSense/realsense-ros.git && \
cd realsense-ros && git checkout cbd8b8487d4c0126bb590822db9469414496e62a

RUN cd ${COLCON_WS} && \
apt-get update && \
rosdep update && \
rosdep install -i --from-path src --rosdistro $ROS_DISTRO --skip-keys="librealsense2" -y && \
rosdep install -i --from-path src --rosdistro $ROS_DISTRO --skip-keys="librealsense2 robotis_interfaces" -y && \
rm -rf /var/lib/apt/lists/*

RUN bash -c "source /opt/ros/${ROS_DISTRO}/setup.bash && \
Expand All @@ -48,6 +49,10 @@ RUN bash -c "source /opt/ros/${ROS_DISTRO}/setup.bash && \
RUN echo "source /opt/ros/${ROS_DISTRO}/setup.bash" >> ~/.bashrc && \
echo "source ${COLCON_WS}/install/setup.bash" >> ~/.bashrc && \
echo "alias cb='colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release'" >> ~/.bashrc && \
echo "export ROS_DOMAIN_ID=30" >> ~/.bashrc
echo "alias omy_ai='ros2 launch open_manipulator_bringup omy_ai.launch.py'" >> ~/.bashrc && \
echo "alias omx_ai='ros2 launch open_manipulator_bringup omx_ai.launch.py'" >> ~/.bashrc && \
echo "alias zenohd='ros2 run rmw_zenoh_cpp rmw_zenohd'" >> ~/.bashrc && \
echo "export ROS_DOMAIN_ID=30" >> ~/.bashrc && \
echo "export RMW_IMPLEMENTATION=rmw_zenoh_cpp" >> ~/.bashrc
Comment thread
GyuH13 marked this conversation as resolved.

CMD ["bash"]
97 changes: 97 additions & 0 deletions docker/container.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@
# Get the directory where the script is located
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
CONTAINER_NAME="open_manipulator"
GITHUB_RELEASES_API="https://api.github.com/repos/ROBOTIS-GIT/open_manipulator/releases/latest"
META_PACKAGE_XML="${SCRIPT_DIR}/../open_manipulator/package.xml"

# Function to display help
show_help() {
Expand Down Expand Up @@ -31,6 +33,16 @@ start_container() {
fi

echo "Starting Open Manipulator container..."
# Notify if an update is available (meta package version vs GitHub latest release)
CURRENT_VER=$(get_current_version)
LATEST_VER=$(get_latest_version)
if update_available "${CURRENT_VER}" "${LATEST_VER}"; then
print_update_notice "${CURRENT_VER}" "${LATEST_VER}"
fi

### rmw_zenoh notice (remove later)
print_rmw_zenoh_notice
### rmw_zenoh notice (remove later)

# Copy udev rule for FTDI (U2D2)
echo 'KERNEL=="ttyUSB*", DRIVERS=="ftdi_sio", MODE="0666", ATTR{device/latency_timer}="1"' | sudo tee /etc/udev/rules.d/99-u2d2.rules > /dev/null
Expand Down Expand Up @@ -61,6 +73,18 @@ enter_container() {
echo "Error: Container is not running"
exit 1
fi

# Notify if an update is available (meta package version vs git tag)
CURRENT_VER=$(get_current_version)
GIT_VER=$(get_latest_version)
if update_available "${CURRENT_VER}" "${GIT_VER}"; then
print_update_notice "${CURRENT_VER}" "${GIT_VER}"
fi

### rmw_zenoh notice (remove later)
print_rmw_zenoh_notice
### rmw_zenoh notice (remove later)

docker exec -it "$CONTAINER_NAME" bash
}

Expand All @@ -82,6 +106,79 @@ stop_container() {
fi
}

# Get current version from meta package (open_manipulator) package.xml
print_update_notice() {
local current_ver="$1"
local latest_ver="$2"
W=52
BAR=$(printf '%*s' $W '' | tr ' ' '=')
LINE1="New version available: ${latest_ver} (current: ${current_ver})."
LINE2="1. Stop Container: ./container.sh stop"
LINE3="2. Pull Git Repo: git pull origin jazzy"
LINE4="3. Start Container: ./container.sh start"
echo ""
echo " +${BAR}+"
printf " | %-$((W-2))s|\n" "$LINE1"
printf " | %-$((W-2))s|\n" "$LINE2"
printf " | %-$((W-2))s|\n" "$LINE3"
printf " | %-$((W-2))s|\n" "$LINE4"
echo " +${BAR}+"
echo ""
}

### rmw_zenoh notice (remove later)
print_rmw_zenoh_notice() {
W=52
BAR=$(printf '%*s' $W '' | tr ' ' '=')
LINE1="Since v5.0.0, rmw_zenoh_cpp is the default RMW."
LINE2="RMW_IMPLEMENTATION is set in ~/.bashrc inside the"
LINE3="container."
echo ""
echo " +${BAR}+"
printf " | %-$((W-2))s|\n" "$LINE1"
printf " | %-$((W-2))s|\n" "$LINE2"
printf " | %-$((W-2))s|\n" "$LINE3"
echo " +${BAR}+"
echo ""
}
### rmw_zenoh notice (remove later)

get_current_version() {
local ver
if [ -f "${META_PACKAGE_XML}" ]; then
ver=$(sed -n 's/.*<version>\([^<]*\)<\/version>.*/\1/p' "${META_PACKAGE_XML}" | head -1)
fi
echo "${ver:-unknown}"
}

# Get latest version from GitHub releases (ROBOTIS-GIT/open_manipulator)
get_latest_version() {
local json tag
json=$(curl -sL --connect-timeout 5 "${GITHUB_RELEASES_API}" 2>/dev/null)
tag=$(echo "${json}" | sed -n 's/.*"tag_name":\s*"\([^"]*\)".*/\1/p' | head -1)
# Strip optional 'v' prefix for comparison with package.xml
if [ -n "${tag}" ]; then
echo "${tag#v}"
else
echo ""
fi
}

# Check if the latest version is newer than the current version
update_available() {
local current="$1"
local git_ver="$2"
if [ -z "${git_ver}" ]; then
return 1
fi
if [ "${git_ver}" = "${current}" ]; then
return 1
fi
local newer
newer=$(echo -e "${current}\n${git_ver}" | sort -V | tail -1)
[ "${newer}" = "${git_ver}" ]
}

# Main command handling
case "$1" in
"help")
Expand Down
3 changes: 1 addition & 2 deletions docker/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ services:
build:
context: .
dockerfile: Dockerfile
image: robotis/open-manipulator:latest
Comment thread
GyuH13 marked this conversation as resolved.
image: robotis/open-manipulator:5.0.0
tty: true
restart: always
cap_add:
Expand All @@ -19,7 +19,6 @@ services:
environment:
- DISPLAY=${DISPLAY}
- QT_X11_NO_MITSHM=1
# - RMW_IMPLEMENTATION=rmw_zenoh_cpp
volumes:
- /dev:/dev
- /dev/shm:/dev/shm
Expand Down
6 changes: 6 additions & 0 deletions open_manipulator/CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,12 @@
Changelog for package open_manipulator
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

5.0.0 (2026-06-24)
------------------
* Updated dockerfile to use zenoh-cpp
* Updated SRDF for OMY-F3M
* Contributors: Sungho Woo

4.1.4 (2026-04-27)
------------------
* Added nodes for drawing mission: shape_detector_node and omx_trajectory_controller_node
Expand Down
2 changes: 1 addition & 1 deletion open_manipulator/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
<package format="3">
<name>open_manipulator</name>
<version>4.1.4</version>
<version>5.0.0</version>
<description>
OpenMANIPULATOR meta ROS 2 package.
</description>
Expand Down
4 changes: 4 additions & 0 deletions open_manipulator_bringup/CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@
Changelog for package open_manipulator_bringup
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

5.0.0 (2026-06-24)
------------------
* None

4.1.4 (2026-04-27)
------------------
* None
Expand Down
2 changes: 1 addition & 1 deletion open_manipulator_bringup/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
<package format="3">
<name>open_manipulator_bringup</name>
<version>4.1.4</version>
<version>5.0.0</version>
<description>OpenMANIPULATOR bringup ROS 2 package.</description>
<maintainer email="pyo@robotis.com">Pyo</maintainer>
<license>Apache 2.0</license>
Expand Down
2 changes: 1 addition & 1 deletion open_manipulator_bringup/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

setup(
name=package_name,
version='4.1.4',
version='5.0.0',
packages=find_packages(exclude=['test']),
data_files=[
('share/ament_index/resource_index/packages', ['resource/' + package_name]),
Expand Down
4 changes: 4 additions & 0 deletions open_manipulator_collision/CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@
Changelog for package open_manipulator_collision
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

5.0.0 (2026-06-24)
------------------
* None

4.1.4 (2026-04-27)
------------------
* None
Expand Down
2 changes: 1 addition & 1 deletion open_manipulator_collision/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
<package format="3">
<name>open_manipulator_collision</name>
<version>4.1.4</version>
<version>5.0.0</version>
<description>
This package implements a self-collision detection system for the follower robot during
leader-follower teleoperation. Its primary purpose is to enhance safety by detecting
Expand Down
4 changes: 4 additions & 0 deletions open_manipulator_description/CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@
Changelog for package open_manipulator_description
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

5.0.0 (2026-06-24)
------------------
* None

4.1.4 (2026-04-27)
------------------
* None
Expand Down
2 changes: 1 addition & 1 deletion open_manipulator_description/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
<package format="3">
<name>open_manipulator_description</name>
<version>4.1.4</version>
<version>5.0.0</version>
<description>
open_manipulator_description ROS 2 package.
</description>
Expand Down
4 changes: 4 additions & 0 deletions open_manipulator_gui/CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@
Changelog for package open_manipulator_gui
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

5.0.0 (2026-06-24)
------------------
* None

4.1.4 (2026-04-27)
------------------
* None
Expand Down
2 changes: 1 addition & 1 deletion open_manipulator_gui/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
<package format="3">
<name>open_manipulator_gui</name>
<version>4.1.4</version>
<version>5.0.0</version>
<description>
The OpenMANIPULATOR GUI ROS 2 package enables users to explore Joint Space,
Task Space, and even work with the Task Constructor functionality. </description>
Expand Down
5 changes: 5 additions & 0 deletions open_manipulator_moveit_config/CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,11 @@
Changelog for package open_manipulator_moveit_config
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

5.0.0 (2026-06-24)
------------------
* Updated SRDF for OMY-F3M
* Contributors: Sungho Woo

4.1.4 (2026-04-27)
------------------
* None
Expand Down
1 change: 1 addition & 0 deletions open_manipulator_moveit_config/config/omx_f/omx_f.srdf
Original file line number Diff line number Diff line change
Expand Up @@ -57,4 +57,5 @@
<disable_collisions link1="link4" link2="link5" reason="Adjacent"/>
<disable_collisions link1="link5" link2="link6" reason="Adjacent"/>
<disable_collisions link1="link5" link2="link7" reason="Adjacent"/>
<disable_collisions link1="link6" link2="link7" reason="Always"/>
</robot>
2 changes: 1 addition & 1 deletion open_manipulator_moveit_config/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
<package format="3">
<name>open_manipulator_moveit_config</name>
<version>4.1.4</version>
<version>5.0.0</version>
<description>
An automatically generated package with all the configuration and launch files for using the open_manipulator_x with the MoveIt Motion Planning Framework
</description>
Expand Down
4 changes: 4 additions & 0 deletions open_manipulator_playground/CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@
Changelog for package open_manipulator_playground
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

5.0.0 (2026-06-24)
------------------
* None

4.1.4 (2026-04-27)
------------------
* Added nodes for drawing mission: shape_detector_node and omx_trajectory_controller_node
Expand Down
2 changes: 1 addition & 1 deletion open_manipulator_playground/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
<package format="3">
<name>open_manipulator_playground</name>
<version>4.1.4</version>
<version>5.0.0</version>
<description>
This package provides an example for utilizing the MoveIt API with the OpenMANIPULATOR,
allowing users to practice and experiment freely.
Expand Down
4 changes: 4 additions & 0 deletions open_manipulator_teleop/CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@
Changelog for package open_manipulator_teleop
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

5.0.0 (2026-06-24)
------------------
* None

4.1.4 (2026-04-27)
------------------
* None
Expand Down
2 changes: 1 addition & 1 deletion open_manipulator_teleop/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
<package format="3">
<name>open_manipulator_teleop</name>
<version>4.1.4</version>
<version>5.0.0</version>
<description>OpenManipulator teleoperation package</description>
<maintainer email="pyo@robotis.com">Pyo</maintainer>
<license>Apache License 2.0</license>
Expand Down
2 changes: 1 addition & 1 deletion open_manipulator_teleop/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

setup(
name=package_name,
version='4.1.4',
version='5.0.0',
packages=find_packages(exclude=[]),
data_files=[
('share/ament_index/resource_index/packages', ['resource/' + package_name]),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@
Changelog for package om_gravity_compensation_controller
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

5.0.0 (2026-06-24)
------------------
* None

4.1.4 (2026-04-27)
------------------
* None
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
<package format="3">
<name>om_gravity_compensation_controller</name>
<version>4.1.4</version>
<version>5.0.0</version>
<description>
Controller for compensating for gravity on a group of joints
</description>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@
Changelog for package om_joint_trajectory_command_broadcaster
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

5.0.0 (2026-06-24)
------------------
* None

4.1.4 (2026-04-27)
------------------
* None
Expand Down
Loading
Loading