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
63 changes: 29 additions & 34 deletions .github/workflows/ros-ci.yaml
Original file line number Diff line number Diff line change
@@ -1,62 +1,57 @@
name: humble-devel
# The name of the workflow
name: CI

# Controls when the action will run. Triggers the workflow on push or pull request
# Specifies the events that trigger the workflow
on:
push:
branches: [ humble-devel ]
branches: [ main, humble, jazzy]
pull_request:
branches: [ humble-devel ]
branches: [ main, humble, jazzy]

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
# Defines a set of jobs to be run as part of the workflow
jobs:
humble-devel:
runs-on: ubuntu-latest
# The name of the job
ROS_CI:
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
ros_distribution:
# - dashing
# - foxy
# - galactic
- humble
# - rolling
- jazzy
- rolling
include:
# # Dashing Diademata (May 2019 - May 2021)
# - docker_image: ubuntu:bionic
# ros_distribution: dashing
# ros_version: 2
# # Foxy Fitzroy (June 2020 - May 2023)
# - docker_image: ubuntu:focal
# ros_distribution: foxy
# ros_version: 2
# # Galactic Geochelone (May 2021)
# - docker_image: ubuntu:focal
# ros_distribution: galactic
# ros_version: 2
# Humble Hawksbill (May 2027)
# ROS 2 Humble Hawksbill
- docker_image: ubuntu:jammy
ros_distribution: humble
ros_version: 2
# # Rolling
# - docker_image: ubuntu:jammy
# ros_distribution: rolling
# ros_version: 2
# ROS 2 Jazzy Jalisco
- docker_image: ubuntu:noble
ros_distribution: jazzy
ros_version: 2
# ROS 2 Rolling Ridley
- docker_image: ubuntu:noble
ros_distribution: rolling
ros_version: 2
container:
image: ${{ matrix.docker_image }}
steps:
- name: Setup directories
- name: Setup workspace
run: mkdir -p ros_ws/src
- name: checkout
uses: actions/checkout@v3

- name: Checkout code
uses: actions/checkout@v4
with:
path: ros_ws/src

- name: Setup ROS environment
uses: ros-tooling/setup-ros@0.3.3
uses: ros-tooling/setup-ros@v0.7
with:
required-ros-distributions: ${{ matrix.ros_distribution }}

- name: Build and Test
uses: ros-tooling/action-ros-ci@0.2.5
uses: ros-tooling/action-ros-ci@v0.3
with:
package-name: turtlebot3_msgs
target-ros2-distro: ${{ matrix.ros_distribution }}
vcs-repo-file-url: ""
package-name: turtlebot3_msgs
32 changes: 32 additions & 0 deletions .github/workflows/ros-lint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# The name of the workflow
name: Lint

# Specifies the events that trigger the workflow
on:
pull_request:

# Defines a set of jobs to be run as part of the workflow
jobs:
ament_lint:
runs-on: ubuntu-latest
container:
image: rostooling/setup-ros-docker:ubuntu-noble-ros-rolling-ros-base-latest
strategy:
fail-fast: false
matrix:
linter: [flake8, pep257, lint_cmake, xmllint, copyright]
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup ROS environment
uses: ros-tooling/[email protected]

- name: Run Linter
env:
AMENT_CPPCHECK_ALLOW_SLOW_VERSIONS: 1
uses: ros-tooling/action-ros-lint@master
with:
linter: ${{ matrix.linter }}
distribution: rolling
package-name: "*"
10 changes: 8 additions & 2 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,15 @@
Changelog for package turtlebot3_msgs
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

2.2.3 (2202-05-26)
2.3.0 (2025-02-19)
------------------
* ROS2 Humble Hawksbill supported
* Updated Patrol.action to support updated patrol example
* Contributors: Junyeong Jeong

2.2.3 (2022-05-26)
------------------
* ROS 2 Humble Hawksbill supported
* Contributors: Will Son

2.2.2 (2021-06-14)
------------------
Expand Down
3 changes: 2 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ find_package(action_msgs REQUIRED)
find_package(ament_cmake REQUIRED)
find_package(rosidl_default_generators REQUIRED)
find_package(std_msgs REQUIRED)
find_package(geometry_msgs REQUIRED)

