Repository Summary
Checkout URI | https://github.com/synapticon/synapticon_ros2_control.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-12 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Packages
Name | Version |
---|---|
synapticon_ros2_control | 0.1.2 |
README
Controlling Synapticon Devices Using the ROS2 Package
Description
This repository provides an example of how to use Synapticon drives (SOMANET Node, SOMANET Circulo and SOMANET Integro) in CSP (Cyclic Sync Position), CSV (Cyclic Sync Velocity), and CST (Cyclic Sync Torque) modes using the ROS2 package. It utilizes SOEM Ethercat Master
. The ROS 2 package was originally developed by Andy Zelenak. Synapticon GmbH added examples, simulation, and extended instructions for easier installation, as well as support for containerization using Docker.
Table of Contents
- Intention
-
Overview
- 2.1. Hardware
- 2.2. Software
- 2.2.1. Ubuntu with ROS2
- 2.2.1.1. ROS2 Installation
- 2.2.1.2. Synapticon Package Installation
- 2.2.1.3. Demo
- 2.2.1.4. Running Without Sudo (Optional)
- 2.2.2. Isolated Environment (Docker)
- 2.2.2.1. Docker Installation
- 2.2.2.2. Synapticon Package Installation
- 2.2.2.3. Demo
- 2.2.1. Ubuntu with ROS2
- Disclaimer
1. Intention
The intention of this document is to provide instructions on how to quickly begin Synapticon Devices with the ROS2 package using the Synapticon library. Additionally, in order to make it compatible with other Linux distributions, corresponding Docker images are provided.
2. Overview
The following subsections briefly demonstrate hardware and software required for using Synapticon devices with this package.
2.1. Hardware
In the figure below, a block diagram of the wiring used in this setup is provided. Drives can be used once the parameters are configured with OBLAC tools. Detailed instructions and wiring diagrams for all the devices are available on the Synapticon Web site documentation. The package allows daisy chaining of all the Synapticon drives in any order as indicated in the image below.
2.2. Software
In this demo, two scenarios are considered:
- Ubuntu 22.04 or 24.04 is installed on the system and ROS2 (humble, rolling or jazzy) together with the Synapticon package will be installed on that system
- The user wants to run the package in an isolated environment (Docker)
2.2.1. Ubuntu with ROS2
To install ROS2 on your Ubuntu machine, follow the steps from ros.org and install the full version. The minimal version can also be installed; however, if simulation is desired, RViZ must additionally be installed. After the installation, some configuration steps as described here are required. For the completeness of the demo, the commands in the following subsection are copied from the above website and should be executed for the ROS2 installation.
2.2.1.1. ROS2 Installation
To ensure that locale supports UTF-8, run the following commands:
sudo apt update && sudo apt install locales
sudo locale-gen en_US en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8
Enable Ubuntu Universe repository:
sudo apt install software-properties-common
sudo add-apt-repository universe
Add GPG key:
sudo apt update && sudo apt install curl -y
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
Add repository to the sources:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
Update apt cache:
sudo apt update
This command updates the packages on your system. Note that if the commands after this work, skip this step.
sudo apt upgrade
Finally, install ROS and compilers (replace ROS_DISTRO
with the desired ROS distribution - humble, jazzy or rolling):
sudo apt install ros-ROS_DISTRO-desktop
sudo apt install ros-dev-tools
After the installation is complete, add the following line to the end of /home/USER/.bashrc
file (replace ROS_DISTRO
with the desired ROS distribution - humble, jazzy or rolling):
source /opt/ros/ROS_DISTRO/setup.bash
In order for ROS2 to not interfere with the communication on other ports, we set the Domain ID (detailed information is available here). For this demo, we just used ROS_DOMAIN_ID=1. To do so, add the following at the end of /home/$USER/.bashrc
:
export ROS_DOMAIN_ID=1
After this, close and reopen all your terminals.
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/synapticon/synapticon_ros2_control.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-12 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Packages
Name | Version |
---|---|
synapticon_ros2_control | 0.1.2 |
README
Controlling Synapticon Devices Using the ROS2 Package
Description
This repository provides an example of how to use Synapticon drives (SOMANET Node, SOMANET Circulo and SOMANET Integro) in CSP (Cyclic Sync Position), CSV (Cyclic Sync Velocity), and CST (Cyclic Sync Torque) modes using the ROS2 package. It utilizes SOEM Ethercat Master
. The ROS 2 package was originally developed by Andy Zelenak. Synapticon GmbH added examples, simulation, and extended instructions for easier installation, as well as support for containerization using Docker.
Table of Contents
- Intention
-
Overview
- 2.1. Hardware
- 2.2. Software
- 2.2.1. Ubuntu with ROS2
- 2.2.1.1. ROS2 Installation
- 2.2.1.2. Synapticon Package Installation
- 2.2.1.3. Demo
- 2.2.1.4. Running Without Sudo (Optional)
- 2.2.2. Isolated Environment (Docker)
- 2.2.2.1. Docker Installation
- 2.2.2.2. Synapticon Package Installation
- 2.2.2.3. Demo
- 2.2.1. Ubuntu with ROS2
- Disclaimer
1. Intention
The intention of this document is to provide instructions on how to quickly begin Synapticon Devices with the ROS2 package using the Synapticon library. Additionally, in order to make it compatible with other Linux distributions, corresponding Docker images are provided.
2. Overview
The following subsections briefly demonstrate hardware and software required for using Synapticon devices with this package.
2.1. Hardware
In the figure below, a block diagram of the wiring used in this setup is provided. Drives can be used once the parameters are configured with OBLAC tools. Detailed instructions and wiring diagrams for all the devices are available on the Synapticon Web site documentation. The package allows daisy chaining of all the Synapticon drives in any order as indicated in the image below.
2.2. Software
In this demo, two scenarios are considered:
- Ubuntu 22.04 or 24.04 is installed on the system and ROS2 (humble, rolling or jazzy) together with the Synapticon package will be installed on that system
- The user wants to run the package in an isolated environment (Docker)
2.2.1. Ubuntu with ROS2
To install ROS2 on your Ubuntu machine, follow the steps from ros.org and install the full version. The minimal version can also be installed; however, if simulation is desired, RViZ must additionally be installed. After the installation, some configuration steps as described here are required. For the completeness of the demo, the commands in the following subsection are copied from the above website and should be executed for the ROS2 installation.
2.2.1.1. ROS2 Installation
To ensure that locale supports UTF-8, run the following commands:
sudo apt update && sudo apt install locales
sudo locale-gen en_US en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8
Enable Ubuntu Universe repository:
sudo apt install software-properties-common
sudo add-apt-repository universe
Add GPG key:
sudo apt update && sudo apt install curl -y
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
Add repository to the sources:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
Update apt cache:
sudo apt update
This command updates the packages on your system. Note that if the commands after this work, skip this step.
sudo apt upgrade
Finally, install ROS and compilers (replace ROS_DISTRO
with the desired ROS distribution - humble, jazzy or rolling):
sudo apt install ros-ROS_DISTRO-desktop
sudo apt install ros-dev-tools
After the installation is complete, add the following line to the end of /home/USER/.bashrc
file (replace ROS_DISTRO
with the desired ROS distribution - humble, jazzy or rolling):
source /opt/ros/ROS_DISTRO/setup.bash
In order for ROS2 to not interfere with the communication on other ports, we set the Domain ID (detailed information is available here). For this demo, we just used ROS_DOMAIN_ID=1. To do so, add the following at the end of /home/$USER/.bashrc
:
export ROS_DOMAIN_ID=1
After this, close and reopen all your terminals.
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/synapticon/synapticon_ros2_control.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-12 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Packages
Name | Version |
---|---|
synapticon_ros2_control | 0.1.2 |
README
Controlling Synapticon Devices Using the ROS2 Package
Description
This repository provides an example of how to use Synapticon drives (SOMANET Node, SOMANET Circulo and SOMANET Integro) in CSP (Cyclic Sync Position), CSV (Cyclic Sync Velocity), and CST (Cyclic Sync Torque) modes using the ROS2 package. It utilizes SOEM Ethercat Master
. The ROS 2 package was originally developed by Andy Zelenak. Synapticon GmbH added examples, simulation, and extended instructions for easier installation, as well as support for containerization using Docker.
Table of Contents
- Intention
-
Overview
- 2.1. Hardware
- 2.2. Software
- 2.2.1. Ubuntu with ROS2
- 2.2.1.1. ROS2 Installation
- 2.2.1.2. Synapticon Package Installation
- 2.2.1.3. Demo
- 2.2.1.4. Running Without Sudo (Optional)
- 2.2.2. Isolated Environment (Docker)
- 2.2.2.1. Docker Installation
- 2.2.2.2. Synapticon Package Installation
- 2.2.2.3. Demo
- 2.2.1. Ubuntu with ROS2
- Disclaimer
1. Intention
The intention of this document is to provide instructions on how to quickly begin Synapticon Devices with the ROS2 package using the Synapticon library. Additionally, in order to make it compatible with other Linux distributions, corresponding Docker images are provided.
2. Overview
The following subsections briefly demonstrate hardware and software required for using Synapticon devices with this package.
2.1. Hardware
In the figure below, a block diagram of the wiring used in this setup is provided. Drives can be used once the parameters are configured with OBLAC tools. Detailed instructions and wiring diagrams for all the devices are available on the Synapticon Web site documentation. The package allows daisy chaining of all the Synapticon drives in any order as indicated in the image below.
2.2. Software
In this demo, two scenarios are considered:
- Ubuntu 22.04 or 24.04 is installed on the system and ROS2 (humble, rolling or jazzy) together with the Synapticon package will be installed on that system
- The user wants to run the package in an isolated environment (Docker)
2.2.1. Ubuntu with ROS2
To install ROS2 on your Ubuntu machine, follow the steps from ros.org and install the full version. The minimal version can also be installed; however, if simulation is desired, RViZ must additionally be installed. After the installation, some configuration steps as described here are required. For the completeness of the demo, the commands in the following subsection are copied from the above website and should be executed for the ROS2 installation.
2.2.1.1. ROS2 Installation
To ensure that locale supports UTF-8, run the following commands:
sudo apt update && sudo apt install locales
sudo locale-gen en_US en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8
Enable Ubuntu Universe repository:
sudo apt install software-properties-common
sudo add-apt-repository universe
Add GPG key:
sudo apt update && sudo apt install curl -y
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
Add repository to the sources:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
Update apt cache:
sudo apt update
This command updates the packages on your system. Note that if the commands after this work, skip this step.
sudo apt upgrade
Finally, install ROS and compilers (replace ROS_DISTRO
with the desired ROS distribution - humble, jazzy or rolling):
sudo apt install ros-ROS_DISTRO-desktop
sudo apt install ros-dev-tools
After the installation is complete, add the following line to the end of /home/USER/.bashrc
file (replace ROS_DISTRO
with the desired ROS distribution - humble, jazzy or rolling):
source /opt/ros/ROS_DISTRO/setup.bash
In order for ROS2 to not interfere with the communication on other ports, we set the Domain ID (detailed information is available here). For this demo, we just used ROS_DOMAIN_ID=1. To do so, add the following at the end of /home/$USER/.bashrc
:
export ROS_DOMAIN_ID=1
After this, close and reopen all your terminals.
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/synapticon/synapticon_ros2_control.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-12 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Packages
Name | Version |
---|---|
synapticon_ros2_control | 0.1.2 |
README
Controlling Synapticon Devices Using the ROS2 Package
Description
This repository provides an example of how to use Synapticon drives (SOMANET Node, SOMANET Circulo and SOMANET Integro) in CSP (Cyclic Sync Position), CSV (Cyclic Sync Velocity), and CST (Cyclic Sync Torque) modes using the ROS2 package. It utilizes SOEM Ethercat Master
. The ROS 2 package was originally developed by Andy Zelenak. Synapticon GmbH added examples, simulation, and extended instructions for easier installation, as well as support for containerization using Docker.
Table of Contents
- Intention
-
Overview
- 2.1. Hardware
- 2.2. Software
- 2.2.1. Ubuntu with ROS2
- 2.2.1.1. ROS2 Installation
- 2.2.1.2. Synapticon Package Installation
- 2.2.1.3. Demo
- 2.2.1.4. Running Without Sudo (Optional)
- 2.2.2. Isolated Environment (Docker)
- 2.2.2.1. Docker Installation
- 2.2.2.2. Synapticon Package Installation
- 2.2.2.3. Demo
- 2.2.1. Ubuntu with ROS2
- Disclaimer
1. Intention
The intention of this document is to provide instructions on how to quickly begin Synapticon Devices with the ROS2 package using the Synapticon library. Additionally, in order to make it compatible with other Linux distributions, corresponding Docker images are provided.
2. Overview
The following subsections briefly demonstrate hardware and software required for using Synapticon devices with this package.
2.1. Hardware
In the figure below, a block diagram of the wiring used in this setup is provided. Drives can be used once the parameters are configured with OBLAC tools. Detailed instructions and wiring diagrams for all the devices are available on the Synapticon Web site documentation. The package allows daisy chaining of all the Synapticon drives in any order as indicated in the image below.
2.2. Software
In this demo, two scenarios are considered:
- Ubuntu 22.04 or 24.04 is installed on the system and ROS2 (humble, rolling or jazzy) together with the Synapticon package will be installed on that system
- The user wants to run the package in an isolated environment (Docker)
2.2.1. Ubuntu with ROS2
To install ROS2 on your Ubuntu machine, follow the steps from ros.org and install the full version. The minimal version can also be installed; however, if simulation is desired, RViZ must additionally be installed. After the installation, some configuration steps as described here are required. For the completeness of the demo, the commands in the following subsection are copied from the above website and should be executed for the ROS2 installation.
2.2.1.1. ROS2 Installation
To ensure that locale supports UTF-8, run the following commands:
sudo apt update && sudo apt install locales
sudo locale-gen en_US en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8
Enable Ubuntu Universe repository:
sudo apt install software-properties-common
sudo add-apt-repository universe
Add GPG key:
sudo apt update && sudo apt install curl -y
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
Add repository to the sources:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
Update apt cache:
sudo apt update
This command updates the packages on your system. Note that if the commands after this work, skip this step.
sudo apt upgrade
Finally, install ROS and compilers (replace ROS_DISTRO
with the desired ROS distribution - humble, jazzy or rolling):
sudo apt install ros-ROS_DISTRO-desktop
sudo apt install ros-dev-tools
After the installation is complete, add the following line to the end of /home/USER/.bashrc
file (replace ROS_DISTRO
with the desired ROS distribution - humble, jazzy or rolling):
source /opt/ros/ROS_DISTRO/setup.bash
In order for ROS2 to not interfere with the communication on other ports, we set the Domain ID (detailed information is available here). For this demo, we just used ROS_DOMAIN_ID=1. To do so, add the following at the end of /home/$USER/.bashrc
:
export ROS_DOMAIN_ID=1
After this, close and reopen all your terminals.
File truncated at 100 lines see the full file