################################################################################
# Setup for python modules and scripts
Expand Down Expand Up @@ -46,7 +47,7 @@ rosidl_generate_interfaces(${PROJECT_NAME}
${msg_files}
${srv_files}
${action_files}
DEPENDENCIES action_msgs std_msgs
DEPENDENCIES action_msgs std_msgs geometry_msgs
ADD_LINTER_TESTS
)
ament_export_dependencies(rosidl_default_runtime)
Expand Down
18 changes: 18 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
Any contribution that you make to this repository will
be under the Apache 2 License, as dictated by that
[license](http://www.apache.org/licenses/LICENSE-2.0.html):

~~~
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
~~~

Contributors must sign-off each commit by adding a `Signed-off-by: ...`
line to commit messages to certify that they have the right to submit
the code they are contributing to the project according to the
[Developer Certificate of Origin (DCO)](https://developercertificate.org/).
4 changes: 2 additions & 2 deletions LICENSE
Original file line number Diff line number Diff line change
Expand Up @@ -178,15 +178,15 @@
APPENDIX: How to apply the Apache License to your work.

To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "{}"
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.

Copyright {yyyy} {name of copyright owner}
Copyright [yyyy] [name of copyright owner]

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
Expand Down
65 changes: 26 additions & 39 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,54 +1,41 @@
# TurtleBot3
<img src="https://raw.githubusercontent.com/ROBOTIS-GIT/emanual/master/assets/images/platform/turtlebot3/logo_turtlebot3.png" width="300">

<img src="https://github.com/ROBOTIS-GIT/emanual/blob/master/assets/images/platform/turtlebot3/logo_turtlebot3.png" width="300">
- Active Branches: noetic, humble, jazzy, main
- Legacy Branches: *-devel

[![kinetic-devel Status](https://github.com/ROBOTIS-GIT/turtlebot3_msgs/workflows/kinetic-devel/badge.svg)](https://github.com/ROBOTIS-GIT/turtlebot3_msgs/tree/kinetic-devel)

[![melodic-devel Status](https://github.com/ROBOTIS-GIT/turtlebot3_msgs/workflows/melodic-devel/badge.svg)](https://github.com/ROBOTIS-GIT/turtlebot3_msgs/tree/melodic-devel)

[![noetic-devel Status](https://github.com/ROBOTIS-GIT/turtlebot3_msgs/workflows/noetic-devel/badge.svg)](https://github.com/ROBOTIS-GIT/turtlebot3_msgs/tree/noetic-devel)

[![dashing-devel Status](https://github.com/ROBOTIS-GIT/turtlebot3_msgs/workflows/dashing-devel/badge.svg)](https://github.com/ROBOTIS-GIT/turtlebot3_msgs/tree/dashing-devel)

[![foxy-devel Status](https://github.com/ROBOTIS-GIT/turtlebot3_msgs/workflows/foxy-devel/badge.svg)](https://github.com/ROBOTIS-GIT/turtlebot3_msgs/tree/foxy-devel)

[![galactic-devel Status](https://github.com/ROBOTIS-GIT/turtlebot3_msgs/workflows/galactic-devel/badge.svg)](https://github.com/ROBOTIS-GIT/turtlebot3_msgs/tree/galactic-devel)

[![humble-devel Status](https://github.com/ROBOTIS-GIT/turtlebot3_msgs/workflows/humble-devel/badge.svg)](https://github.com/ROBOTIS-GIT/turtlebot3_msgs/tree/humble-devel)

## ROBOTIS e-Manual for TurtleBot3
- [ROBOTIS e-Manual for TurtleBot3](http://turtlebot3.robotis.com/)

## Wiki for turtlebot3_msgs Packages
- http://wiki.ros.org/turtlebot3_msgs

## Open Source related to TurtleBot3
## Open Source Projects Related to TurtleBot3
- [turtlebot3](https://github.com/ROBOTIS-GIT/turtlebot3)
- [turtlebot3_msgs](https://github.com/ROBOTIS-GIT/turtlebot3_msgs)
- [turtlebot3_simulations](https://github.com/ROBOTIS-GIT/turtlebot3_simulations)
- [turtlebot3_applications_msgs](https://github.com/ROBOTIS-GIT/turtlebot3_applications_msgs)
- [turtlebot3_manipulation](https://github.com/ROBOTIS-GIT/turtlebot3_manipulation)
- [turtlebot3_manipulation_simulations](https://github.com/ROBOTIS-GIT/turtlebot3_manipulation_simulations)
- [turtlebot3_applications](https://github.com/ROBOTIS-GIT/turtlebot3_applications)
- [turtlebot3_applications_msgs](https://github.com/ROBOTIS-GIT/turtlebot3_applications_msgs)
- [turtlebot3_machine_learning](https://github.com/ROBOTIS-GIT/turtlebot3_machine_learning)
- [turtlebot3_autorace](https://github.com/ROBOTIS-GIT/turtlebot3_autorace)
- [turtlebot3_deliver](https://github.com/ROBOTIS-GIT/turtlebot3_deliver)
- [turtlebot3_home_service_challenge](https://github.com/ROBOTIS-GIT/turtlebot3_home_service_challenge)
- [hls_lfcd_lds_driver](https://github.com/ROBOTIS-GIT/hls_lfcd_lds_driver)
- [ld08_driver](https://github.com/ROBOTIS-GIT/ld08_driver)
- [open_manipulator_msgs](https://github.com/ROBOTIS-GIT/open_manipulator_msgs)
- [open_manipulator](https://github.com/ROBOTIS-GIT/open_manipulator)
- [open_manipulator_simulations](https://github.com/ROBOTIS-GIT/open_manipulator_simulations)
- [open_manipulator_perceptions](https://github.com/ROBOTIS-GIT/open_manipulator_perceptions)
- [open_manipulator_with_tb3_msgs](https://github.com/ROBOTIS-GIT/open_manipulator_with_tb3_msgs)
- [open_manipulator_with_tb3](https://github.com/ROBOTIS-GIT/open_manipulator_with_tb3)
- [open_manipulator_with_tb3_simulations](https://github.com/ROBOTIS-GIT/open_manipulator_with_tb3_simulations)
- [dynamixel_sdk](https://github.com/ROBOTIS-GIT/DynamixelSDK)
- [dynamixel_workbench](https://github.com/ROBOTIS-GIT/dynamixel-workbench)
- [OpenCR-Hardware](https://github.com/ROBOTIS-GIT/OpenCR-Hardware)
- [OpenCR](https://github.com/ROBOTIS-GIT/OpenCR)

## Documents and Videos related to TurtleBot3
- [ROBOTIS e-Manual for TurtleBot3](http://turtlebot3.robotis.com/)
- [ROBOTIS e-Manual for OpenManipulator](http://emanual.robotis.com/docs/en/platform/openmanipulator/)
- [ROBOTIS e-Manual for Dynamixel SDK](http://emanual.robotis.com/docs/en/software/dynamixel/dynamixel_sdk/overview/)
- [ROBOTIS e-Manual for Dynamixel Workbench](http://emanual.robotis.com/docs/en/software/dynamixel/dynamixel_workbench/)
- [Website for TurtleBot Series](http://www.turtlebot.com/)
- [e-Book for TurtleBot3](https://community.robotsource.org/t/download-the-ros-robot-programming-book-for-free/51/)
- [Videos for TurtleBot3 ](https://www.youtube.com/playlist?list=PLRG6WP3c31_XI3wlvHlx2Mp8BYqgqDURU)
## Documentation, Videos, and Community

### Official Documentation
- ⚙️ **[ROBOTIS DYNAMIXEL](https://dynamixel.com/)**
- 📚 **[ROBOTIS e-Manual for Dynamixel SDK](http://emanual.robotis.com/docs/en/software/dynamixel/dynamixel_sdk/overview/)**
- 📚 **[ROBOTIS e-Manual for TurtleBot3](http://turtlebot3.robotis.com/)**
- 📚 **[ROBOTIS e-Manual for OpenMANIPULATOR-X](https://emanual.robotis.com/docs/en/platform/openmanipulator_x/overview/)**

### Learning Resources
- 🎥 **[ROBOTIS YouTube Channel](https://www.youtube.com/@ROBOTISCHANNEL)**
- 🎥 **[ROBOTIS Open Source YouTube Channel](https://www.youtube.com/@ROBOTISOpenSourceTeam)**
- 🎥 **[ROBOTIS TurtleBot3 YouTube Playlist](https://www.youtube.com/playlist?list=PLRG6WP3c31_XI3wlvHlx2Mp8BYqgqDURU)**
- 🎥 **[ROBOTIS OpenMANIPULATOR YouTube Playlist](https://www.youtube.com/playlist?list=PLRG6WP3c31_WpEsB6_Rdt3KhiopXQlUkb)**

### Community & Support
- 💬 **[ROBOTIS Community Forum](https://forum.robotis.com/)**
- 💬 **[TurtleBot category from ROS Community](https://discourse.ros.org/c/turtlebot/)**
12 changes: 6 additions & 6 deletions action/Patrol.action
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# Goal
float32 radius
# Define the goal
geometry_msgs/Vector3 goal
---
# Result
bool success
# Define the result
string result
---
# Feedback
float32 left_time
# Define a feedback message
string state
12 changes: 8 additions & 4 deletions package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
<package format="3">
<name>turtlebot3_msgs</name>
<version>2.2.3</version>
<version>2.3.0</version>
<description>
Message and service types: custom messages and services for TurtleBot3 packages for ROS2
Message and service types: custom messages and services for TurtleBot3 packages for ROS 2
</description>
<maintainer email="willson@robotis.com">Will Son</maintainer>
<maintainer email="pyo@robotis.com">Pyo</maintainer>
<license>Apache 2.0</license>
<url type="website">http://wiki.ros.org/turtlebot3_msgs</url>
<url type="repository">https://github.com/ROBOTIS-GIT/turtlebot3_msgs</url>
Expand All @@ -15,17 +15,21 @@
<author email="[email protected]">Darby Lim</author>
<author email="[email protected]">Gilbert</author>
<author email="[email protected]">Vineet Ghatge</author>
<author email="[email protected]">Junyeong Jeong</author>
<author>Ryan Shim</author>
<author email="[email protected]">Will Son</author>
<buildtool_depend>ament_cmake</buildtool_depend>
<buildtool_depend>rosidl_default_generators</buildtool_depend>
<build_depend>action_msgs</build_depend>
<build_depend>builtin_interfaces</build_depend>
<build_depend>std_msgs</build_depend>
<build_depend>rosidl_default_runtime</build_depend>

<build_depend>geometry_msgs</build_depend>

<exec_depend>action_msgs</exec_depend>
<exec_depend>builtin_interfaces</exec_depend>
<exec_depend>std_msgs</exec_depend>
<exec_depend>geometry_msgs</exec_depend>
<exec_depend>rosidl_default_runtime</exec_depend>
<test_depend>ament_lint_common</test_depend>
<member_of_group>rosidl_interface_packages</member_of_group>
Expand Down
Loading