No version for distro humble showing rolling. Known supported distros are highlighted in the buttons above.
Package symbol

netft_driver package from ros-netft repo

netft_driver

ROS Distro
rolling

Package Summary

Version 0.3.2
License Apache-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/netft/ros-netft.git
VCS Type git
VCS Version main
Last Updated 2026-08-04
Dev Status MAINTAINED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Native ROS 1, ROS 2, and ros2_control driver for ATI Net F/T RDT sensors.

Additional Links

Maintainers

  • Xudong Han

Authors

  • Xudong Han

ROS Net F/T Driver

CI Release CodeQL Coverage ROS License

netft_driver is a native ROS driver for ATI Ethernet Net F/T and Ethernet Axia force/torque sensors. It supports a standalone ROS 1 or ROS 2 node and a ROS 2 ros2_control sensor hardware plugin.

Features

  • Publishes calibrated geometry_msgs/WrenchStamped data in N and Nm.
  • Reports connection, sequence, receive-rate, and device-status diagnostics.
  • Provides an explicit software-bias service.
  • Integrates with the standard ROS 2 force-torque sensor broadcaster.
  • Carries a reviewed private snapshot of the netft-cpp acquisition core.

Supported ROS distributions

ROS distribution Standalone driver ros2_control plugin Support policy
ROS 2 Lyrical Yes Yes Supported
ROS 2 Kilted Yes Yes Supported
ROS 2 Jazzy Yes Yes Supported
ROS 2 Humble Yes Yes Compatibility
ROS 2 Rolling Yes Yes Development
ROS 1 Noetic* Yes N/A Legacy source support

* ROS 1 Noetic is end-of-life and supported from source only.

Installation

ROS 2

Replace lyrical with another supported ROS 2 distribution when required.

source /opt/ros/lyrical/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select netft_driver
source install/setup.bash

ROS 1 Noetic

source /opt/ros/noetic/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep update --include-eol-distros
rosdep install --from-paths src --ignore-src -r -y
catkin_make
source devel/setup.bash

See the installation guide for prerequisites and package availability.

Quick start

ATI RDT permits one UDP client. Stop other RDT clients before starting the driver. The examples use 192.168.1.1, ATI’s factory-default static address; replace it with the address assigned to your sensor.

Standalone driver

ROS 2:

ros2 launch netft_driver netft.launch.py sensor_ip:=192.168.1.1
ros2 topic echo --once /netft/wrench

ROS 1:

roslaunch netft_driver netft.launch sensor_ip:=192.168.1.1
rostopic echo -n 1 /netft/wrench

The default bias service is /netft/bias. Bias changes the measurement zero; call it only when the sensor and connected mechanism are in a safe state.

ros2_control

The plugin class is netft_driver/NetFTHardwareInterface. Include the installed Xacro macro in the robot description managed by your controller manager:

```xml

<xacro:netft_ros2_control name=”wrist_netft_hardware”

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package netft_driver

Forthcoming

  • Update the private netft-cpp core snapshot to v0.3.3, including lifecycle-safe client destruction during concurrent worker shutdown.

0.3.2 (2026-07-29)

  • Update the private netft-cpp core snapshot to v0.3.1, including the fix that prevents fail-stop clients from receiving stalled or backward FT-sequence samples.
  • Retain raw wrench counts in core samples while keeping ROS output in SI units.
  • Use the upstream portable XML parser and remove the obsolete local fallback.

0.3.1 (2026-07-23)

  • Update the private netft-cpp core snapshot to v0.1.3 so repeated signal interruptions cannot extend the configured UDP receive timeout.

0.3.0 (2026-07-22)

  • Add a private netft-cpp v0.1.2 core snapshot and remove the duplicate original runtime.
  • Read sensor-reported calibration by default and convert its native force and torque units to N and Nm.
  • Add the explicit use_sensor_calibration=false manual override, with counts/N and counts/Nm inputs.
  • Add HTTP configuration port and timeout parameters for sensor calibration discovery.
  • Support Noetic's GCC 9 standard library with an Apache-2.0 XML parser compatibility translation unit.
  • Keep the ros2_control plugin ABI private by hiding core and implementation symbols.
  • License the complete repository under Apache-2.0, matching the upstream core.

0.2.2 (2026-07-22)

  • Replace the project-specific sensor address in defaults and examples with ATI's factory-default 192.168.1.1 address.
  • Keep tests focused on executable and machine-readable contracts instead of human-facing documentation, help, error, log, and diagnostic wording.
  • Normalize generated release notes and remove the obsolete source-only availability notice.
  • Contributors: Xudong Han

0.2.1 (2026-07-22)

  • Fix ROS version detection when isolated build environments do not expose ROS_VERSION to CMake.
  • Declare the ros_environment build dependency and validate ROS 1 and ROS 2 configuration with ROS_VERSION unset.
  • Increase the ros2_control smoke-test timeout margin so transient CI scheduler stalls do not fault the healthy sensor in the two-sensor isolation scenario.
  • Contributors: Xudong Han

0.2.0 (2026-07-21)

  • Replace the sensor runtime with one ROS-neutral C++17 transport, protocol, status, and recovery core.
  • Add the netft_driver/NetFTHardwareInterface ros2_control sensor plugin, six standard force-torque state interfaces, reusable Xacro, and broadcaster configuration.
  • Add fail-stop fault handling, lifecycle recovery, instance-local diagnostics and software bias, and multi-sensor isolation.
  • Install native netft_node and netft_check executables for ROS 1 and ROS 2 while preserving the standalone ROS interfaces.
  • Validate native builds and loopback integration for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling.
  • Contributors: Xudong Han

0.1.0 (2026-07-19)

  • Initial public release.
  • Add one ROS 1 and ROS 2 source package for ATI Ethernet Net F/T RDT sensors.
  • Add reconnect, diagnostics, software bias, loopback integration tests, and a bounded non-biasing hardware check.
  • Validate source builds for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling in locked maintainer environments.
  • Contributors: Xudong Han

Launch files

  • launch/netft.launch
      • sensor_ip [default: 192.168.1.1]
      • sensor_port [default: 49152]
      • http_port [default: 80]
      • use_sensor_calibration [default: true]
      • configuration_connect_timeout [default: 0.5]
      • configuration_timeout [default: 1.0]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged netft_driver at Robotics Stack Exchange

No version for distro jazzy showing rolling. Known supported distros are highlighted in the buttons above.
Package symbol

netft_driver package from ros-netft repo

netft_driver

ROS Distro
rolling

Package Summary

Version 0.3.2
License Apache-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/netft/ros-netft.git
VCS Type git
VCS Version main
Last Updated 2026-08-04
Dev Status MAINTAINED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Native ROS 1, ROS 2, and ros2_control driver for ATI Net F/T RDT sensors.

Additional Links

Maintainers

  • Xudong Han

Authors

  • Xudong Han

ROS Net F/T Driver

CI Release CodeQL Coverage ROS License

netft_driver is a native ROS driver for ATI Ethernet Net F/T and Ethernet Axia force/torque sensors. It supports a standalone ROS 1 or ROS 2 node and a ROS 2 ros2_control sensor hardware plugin.

Features

  • Publishes calibrated geometry_msgs/WrenchStamped data in N and Nm.
  • Reports connection, sequence, receive-rate, and device-status diagnostics.
  • Provides an explicit software-bias service.
  • Integrates with the standard ROS 2 force-torque sensor broadcaster.
  • Carries a reviewed private snapshot of the netft-cpp acquisition core.

Supported ROS distributions

ROS distribution Standalone driver ros2_control plugin Support policy
ROS 2 Lyrical Yes Yes Supported
ROS 2 Kilted Yes Yes Supported
ROS 2 Jazzy Yes Yes Supported
ROS 2 Humble Yes Yes Compatibility
ROS 2 Rolling Yes Yes Development
ROS 1 Noetic* Yes N/A Legacy source support

* ROS 1 Noetic is end-of-life and supported from source only.

Installation

ROS 2

Replace lyrical with another supported ROS 2 distribution when required.

source /opt/ros/lyrical/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select netft_driver
source install/setup.bash

ROS 1 Noetic

source /opt/ros/noetic/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep update --include-eol-distros
rosdep install --from-paths src --ignore-src -r -y
catkin_make
source devel/setup.bash

See the installation guide for prerequisites and package availability.

Quick start

ATI RDT permits one UDP client. Stop other RDT clients before starting the driver. The examples use 192.168.1.1, ATI’s factory-default static address; replace it with the address assigned to your sensor.

Standalone driver

ROS 2:

ros2 launch netft_driver netft.launch.py sensor_ip:=192.168.1.1
ros2 topic echo --once /netft/wrench

ROS 1:

roslaunch netft_driver netft.launch sensor_ip:=192.168.1.1
rostopic echo -n 1 /netft/wrench

The default bias service is /netft/bias. Bias changes the measurement zero; call it only when the sensor and connected mechanism are in a safe state.

ros2_control

The plugin class is netft_driver/NetFTHardwareInterface. Include the installed Xacro macro in the robot description managed by your controller manager:

```xml

<xacro:netft_ros2_control name=”wrist_netft_hardware”

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package netft_driver

Forthcoming

  • Update the private netft-cpp core snapshot to v0.3.3, including lifecycle-safe client destruction during concurrent worker shutdown.

0.3.2 (2026-07-29)

  • Update the private netft-cpp core snapshot to v0.3.1, including the fix that prevents fail-stop clients from receiving stalled or backward FT-sequence samples.
  • Retain raw wrench counts in core samples while keeping ROS output in SI units.
  • Use the upstream portable XML parser and remove the obsolete local fallback.

0.3.1 (2026-07-23)

  • Update the private netft-cpp core snapshot to v0.1.3 so repeated signal interruptions cannot extend the configured UDP receive timeout.

0.3.0 (2026-07-22)

  • Add a private netft-cpp v0.1.2 core snapshot and remove the duplicate original runtime.
  • Read sensor-reported calibration by default and convert its native force and torque units to N and Nm.
  • Add the explicit use_sensor_calibration=false manual override, with counts/N and counts/Nm inputs.
  • Add HTTP configuration port and timeout parameters for sensor calibration discovery.
  • Support Noetic's GCC 9 standard library with an Apache-2.0 XML parser compatibility translation unit.
  • Keep the ros2_control plugin ABI private by hiding core and implementation symbols.
  • License the complete repository under Apache-2.0, matching the upstream core.

0.2.2 (2026-07-22)

  • Replace the project-specific sensor address in defaults and examples with ATI's factory-default 192.168.1.1 address.
  • Keep tests focused on executable and machine-readable contracts instead of human-facing documentation, help, error, log, and diagnostic wording.
  • Normalize generated release notes and remove the obsolete source-only availability notice.
  • Contributors: Xudong Han

0.2.1 (2026-07-22)

  • Fix ROS version detection when isolated build environments do not expose ROS_VERSION to CMake.
  • Declare the ros_environment build dependency and validate ROS 1 and ROS 2 configuration with ROS_VERSION unset.
  • Increase the ros2_control smoke-test timeout margin so transient CI scheduler stalls do not fault the healthy sensor in the two-sensor isolation scenario.
  • Contributors: Xudong Han

0.2.0 (2026-07-21)

  • Replace the sensor runtime with one ROS-neutral C++17 transport, protocol, status, and recovery core.
  • Add the netft_driver/NetFTHardwareInterface ros2_control sensor plugin, six standard force-torque state interfaces, reusable Xacro, and broadcaster configuration.
  • Add fail-stop fault handling, lifecycle recovery, instance-local diagnostics and software bias, and multi-sensor isolation.
  • Install native netft_node and netft_check executables for ROS 1 and ROS 2 while preserving the standalone ROS interfaces.
  • Validate native builds and loopback integration for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling.
  • Contributors: Xudong Han

0.1.0 (2026-07-19)

  • Initial public release.
  • Add one ROS 1 and ROS 2 source package for ATI Ethernet Net F/T RDT sensors.
  • Add reconnect, diagnostics, software bias, loopback integration tests, and a bounded non-biasing hardware check.
  • Validate source builds for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling in locked maintainer environments.
  • Contributors: Xudong Han

Launch files

  • launch/netft.launch
      • sensor_ip [default: 192.168.1.1]
      • sensor_port [default: 49152]
      • http_port [default: 80]
      • use_sensor_calibration [default: true]
      • configuration_connect_timeout [default: 0.5]
      • configuration_timeout [default: 1.0]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged netft_driver at Robotics Stack Exchange

No version for distro kilted showing rolling. Known supported distros are highlighted in the buttons above.
Package symbol

netft_driver package from ros-netft repo

netft_driver

ROS Distro
rolling

Package Summary

Version 0.3.2
License Apache-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/netft/ros-netft.git
VCS Type git
VCS Version main
Last Updated 2026-08-04
Dev Status MAINTAINED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Native ROS 1, ROS 2, and ros2_control driver for ATI Net F/T RDT sensors.

Additional Links

Maintainers

  • Xudong Han

Authors

  • Xudong Han

ROS Net F/T Driver

CI Release CodeQL Coverage ROS License

netft_driver is a native ROS driver for ATI Ethernet Net F/T and Ethernet Axia force/torque sensors. It supports a standalone ROS 1 or ROS 2 node and a ROS 2 ros2_control sensor hardware plugin.

Features

  • Publishes calibrated geometry_msgs/WrenchStamped data in N and Nm.
  • Reports connection, sequence, receive-rate, and device-status diagnostics.
  • Provides an explicit software-bias service.
  • Integrates with the standard ROS 2 force-torque sensor broadcaster.
  • Carries a reviewed private snapshot of the netft-cpp acquisition core.

Supported ROS distributions

ROS distribution Standalone driver ros2_control plugin Support policy
ROS 2 Lyrical Yes Yes Supported
ROS 2 Kilted Yes Yes Supported
ROS 2 Jazzy Yes Yes Supported
ROS 2 Humble Yes Yes Compatibility
ROS 2 Rolling Yes Yes Development
ROS 1 Noetic* Yes N/A Legacy source support

* ROS 1 Noetic is end-of-life and supported from source only.

Installation

ROS 2

Replace lyrical with another supported ROS 2 distribution when required.

source /opt/ros/lyrical/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select netft_driver
source install/setup.bash

ROS 1 Noetic

source /opt/ros/noetic/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep update --include-eol-distros
rosdep install --from-paths src --ignore-src -r -y
catkin_make
source devel/setup.bash

See the installation guide for prerequisites and package availability.

Quick start

ATI RDT permits one UDP client. Stop other RDT clients before starting the driver. The examples use 192.168.1.1, ATI’s factory-default static address; replace it with the address assigned to your sensor.

Standalone driver

ROS 2:

ros2 launch netft_driver netft.launch.py sensor_ip:=192.168.1.1
ros2 topic echo --once /netft/wrench

ROS 1:

roslaunch netft_driver netft.launch sensor_ip:=192.168.1.1
rostopic echo -n 1 /netft/wrench

The default bias service is /netft/bias. Bias changes the measurement zero; call it only when the sensor and connected mechanism are in a safe state.

ros2_control

The plugin class is netft_driver/NetFTHardwareInterface. Include the installed Xacro macro in the robot description managed by your controller manager:

```xml

<xacro:netft_ros2_control name=”wrist_netft_hardware”

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package netft_driver

Forthcoming

  • Update the private netft-cpp core snapshot to v0.3.3, including lifecycle-safe client destruction during concurrent worker shutdown.

0.3.2 (2026-07-29)

  • Update the private netft-cpp core snapshot to v0.3.1, including the fix that prevents fail-stop clients from receiving stalled or backward FT-sequence samples.
  • Retain raw wrench counts in core samples while keeping ROS output in SI units.
  • Use the upstream portable XML parser and remove the obsolete local fallback.

0.3.1 (2026-07-23)

  • Update the private netft-cpp core snapshot to v0.1.3 so repeated signal interruptions cannot extend the configured UDP receive timeout.

0.3.0 (2026-07-22)

  • Add a private netft-cpp v0.1.2 core snapshot and remove the duplicate original runtime.
  • Read sensor-reported calibration by default and convert its native force and torque units to N and Nm.
  • Add the explicit use_sensor_calibration=false manual override, with counts/N and counts/Nm inputs.
  • Add HTTP configuration port and timeout parameters for sensor calibration discovery.
  • Support Noetic's GCC 9 standard library with an Apache-2.0 XML parser compatibility translation unit.
  • Keep the ros2_control plugin ABI private by hiding core and implementation symbols.
  • License the complete repository under Apache-2.0, matching the upstream core.

0.2.2 (2026-07-22)

  • Replace the project-specific sensor address in defaults and examples with ATI's factory-default 192.168.1.1 address.
  • Keep tests focused on executable and machine-readable contracts instead of human-facing documentation, help, error, log, and diagnostic wording.
  • Normalize generated release notes and remove the obsolete source-only availability notice.
  • Contributors: Xudong Han

0.2.1 (2026-07-22)

  • Fix ROS version detection when isolated build environments do not expose ROS_VERSION to CMake.
  • Declare the ros_environment build dependency and validate ROS 1 and ROS 2 configuration with ROS_VERSION unset.
  • Increase the ros2_control smoke-test timeout margin so transient CI scheduler stalls do not fault the healthy sensor in the two-sensor isolation scenario.
  • Contributors: Xudong Han

0.2.0 (2026-07-21)

  • Replace the sensor runtime with one ROS-neutral C++17 transport, protocol, status, and recovery core.
  • Add the netft_driver/NetFTHardwareInterface ros2_control sensor plugin, six standard force-torque state interfaces, reusable Xacro, and broadcaster configuration.
  • Add fail-stop fault handling, lifecycle recovery, instance-local diagnostics and software bias, and multi-sensor isolation.
  • Install native netft_node and netft_check executables for ROS 1 and ROS 2 while preserving the standalone ROS interfaces.
  • Validate native builds and loopback integration for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling.
  • Contributors: Xudong Han

0.1.0 (2026-07-19)

  • Initial public release.
  • Add one ROS 1 and ROS 2 source package for ATI Ethernet Net F/T RDT sensors.
  • Add reconnect, diagnostics, software bias, loopback integration tests, and a bounded non-biasing hardware check.
  • Validate source builds for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling in locked maintainer environments.
  • Contributors: Xudong Han

Launch files

  • launch/netft.launch
      • sensor_ip [default: 192.168.1.1]
      • sensor_port [default: 49152]
      • http_port [default: 80]
      • use_sensor_calibration [default: true]
      • configuration_connect_timeout [default: 0.5]
      • configuration_timeout [default: 1.0]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged netft_driver at Robotics Stack Exchange

No version for distro lyrical showing rolling. Known supported distros are highlighted in the buttons above.
Package symbol

netft_driver package from ros-netft repo

netft_driver

ROS Distro
rolling

Package Summary

Version 0.3.2
License Apache-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/netft/ros-netft.git
VCS Type git
VCS Version main
Last Updated 2026-08-04
Dev Status MAINTAINED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Native ROS 1, ROS 2, and ros2_control driver for ATI Net F/T RDT sensors.

Additional Links

Maintainers

  • Xudong Han

Authors

  • Xudong Han

ROS Net F/T Driver

CI Release CodeQL Coverage ROS License

netft_driver is a native ROS driver for ATI Ethernet Net F/T and Ethernet Axia force/torque sensors. It supports a standalone ROS 1 or ROS 2 node and a ROS 2 ros2_control sensor hardware plugin.

Features

  • Publishes calibrated geometry_msgs/WrenchStamped data in N and Nm.
  • Reports connection, sequence, receive-rate, and device-status diagnostics.
  • Provides an explicit software-bias service.
  • Integrates with the standard ROS 2 force-torque sensor broadcaster.
  • Carries a reviewed private snapshot of the netft-cpp acquisition core.

Supported ROS distributions

ROS distribution Standalone driver ros2_control plugin Support policy
ROS 2 Lyrical Yes Yes Supported
ROS 2 Kilted Yes Yes Supported
ROS 2 Jazzy Yes Yes Supported
ROS 2 Humble Yes Yes Compatibility
ROS 2 Rolling Yes Yes Development
ROS 1 Noetic* Yes N/A Legacy source support

* ROS 1 Noetic is end-of-life and supported from source only.

Installation

ROS 2

Replace lyrical with another supported ROS 2 distribution when required.

source /opt/ros/lyrical/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select netft_driver
source install/setup.bash

ROS 1 Noetic

source /opt/ros/noetic/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep update --include-eol-distros
rosdep install --from-paths src --ignore-src -r -y
catkin_make
source devel/setup.bash

See the installation guide for prerequisites and package availability.

Quick start

ATI RDT permits one UDP client. Stop other RDT clients before starting the driver. The examples use 192.168.1.1, ATI’s factory-default static address; replace it with the address assigned to your sensor.

Standalone driver

ROS 2:

ros2 launch netft_driver netft.launch.py sensor_ip:=192.168.1.1
ros2 topic echo --once /netft/wrench

ROS 1:

roslaunch netft_driver netft.launch sensor_ip:=192.168.1.1
rostopic echo -n 1 /netft/wrench

The default bias service is /netft/bias. Bias changes the measurement zero; call it only when the sensor and connected mechanism are in a safe state.

ros2_control

The plugin class is netft_driver/NetFTHardwareInterface. Include the installed Xacro macro in the robot description managed by your controller manager:

```xml

<xacro:netft_ros2_control name=”wrist_netft_hardware”

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package netft_driver

Forthcoming

  • Update the private netft-cpp core snapshot to v0.3.3, including lifecycle-safe client destruction during concurrent worker shutdown.

0.3.2 (2026-07-29)

  • Update the private netft-cpp core snapshot to v0.3.1, including the fix that prevents fail-stop clients from receiving stalled or backward FT-sequence samples.
  • Retain raw wrench counts in core samples while keeping ROS output in SI units.
  • Use the upstream portable XML parser and remove the obsolete local fallback.

0.3.1 (2026-07-23)

  • Update the private netft-cpp core snapshot to v0.1.3 so repeated signal interruptions cannot extend the configured UDP receive timeout.

0.3.0 (2026-07-22)

  • Add a private netft-cpp v0.1.2 core snapshot and remove the duplicate original runtime.
  • Read sensor-reported calibration by default and convert its native force and torque units to N and Nm.
  • Add the explicit use_sensor_calibration=false manual override, with counts/N and counts/Nm inputs.
  • Add HTTP configuration port and timeout parameters for sensor calibration discovery.
  • Support Noetic's GCC 9 standard library with an Apache-2.0 XML parser compatibility translation unit.
  • Keep the ros2_control plugin ABI private by hiding core and implementation symbols.
  • License the complete repository under Apache-2.0, matching the upstream core.

0.2.2 (2026-07-22)

  • Replace the project-specific sensor address in defaults and examples with ATI's factory-default 192.168.1.1 address.
  • Keep tests focused on executable and machine-readable contracts instead of human-facing documentation, help, error, log, and diagnostic wording.
  • Normalize generated release notes and remove the obsolete source-only availability notice.
  • Contributors: Xudong Han

0.2.1 (2026-07-22)

  • Fix ROS version detection when isolated build environments do not expose ROS_VERSION to CMake.
  • Declare the ros_environment build dependency and validate ROS 1 and ROS 2 configuration with ROS_VERSION unset.
  • Increase the ros2_control smoke-test timeout margin so transient CI scheduler stalls do not fault the healthy sensor in the two-sensor isolation scenario.
  • Contributors: Xudong Han

0.2.0 (2026-07-21)

  • Replace the sensor runtime with one ROS-neutral C++17 transport, protocol, status, and recovery core.
  • Add the netft_driver/NetFTHardwareInterface ros2_control sensor plugin, six standard force-torque state interfaces, reusable Xacro, and broadcaster configuration.
  • Add fail-stop fault handling, lifecycle recovery, instance-local diagnostics and software bias, and multi-sensor isolation.
  • Install native netft_node and netft_check executables for ROS 1 and ROS 2 while preserving the standalone ROS interfaces.
  • Validate native builds and loopback integration for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling.
  • Contributors: Xudong Han

0.1.0 (2026-07-19)

  • Initial public release.
  • Add one ROS 1 and ROS 2 source package for ATI Ethernet Net F/T RDT sensors.
  • Add reconnect, diagnostics, software bias, loopback integration tests, and a bounded non-biasing hardware check.
  • Validate source builds for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling in locked maintainer environments.
  • Contributors: Xudong Han

Launch files

  • launch/netft.launch
      • sensor_ip [default: 192.168.1.1]
      • sensor_port [default: 49152]
      • http_port [default: 80]
      • use_sensor_calibration [default: true]
      • configuration_connect_timeout [default: 0.5]
      • configuration_timeout [default: 1.0]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged netft_driver at Robotics Stack Exchange

Package symbol

netft_driver package from ros-netft repo

netft_driver

ROS Distro
rolling

Package Summary

Version 0.3.2
License Apache-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/netft/ros-netft.git
VCS Type git
VCS Version main
Last Updated 2026-08-04
Dev Status MAINTAINED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Native ROS 1, ROS 2, and ros2_control driver for ATI Net F/T RDT sensors.

Additional Links

Maintainers

  • Xudong Han

Authors

  • Xudong Han

ROS Net F/T Driver

CI Release CodeQL Coverage ROS License

netft_driver is a native ROS driver for ATI Ethernet Net F/T and Ethernet Axia force/torque sensors. It supports a standalone ROS 1 or ROS 2 node and a ROS 2 ros2_control sensor hardware plugin.

Features

  • Publishes calibrated geometry_msgs/WrenchStamped data in N and Nm.
  • Reports connection, sequence, receive-rate, and device-status diagnostics.
  • Provides an explicit software-bias service.
  • Integrates with the standard ROS 2 force-torque sensor broadcaster.
  • Carries a reviewed private snapshot of the netft-cpp acquisition core.

Supported ROS distributions

ROS distribution Standalone driver ros2_control plugin Support policy
ROS 2 Lyrical Yes Yes Supported
ROS 2 Kilted Yes Yes Supported
ROS 2 Jazzy Yes Yes Supported
ROS 2 Humble Yes Yes Compatibility
ROS 2 Rolling Yes Yes Development
ROS 1 Noetic* Yes N/A Legacy source support

* ROS 1 Noetic is end-of-life and supported from source only.

Installation

ROS 2

Replace lyrical with another supported ROS 2 distribution when required.

source /opt/ros/lyrical/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select netft_driver
source install/setup.bash

ROS 1 Noetic

source /opt/ros/noetic/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep update --include-eol-distros
rosdep install --from-paths src --ignore-src -r -y
catkin_make
source devel/setup.bash

See the installation guide for prerequisites and package availability.

Quick start

ATI RDT permits one UDP client. Stop other RDT clients before starting the driver. The examples use 192.168.1.1, ATI’s factory-default static address; replace it with the address assigned to your sensor.

Standalone driver

ROS 2:

ros2 launch netft_driver netft.launch.py sensor_ip:=192.168.1.1
ros2 topic echo --once /netft/wrench

ROS 1:

roslaunch netft_driver netft.launch sensor_ip:=192.168.1.1
rostopic echo -n 1 /netft/wrench

The default bias service is /netft/bias. Bias changes the measurement zero; call it only when the sensor and connected mechanism are in a safe state.

ros2_control

The plugin class is netft_driver/NetFTHardwareInterface. Include the installed Xacro macro in the robot description managed by your controller manager:

```xml

<xacro:netft_ros2_control name=”wrist_netft_hardware”

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package netft_driver

Forthcoming

  • Update the private netft-cpp core snapshot to v0.3.3, including lifecycle-safe client destruction during concurrent worker shutdown.

0.3.2 (2026-07-29)

  • Update the private netft-cpp core snapshot to v0.3.1, including the fix that prevents fail-stop clients from receiving stalled or backward FT-sequence samples.
  • Retain raw wrench counts in core samples while keeping ROS output in SI units.
  • Use the upstream portable XML parser and remove the obsolete local fallback.

0.3.1 (2026-07-23)

  • Update the private netft-cpp core snapshot to v0.1.3 so repeated signal interruptions cannot extend the configured UDP receive timeout.

0.3.0 (2026-07-22)

  • Add a private netft-cpp v0.1.2 core snapshot and remove the duplicate original runtime.
  • Read sensor-reported calibration by default and convert its native force and torque units to N and Nm.
  • Add the explicit use_sensor_calibration=false manual override, with counts/N and counts/Nm inputs.
  • Add HTTP configuration port and timeout parameters for sensor calibration discovery.
  • Support Noetic's GCC 9 standard library with an Apache-2.0 XML parser compatibility translation unit.
  • Keep the ros2_control plugin ABI private by hiding core and implementation symbols.
  • License the complete repository under Apache-2.0, matching the upstream core.

0.2.2 (2026-07-22)

  • Replace the project-specific sensor address in defaults and examples with ATI's factory-default 192.168.1.1 address.
  • Keep tests focused on executable and machine-readable contracts instead of human-facing documentation, help, error, log, and diagnostic wording.
  • Normalize generated release notes and remove the obsolete source-only availability notice.
  • Contributors: Xudong Han

0.2.1 (2026-07-22)

  • Fix ROS version detection when isolated build environments do not expose ROS_VERSION to CMake.
  • Declare the ros_environment build dependency and validate ROS 1 and ROS 2 configuration with ROS_VERSION unset.
  • Increase the ros2_control smoke-test timeout margin so transient CI scheduler stalls do not fault the healthy sensor in the two-sensor isolation scenario.
  • Contributors: Xudong Han

0.2.0 (2026-07-21)

  • Replace the sensor runtime with one ROS-neutral C++17 transport, protocol, status, and recovery core.
  • Add the netft_driver/NetFTHardwareInterface ros2_control sensor plugin, six standard force-torque state interfaces, reusable Xacro, and broadcaster configuration.
  • Add fail-stop fault handling, lifecycle recovery, instance-local diagnostics and software bias, and multi-sensor isolation.
  • Install native netft_node and netft_check executables for ROS 1 and ROS 2 while preserving the standalone ROS interfaces.
  • Validate native builds and loopback integration for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling.
  • Contributors: Xudong Han

0.1.0 (2026-07-19)

  • Initial public release.
  • Add one ROS 1 and ROS 2 source package for ATI Ethernet Net F/T RDT sensors.
  • Add reconnect, diagnostics, software bias, loopback integration tests, and a bounded non-biasing hardware check.
  • Validate source builds for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling in locked maintainer environments.
  • Contributors: Xudong Han

Launch files

  • launch/netft.launch
      • sensor_ip [default: 192.168.1.1]
      • sensor_port [default: 49152]
      • http_port [default: 80]
      • use_sensor_calibration [default: true]
      • configuration_connect_timeout [default: 0.5]
      • configuration_timeout [default: 1.0]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged netft_driver at Robotics Stack Exchange

No version for distro ardent showing rolling. Known supported distros are highlighted in the buttons above.
Package symbol

netft_driver package from ros-netft repo

netft_driver

ROS Distro
rolling

Package Summary

Version 0.3.2
License Apache-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/netft/ros-netft.git
VCS Type git
VCS Version main
Last Updated 2026-08-04
Dev Status MAINTAINED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Native ROS 1, ROS 2, and ros2_control driver for ATI Net F/T RDT sensors.

Additional Links

Maintainers

  • Xudong Han

Authors

  • Xudong Han

ROS Net F/T Driver

CI Release CodeQL Coverage ROS License

netft_driver is a native ROS driver for ATI Ethernet Net F/T and Ethernet Axia force/torque sensors. It supports a standalone ROS 1 or ROS 2 node and a ROS 2 ros2_control sensor hardware plugin.

Features

  • Publishes calibrated geometry_msgs/WrenchStamped data in N and Nm.
  • Reports connection, sequence, receive-rate, and device-status diagnostics.
  • Provides an explicit software-bias service.
  • Integrates with the standard ROS 2 force-torque sensor broadcaster.
  • Carries a reviewed private snapshot of the netft-cpp acquisition core.

Supported ROS distributions

ROS distribution Standalone driver ros2_control plugin Support policy
ROS 2 Lyrical Yes Yes Supported
ROS 2 Kilted Yes Yes Supported
ROS 2 Jazzy Yes Yes Supported
ROS 2 Humble Yes Yes Compatibility
ROS 2 Rolling Yes Yes Development
ROS 1 Noetic* Yes N/A Legacy source support

* ROS 1 Noetic is end-of-life and supported from source only.

Installation

ROS 2

Replace lyrical with another supported ROS 2 distribution when required.

source /opt/ros/lyrical/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select netft_driver
source install/setup.bash

ROS 1 Noetic

source /opt/ros/noetic/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep update --include-eol-distros
rosdep install --from-paths src --ignore-src -r -y
catkin_make
source devel/setup.bash

See the installation guide for prerequisites and package availability.

Quick start

ATI RDT permits one UDP client. Stop other RDT clients before starting the driver. The examples use 192.168.1.1, ATI’s factory-default static address; replace it with the address assigned to your sensor.

Standalone driver

ROS 2:

ros2 launch netft_driver netft.launch.py sensor_ip:=192.168.1.1
ros2 topic echo --once /netft/wrench

ROS 1:

roslaunch netft_driver netft.launch sensor_ip:=192.168.1.1
rostopic echo -n 1 /netft/wrench

The default bias service is /netft/bias. Bias changes the measurement zero; call it only when the sensor and connected mechanism are in a safe state.

ros2_control

The plugin class is netft_driver/NetFTHardwareInterface. Include the installed Xacro macro in the robot description managed by your controller manager:

```xml

<xacro:netft_ros2_control name=”wrist_netft_hardware”

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package netft_driver

Forthcoming

  • Update the private netft-cpp core snapshot to v0.3.3, including lifecycle-safe client destruction during concurrent worker shutdown.

0.3.2 (2026-07-29)

  • Update the private netft-cpp core snapshot to v0.3.1, including the fix that prevents fail-stop clients from receiving stalled or backward FT-sequence samples.
  • Retain raw wrench counts in core samples while keeping ROS output in SI units.
  • Use the upstream portable XML parser and remove the obsolete local fallback.

0.3.1 (2026-07-23)

  • Update the private netft-cpp core snapshot to v0.1.3 so repeated signal interruptions cannot extend the configured UDP receive timeout.

0.3.0 (2026-07-22)

  • Add a private netft-cpp v0.1.2 core snapshot and remove the duplicate original runtime.
  • Read sensor-reported calibration by default and convert its native force and torque units to N and Nm.
  • Add the explicit use_sensor_calibration=false manual override, with counts/N and counts/Nm inputs.
  • Add HTTP configuration port and timeout parameters for sensor calibration discovery.
  • Support Noetic's GCC 9 standard library with an Apache-2.0 XML parser compatibility translation unit.
  • Keep the ros2_control plugin ABI private by hiding core and implementation symbols.
  • License the complete repository under Apache-2.0, matching the upstream core.

0.2.2 (2026-07-22)

  • Replace the project-specific sensor address in defaults and examples with ATI's factory-default 192.168.1.1 address.
  • Keep tests focused on executable and machine-readable contracts instead of human-facing documentation, help, error, log, and diagnostic wording.
  • Normalize generated release notes and remove the obsolete source-only availability notice.
  • Contributors: Xudong Han

0.2.1 (2026-07-22)

  • Fix ROS version detection when isolated build environments do not expose ROS_VERSION to CMake.
  • Declare the ros_environment build dependency and validate ROS 1 and ROS 2 configuration with ROS_VERSION unset.
  • Increase the ros2_control smoke-test timeout margin so transient CI scheduler stalls do not fault the healthy sensor in the two-sensor isolation scenario.
  • Contributors: Xudong Han

0.2.0 (2026-07-21)

  • Replace the sensor runtime with one ROS-neutral C++17 transport, protocol, status, and recovery core.
  • Add the netft_driver/NetFTHardwareInterface ros2_control sensor plugin, six standard force-torque state interfaces, reusable Xacro, and broadcaster configuration.
  • Add fail-stop fault handling, lifecycle recovery, instance-local diagnostics and software bias, and multi-sensor isolation.
  • Install native netft_node and netft_check executables for ROS 1 and ROS 2 while preserving the standalone ROS interfaces.
  • Validate native builds and loopback integration for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling.
  • Contributors: Xudong Han

0.1.0 (2026-07-19)

  • Initial public release.
  • Add one ROS 1 and ROS 2 source package for ATI Ethernet Net F/T RDT sensors.
  • Add reconnect, diagnostics, software bias, loopback integration tests, and a bounded non-biasing hardware check.
  • Validate source builds for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling in locked maintainer environments.
  • Contributors: Xudong Han

Launch files

  • launch/netft.launch
      • sensor_ip [default: 192.168.1.1]
      • sensor_port [default: 49152]
      • http_port [default: 80]
      • use_sensor_calibration [default: true]
      • configuration_connect_timeout [default: 0.5]
      • configuration_timeout [default: 1.0]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged netft_driver at Robotics Stack Exchange

No version for distro bouncy showing rolling. Known supported distros are highlighted in the buttons above.
Package symbol

netft_driver package from ros-netft repo

netft_driver

ROS Distro
rolling

Package Summary

Version 0.3.2
License Apache-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/netft/ros-netft.git
VCS Type git
VCS Version main
Last Updated 2026-08-04
Dev Status MAINTAINED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Native ROS 1, ROS 2, and ros2_control driver for ATI Net F/T RDT sensors.

Additional Links

Maintainers

  • Xudong Han

Authors

  • Xudong Han

ROS Net F/T Driver

CI Release CodeQL Coverage ROS License

netft_driver is a native ROS driver for ATI Ethernet Net F/T and Ethernet Axia force/torque sensors. It supports a standalone ROS 1 or ROS 2 node and a ROS 2 ros2_control sensor hardware plugin.

Features

  • Publishes calibrated geometry_msgs/WrenchStamped data in N and Nm.
  • Reports connection, sequence, receive-rate, and device-status diagnostics.
  • Provides an explicit software-bias service.
  • Integrates with the standard ROS 2 force-torque sensor broadcaster.
  • Carries a reviewed private snapshot of the netft-cpp acquisition core.

Supported ROS distributions

ROS distribution Standalone driver ros2_control plugin Support policy
ROS 2 Lyrical Yes Yes Supported
ROS 2 Kilted Yes Yes Supported
ROS 2 Jazzy Yes Yes Supported
ROS 2 Humble Yes Yes Compatibility
ROS 2 Rolling Yes Yes Development
ROS 1 Noetic* Yes N/A Legacy source support

* ROS 1 Noetic is end-of-life and supported from source only.

Installation

ROS 2

Replace lyrical with another supported ROS 2 distribution when required.

source /opt/ros/lyrical/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select netft_driver
source install/setup.bash

ROS 1 Noetic

source /opt/ros/noetic/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep update --include-eol-distros
rosdep install --from-paths src --ignore-src -r -y
catkin_make
source devel/setup.bash

See the installation guide for prerequisites and package availability.

Quick start

ATI RDT permits one UDP client. Stop other RDT clients before starting the driver. The examples use 192.168.1.1, ATI’s factory-default static address; replace it with the address assigned to your sensor.

Standalone driver

ROS 2:

ros2 launch netft_driver netft.launch.py sensor_ip:=192.168.1.1
ros2 topic echo --once /netft/wrench

ROS 1:

roslaunch netft_driver netft.launch sensor_ip:=192.168.1.1
rostopic echo -n 1 /netft/wrench

The default bias service is /netft/bias. Bias changes the measurement zero; call it only when the sensor and connected mechanism are in a safe state.

ros2_control

The plugin class is netft_driver/NetFTHardwareInterface. Include the installed Xacro macro in the robot description managed by your controller manager:

```xml

<xacro:netft_ros2_control name=”wrist_netft_hardware”

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package netft_driver

Forthcoming

  • Update the private netft-cpp core snapshot to v0.3.3, including lifecycle-safe client destruction during concurrent worker shutdown.

0.3.2 (2026-07-29)

  • Update the private netft-cpp core snapshot to v0.3.1, including the fix that prevents fail-stop clients from receiving stalled or backward FT-sequence samples.
  • Retain raw wrench counts in core samples while keeping ROS output in SI units.
  • Use the upstream portable XML parser and remove the obsolete local fallback.

0.3.1 (2026-07-23)

  • Update the private netft-cpp core snapshot to v0.1.3 so repeated signal interruptions cannot extend the configured UDP receive timeout.

0.3.0 (2026-07-22)

  • Add a private netft-cpp v0.1.2 core snapshot and remove the duplicate original runtime.
  • Read sensor-reported calibration by default and convert its native force and torque units to N and Nm.
  • Add the explicit use_sensor_calibration=false manual override, with counts/N and counts/Nm inputs.
  • Add HTTP configuration port and timeout parameters for sensor calibration discovery.
  • Support Noetic's GCC 9 standard library with an Apache-2.0 XML parser compatibility translation unit.
  • Keep the ros2_control plugin ABI private by hiding core and implementation symbols.
  • License the complete repository under Apache-2.0, matching the upstream core.

0.2.2 (2026-07-22)

  • Replace the project-specific sensor address in defaults and examples with ATI's factory-default 192.168.1.1 address.
  • Keep tests focused on executable and machine-readable contracts instead of human-facing documentation, help, error, log, and diagnostic wording.
  • Normalize generated release notes and remove the obsolete source-only availability notice.
  • Contributors: Xudong Han

0.2.1 (2026-07-22)

  • Fix ROS version detection when isolated build environments do not expose ROS_VERSION to CMake.
  • Declare the ros_environment build dependency and validate ROS 1 and ROS 2 configuration with ROS_VERSION unset.
  • Increase the ros2_control smoke-test timeout margin so transient CI scheduler stalls do not fault the healthy sensor in the two-sensor isolation scenario.
  • Contributors: Xudong Han

0.2.0 (2026-07-21)

  • Replace the sensor runtime with one ROS-neutral C++17 transport, protocol, status, and recovery core.
  • Add the netft_driver/NetFTHardwareInterface ros2_control sensor plugin, six standard force-torque state interfaces, reusable Xacro, and broadcaster configuration.
  • Add fail-stop fault handling, lifecycle recovery, instance-local diagnostics and software bias, and multi-sensor isolation.
  • Install native netft_node and netft_check executables for ROS 1 and ROS 2 while preserving the standalone ROS interfaces.
  • Validate native builds and loopback integration for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling.
  • Contributors: Xudong Han

0.1.0 (2026-07-19)

  • Initial public release.
  • Add one ROS 1 and ROS 2 source package for ATI Ethernet Net F/T RDT sensors.
  • Add reconnect, diagnostics, software bias, loopback integration tests, and a bounded non-biasing hardware check.
  • Validate source builds for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling in locked maintainer environments.
  • Contributors: Xudong Han

Launch files

  • launch/netft.launch
      • sensor_ip [default: 192.168.1.1]
      • sensor_port [default: 49152]
      • http_port [default: 80]
      • use_sensor_calibration [default: true]
      • configuration_connect_timeout [default: 0.5]
      • configuration_timeout [default: 1.0]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged netft_driver at Robotics Stack Exchange

No version for distro crystal showing rolling. Known supported distros are highlighted in the buttons above.
Package symbol

netft_driver package from ros-netft repo

netft_driver

ROS Distro
rolling

Package Summary

Version 0.3.2
License Apache-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/netft/ros-netft.git
VCS Type git
VCS Version main
Last Updated 2026-08-04
Dev Status MAINTAINED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Native ROS 1, ROS 2, and ros2_control driver for ATI Net F/T RDT sensors.

Additional Links

Maintainers

  • Xudong Han

Authors

  • Xudong Han

ROS Net F/T Driver

CI Release CodeQL Coverage ROS License

netft_driver is a native ROS driver for ATI Ethernet Net F/T and Ethernet Axia force/torque sensors. It supports a standalone ROS 1 or ROS 2 node and a ROS 2 ros2_control sensor hardware plugin.

Features

  • Publishes calibrated geometry_msgs/WrenchStamped data in N and Nm.
  • Reports connection, sequence, receive-rate, and device-status diagnostics.
  • Provides an explicit software-bias service.
  • Integrates with the standard ROS 2 force-torque sensor broadcaster.
  • Carries a reviewed private snapshot of the netft-cpp acquisition core.

Supported ROS distributions

ROS distribution Standalone driver ros2_control plugin Support policy
ROS 2 Lyrical Yes Yes Supported
ROS 2 Kilted Yes Yes Supported
ROS 2 Jazzy Yes Yes Supported
ROS 2 Humble Yes Yes Compatibility
ROS 2 Rolling Yes Yes Development
ROS 1 Noetic* Yes N/A Legacy source support

* ROS 1 Noetic is end-of-life and supported from source only.

Installation

ROS 2

Replace lyrical with another supported ROS 2 distribution when required.

source /opt/ros/lyrical/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select netft_driver
source install/setup.bash

ROS 1 Noetic

source /opt/ros/noetic/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep update --include-eol-distros
rosdep install --from-paths src --ignore-src -r -y
catkin_make
source devel/setup.bash

See the installation guide for prerequisites and package availability.

Quick start

ATI RDT permits one UDP client. Stop other RDT clients before starting the driver. The examples use 192.168.1.1, ATI’s factory-default static address; replace it with the address assigned to your sensor.

Standalone driver

ROS 2:

ros2 launch netft_driver netft.launch.py sensor_ip:=192.168.1.1
ros2 topic echo --once /netft/wrench

ROS 1:

roslaunch netft_driver netft.launch sensor_ip:=192.168.1.1
rostopic echo -n 1 /netft/wrench

The default bias service is /netft/bias. Bias changes the measurement zero; call it only when the sensor and connected mechanism are in a safe state.

ros2_control

The plugin class is netft_driver/NetFTHardwareInterface. Include the installed Xacro macro in the robot description managed by your controller manager:

```xml

<xacro:netft_ros2_control name=”wrist_netft_hardware”

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package netft_driver

Forthcoming

  • Update the private netft-cpp core snapshot to v0.3.3, including lifecycle-safe client destruction during concurrent worker shutdown.

0.3.2 (2026-07-29)

  • Update the private netft-cpp core snapshot to v0.3.1, including the fix that prevents fail-stop clients from receiving stalled or backward FT-sequence samples.
  • Retain raw wrench counts in core samples while keeping ROS output in SI units.
  • Use the upstream portable XML parser and remove the obsolete local fallback.

0.3.1 (2026-07-23)

  • Update the private netft-cpp core snapshot to v0.1.3 so repeated signal interruptions cannot extend the configured UDP receive timeout.

0.3.0 (2026-07-22)

  • Add a private netft-cpp v0.1.2 core snapshot and remove the duplicate original runtime.
  • Read sensor-reported calibration by default and convert its native force and torque units to N and Nm.
  • Add the explicit use_sensor_calibration=false manual override, with counts/N and counts/Nm inputs.
  • Add HTTP configuration port and timeout parameters for sensor calibration discovery.
  • Support Noetic's GCC 9 standard library with an Apache-2.0 XML parser compatibility translation unit.
  • Keep the ros2_control plugin ABI private by hiding core and implementation symbols.
  • License the complete repository under Apache-2.0, matching the upstream core.

0.2.2 (2026-07-22)

  • Replace the project-specific sensor address in defaults and examples with ATI's factory-default 192.168.1.1 address.
  • Keep tests focused on executable and machine-readable contracts instead of human-facing documentation, help, error, log, and diagnostic wording.
  • Normalize generated release notes and remove the obsolete source-only availability notice.
  • Contributors: Xudong Han

0.2.1 (2026-07-22)

  • Fix ROS version detection when isolated build environments do not expose ROS_VERSION to CMake.
  • Declare the ros_environment build dependency and validate ROS 1 and ROS 2 configuration with ROS_VERSION unset.
  • Increase the ros2_control smoke-test timeout margin so transient CI scheduler stalls do not fault the healthy sensor in the two-sensor isolation scenario.
  • Contributors: Xudong Han

0.2.0 (2026-07-21)

  • Replace the sensor runtime with one ROS-neutral C++17 transport, protocol, status, and recovery core.
  • Add the netft_driver/NetFTHardwareInterface ros2_control sensor plugin, six standard force-torque state interfaces, reusable Xacro, and broadcaster configuration.
  • Add fail-stop fault handling, lifecycle recovery, instance-local diagnostics and software bias, and multi-sensor isolation.
  • Install native netft_node and netft_check executables for ROS 1 and ROS 2 while preserving the standalone ROS interfaces.
  • Validate native builds and loopback integration for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling.
  • Contributors: Xudong Han

0.1.0 (2026-07-19)

  • Initial public release.
  • Add one ROS 1 and ROS 2 source package for ATI Ethernet Net F/T RDT sensors.
  • Add reconnect, diagnostics, software bias, loopback integration tests, and a bounded non-biasing hardware check.
  • Validate source builds for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling in locked maintainer environments.
  • Contributors: Xudong Han

Launch files

  • launch/netft.launch
      • sensor_ip [default: 192.168.1.1]
      • sensor_port [default: 49152]
      • http_port [default: 80]
      • use_sensor_calibration [default: true]
      • configuration_connect_timeout [default: 0.5]
      • configuration_timeout [default: 1.0]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged netft_driver at Robotics Stack Exchange

No version for distro eloquent showing rolling. Known supported distros are highlighted in the buttons above.
Package symbol

netft_driver package from ros-netft repo

netft_driver

ROS Distro
rolling

Package Summary

Version 0.3.2
License Apache-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/netft/ros-netft.git
VCS Type git
VCS Version main
Last Updated 2026-08-04
Dev Status MAINTAINED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Native ROS 1, ROS 2, and ros2_control driver for ATI Net F/T RDT sensors.

Additional Links

Maintainers

  • Xudong Han

Authors

  • Xudong Han

ROS Net F/T Driver

CI Release CodeQL Coverage ROS License

netft_driver is a native ROS driver for ATI Ethernet Net F/T and Ethernet Axia force/torque sensors. It supports a standalone ROS 1 or ROS 2 node and a ROS 2 ros2_control sensor hardware plugin.

Features

  • Publishes calibrated geometry_msgs/WrenchStamped data in N and Nm.
  • Reports connection, sequence, receive-rate, and device-status diagnostics.
  • Provides an explicit software-bias service.
  • Integrates with the standard ROS 2 force-torque sensor broadcaster.
  • Carries a reviewed private snapshot of the netft-cpp acquisition core.

Supported ROS distributions

ROS distribution Standalone driver ros2_control plugin Support policy
ROS 2 Lyrical Yes Yes Supported
ROS 2 Kilted Yes Yes Supported
ROS 2 Jazzy Yes Yes Supported
ROS 2 Humble Yes Yes Compatibility
ROS 2 Rolling Yes Yes Development
ROS 1 Noetic* Yes N/A Legacy source support

* ROS 1 Noetic is end-of-life and supported from source only.

Installation

ROS 2

Replace lyrical with another supported ROS 2 distribution when required.

source /opt/ros/lyrical/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select netft_driver
source install/setup.bash

ROS 1 Noetic

source /opt/ros/noetic/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep update --include-eol-distros
rosdep install --from-paths src --ignore-src -r -y
catkin_make
source devel/setup.bash

See the installation guide for prerequisites and package availability.

Quick start

ATI RDT permits one UDP client. Stop other RDT clients before starting the driver. The examples use 192.168.1.1, ATI’s factory-default static address; replace it with the address assigned to your sensor.

Standalone driver

ROS 2:

ros2 launch netft_driver netft.launch.py sensor_ip:=192.168.1.1
ros2 topic echo --once /netft/wrench

ROS 1:

roslaunch netft_driver netft.launch sensor_ip:=192.168.1.1
rostopic echo -n 1 /netft/wrench

The default bias service is /netft/bias. Bias changes the measurement zero; call it only when the sensor and connected mechanism are in a safe state.

ros2_control

The plugin class is netft_driver/NetFTHardwareInterface. Include the installed Xacro macro in the robot description managed by your controller manager:

```xml

<xacro:netft_ros2_control name=”wrist_netft_hardware”

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package netft_driver

Forthcoming

  • Update the private netft-cpp core snapshot to v0.3.3, including lifecycle-safe client destruction during concurrent worker shutdown.

0.3.2 (2026-07-29)

  • Update the private netft-cpp core snapshot to v0.3.1, including the fix that prevents fail-stop clients from receiving stalled or backward FT-sequence samples.
  • Retain raw wrench counts in core samples while keeping ROS output in SI units.
  • Use the upstream portable XML parser and remove the obsolete local fallback.

0.3.1 (2026-07-23)

  • Update the private netft-cpp core snapshot to v0.1.3 so repeated signal interruptions cannot extend the configured UDP receive timeout.

0.3.0 (2026-07-22)

  • Add a private netft-cpp v0.1.2 core snapshot and remove the duplicate original runtime.
  • Read sensor-reported calibration by default and convert its native force and torque units to N and Nm.
  • Add the explicit use_sensor_calibration=false manual override, with counts/N and counts/Nm inputs.
  • Add HTTP configuration port and timeout parameters for sensor calibration discovery.
  • Support Noetic's GCC 9 standard library with an Apache-2.0 XML parser compatibility translation unit.
  • Keep the ros2_control plugin ABI private by hiding core and implementation symbols.
  • License the complete repository under Apache-2.0, matching the upstream core.

0.2.2 (2026-07-22)

  • Replace the project-specific sensor address in defaults and examples with ATI's factory-default 192.168.1.1 address.
  • Keep tests focused on executable and machine-readable contracts instead of human-facing documentation, help, error, log, and diagnostic wording.
  • Normalize generated release notes and remove the obsolete source-only availability notice.
  • Contributors: Xudong Han

0.2.1 (2026-07-22)

  • Fix ROS version detection when isolated build environments do not expose ROS_VERSION to CMake.
  • Declare the ros_environment build dependency and validate ROS 1 and ROS 2 configuration with ROS_VERSION unset.
  • Increase the ros2_control smoke-test timeout margin so transient CI scheduler stalls do not fault the healthy sensor in the two-sensor isolation scenario.
  • Contributors: Xudong Han

0.2.0 (2026-07-21)

  • Replace the sensor runtime with one ROS-neutral C++17 transport, protocol, status, and recovery core.
  • Add the netft_driver/NetFTHardwareInterface ros2_control sensor plugin, six standard force-torque state interfaces, reusable Xacro, and broadcaster configuration.
  • Add fail-stop fault handling, lifecycle recovery, instance-local diagnostics and software bias, and multi-sensor isolation.
  • Install native netft_node and netft_check executables for ROS 1 and ROS 2 while preserving the standalone ROS interfaces.
  • Validate native builds and loopback integration for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling.
  • Contributors: Xudong Han

0.1.0 (2026-07-19)

  • Initial public release.
  • Add one ROS 1 and ROS 2 source package for ATI Ethernet Net F/T RDT sensors.
  • Add reconnect, diagnostics, software bias, loopback integration tests, and a bounded non-biasing hardware check.
  • Validate source builds for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling in locked maintainer environments.
  • Contributors: Xudong Han

Launch files

  • launch/netft.launch
      • sensor_ip [default: 192.168.1.1]
      • sensor_port [default: 49152]
      • http_port [default: 80]
      • use_sensor_calibration [default: true]
      • configuration_connect_timeout [default: 0.5]
      • configuration_timeout [default: 1.0]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged netft_driver at Robotics Stack Exchange

No version for distro dashing showing rolling. Known supported distros are highlighted in the buttons above.
Package symbol

netft_driver package from ros-netft repo

netft_driver

ROS Distro
rolling

Package Summary

Version 0.3.2
License Apache-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/netft/ros-netft.git
VCS Type git
VCS Version main
Last Updated 2026-08-04
Dev Status MAINTAINED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Native ROS 1, ROS 2, and ros2_control driver for ATI Net F/T RDT sensors.

Additional Links

Maintainers

  • Xudong Han

Authors

  • Xudong Han

ROS Net F/T Driver

CI Release CodeQL Coverage ROS License

netft_driver is a native ROS driver for ATI Ethernet Net F/T and Ethernet Axia force/torque sensors. It supports a standalone ROS 1 or ROS 2 node and a ROS 2 ros2_control sensor hardware plugin.

Features

  • Publishes calibrated geometry_msgs/WrenchStamped data in N and Nm.
  • Reports connection, sequence, receive-rate, and device-status diagnostics.
  • Provides an explicit software-bias service.
  • Integrates with the standard ROS 2 force-torque sensor broadcaster.
  • Carries a reviewed private snapshot of the netft-cpp acquisition core.

Supported ROS distributions

ROS distribution Standalone driver ros2_control plugin Support policy
ROS 2 Lyrical Yes Yes Supported
ROS 2 Kilted Yes Yes Supported
ROS 2 Jazzy Yes Yes Supported
ROS 2 Humble Yes Yes Compatibility
ROS 2 Rolling Yes Yes Development
ROS 1 Noetic* Yes N/A Legacy source support

* ROS 1 Noetic is end-of-life and supported from source only.

Installation

ROS 2

Replace lyrical with another supported ROS 2 distribution when required.

source /opt/ros/lyrical/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select netft_driver
source install/setup.bash

ROS 1 Noetic

source /opt/ros/noetic/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep update --include-eol-distros
rosdep install --from-paths src --ignore-src -r -y
catkin_make
source devel/setup.bash

See the installation guide for prerequisites and package availability.

Quick start

ATI RDT permits one UDP client. Stop other RDT clients before starting the driver. The examples use 192.168.1.1, ATI’s factory-default static address; replace it with the address assigned to your sensor.

Standalone driver

ROS 2:

ros2 launch netft_driver netft.launch.py sensor_ip:=192.168.1.1
ros2 topic echo --once /netft/wrench

ROS 1:

roslaunch netft_driver netft.launch sensor_ip:=192.168.1.1
rostopic echo -n 1 /netft/wrench

The default bias service is /netft/bias. Bias changes the measurement zero; call it only when the sensor and connected mechanism are in a safe state.

ros2_control

The plugin class is netft_driver/NetFTHardwareInterface. Include the installed Xacro macro in the robot description managed by your controller manager:

```xml

<xacro:netft_ros2_control name=”wrist_netft_hardware”

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package netft_driver

Forthcoming

  • Update the private netft-cpp core snapshot to v0.3.3, including lifecycle-safe client destruction during concurrent worker shutdown.

0.3.2 (2026-07-29)

  • Update the private netft-cpp core snapshot to v0.3.1, including the fix that prevents fail-stop clients from receiving stalled or backward FT-sequence samples.
  • Retain raw wrench counts in core samples while keeping ROS output in SI units.
  • Use the upstream portable XML parser and remove the obsolete local fallback.

0.3.1 (2026-07-23)

  • Update the private netft-cpp core snapshot to v0.1.3 so repeated signal interruptions cannot extend the configured UDP receive timeout.

0.3.0 (2026-07-22)

  • Add a private netft-cpp v0.1.2 core snapshot and remove the duplicate original runtime.
  • Read sensor-reported calibration by default and convert its native force and torque units to N and Nm.
  • Add the explicit use_sensor_calibration=false manual override, with counts/N and counts/Nm inputs.
  • Add HTTP configuration port and timeout parameters for sensor calibration discovery.
  • Support Noetic's GCC 9 standard library with an Apache-2.0 XML parser compatibility translation unit.
  • Keep the ros2_control plugin ABI private by hiding core and implementation symbols.
  • License the complete repository under Apache-2.0, matching the upstream core.

0.2.2 (2026-07-22)

  • Replace the project-specific sensor address in defaults and examples with ATI's factory-default 192.168.1.1 address.
  • Keep tests focused on executable and machine-readable contracts instead of human-facing documentation, help, error, log, and diagnostic wording.
  • Normalize generated release notes and remove the obsolete source-only availability notice.
  • Contributors: Xudong Han

0.2.1 (2026-07-22)

  • Fix ROS version detection when isolated build environments do not expose ROS_VERSION to CMake.
  • Declare the ros_environment build dependency and validate ROS 1 and ROS 2 configuration with ROS_VERSION unset.
  • Increase the ros2_control smoke-test timeout margin so transient CI scheduler stalls do not fault the healthy sensor in the two-sensor isolation scenario.
  • Contributors: Xudong Han

0.2.0 (2026-07-21)

  • Replace the sensor runtime with one ROS-neutral C++17 transport, protocol, status, and recovery core.
  • Add the netft_driver/NetFTHardwareInterface ros2_control sensor plugin, six standard force-torque state interfaces, reusable Xacro, and broadcaster configuration.
  • Add fail-stop fault handling, lifecycle recovery, instance-local diagnostics and software bias, and multi-sensor isolation.
  • Install native netft_node and netft_check executables for ROS 1 and ROS 2 while preserving the standalone ROS interfaces.
  • Validate native builds and loopback integration for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling.
  • Contributors: Xudong Han

0.1.0 (2026-07-19)

  • Initial public release.
  • Add one ROS 1 and ROS 2 source package for ATI Ethernet Net F/T RDT sensors.
  • Add reconnect, diagnostics, software bias, loopback integration tests, and a bounded non-biasing hardware check.
  • Validate source builds for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling in locked maintainer environments.
  • Contributors: Xudong Han

Launch files

  • launch/netft.launch
      • sensor_ip [default: 192.168.1.1]
      • sensor_port [default: 49152]
      • http_port [default: 80]
      • use_sensor_calibration [default: true]
      • configuration_connect_timeout [default: 0.5]
      • configuration_timeout [default: 1.0]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged netft_driver at Robotics Stack Exchange

No version for distro galactic showing rolling. Known supported distros are highlighted in the buttons above.
Package symbol

netft_driver package from ros-netft repo

netft_driver

ROS Distro
rolling

Package Summary

Version 0.3.2
License Apache-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/netft/ros-netft.git
VCS Type git
VCS Version main
Last Updated 2026-08-04
Dev Status MAINTAINED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Native ROS 1, ROS 2, and ros2_control driver for ATI Net F/T RDT sensors.

Additional Links

Maintainers

  • Xudong Han

Authors

  • Xudong Han

ROS Net F/T Driver

CI Release CodeQL Coverage ROS License

netft_driver is a native ROS driver for ATI Ethernet Net F/T and Ethernet Axia force/torque sensors. It supports a standalone ROS 1 or ROS 2 node and a ROS 2 ros2_control sensor hardware plugin.

Features

  • Publishes calibrated geometry_msgs/WrenchStamped data in N and Nm.
  • Reports connection, sequence, receive-rate, and device-status diagnostics.
  • Provides an explicit software-bias service.
  • Integrates with the standard ROS 2 force-torque sensor broadcaster.
  • Carries a reviewed private snapshot of the netft-cpp acquisition core.

Supported ROS distributions

ROS distribution Standalone driver ros2_control plugin Support policy
ROS 2 Lyrical Yes Yes Supported
ROS 2 Kilted Yes Yes Supported
ROS 2 Jazzy Yes Yes Supported
ROS 2 Humble Yes Yes Compatibility
ROS 2 Rolling Yes Yes Development
ROS 1 Noetic* Yes N/A Legacy source support

* ROS 1 Noetic is end-of-life and supported from source only.

Installation

ROS 2

Replace lyrical with another supported ROS 2 distribution when required.

source /opt/ros/lyrical/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select netft_driver
source install/setup.bash

ROS 1 Noetic

source /opt/ros/noetic/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep update --include-eol-distros
rosdep install --from-paths src --ignore-src -r -y
catkin_make
source devel/setup.bash

See the installation guide for prerequisites and package availability.

Quick start

ATI RDT permits one UDP client. Stop other RDT clients before starting the driver. The examples use 192.168.1.1, ATI’s factory-default static address; replace it with the address assigned to your sensor.

Standalone driver

ROS 2:

ros2 launch netft_driver netft.launch.py sensor_ip:=192.168.1.1
ros2 topic echo --once /netft/wrench

ROS 1:

roslaunch netft_driver netft.launch sensor_ip:=192.168.1.1
rostopic echo -n 1 /netft/wrench

The default bias service is /netft/bias. Bias changes the measurement zero; call it only when the sensor and connected mechanism are in a safe state.

ros2_control

The plugin class is netft_driver/NetFTHardwareInterface. Include the installed Xacro macro in the robot description managed by your controller manager:

```xml

<xacro:netft_ros2_control name=”wrist_netft_hardware”

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package netft_driver

Forthcoming

  • Update the private netft-cpp core snapshot to v0.3.3, including lifecycle-safe client destruction during concurrent worker shutdown.

0.3.2 (2026-07-29)

  • Update the private netft-cpp core snapshot to v0.3.1, including the fix that prevents fail-stop clients from receiving stalled or backward FT-sequence samples.
  • Retain raw wrench counts in core samples while keeping ROS output in SI units.
  • Use the upstream portable XML parser and remove the obsolete local fallback.

0.3.1 (2026-07-23)

  • Update the private netft-cpp core snapshot to v0.1.3 so repeated signal interruptions cannot extend the configured UDP receive timeout.

0.3.0 (2026-07-22)

  • Add a private netft-cpp v0.1.2 core snapshot and remove the duplicate original runtime.
  • Read sensor-reported calibration by default and convert its native force and torque units to N and Nm.
  • Add the explicit use_sensor_calibration=false manual override, with counts/N and counts/Nm inputs.
  • Add HTTP configuration port and timeout parameters for sensor calibration discovery.
  • Support Noetic's GCC 9 standard library with an Apache-2.0 XML parser compatibility translation unit.
  • Keep the ros2_control plugin ABI private by hiding core and implementation symbols.
  • License the complete repository under Apache-2.0, matching the upstream core.

0.2.2 (2026-07-22)

  • Replace the project-specific sensor address in defaults and examples with ATI's factory-default 192.168.1.1 address.
  • Keep tests focused on executable and machine-readable contracts instead of human-facing documentation, help, error, log, and diagnostic wording.
  • Normalize generated release notes and remove the obsolete source-only availability notice.
  • Contributors: Xudong Han

0.2.1 (2026-07-22)

  • Fix ROS version detection when isolated build environments do not expose ROS_VERSION to CMake.
  • Declare the ros_environment build dependency and validate ROS 1 and ROS 2 configuration with ROS_VERSION unset.
  • Increase the ros2_control smoke-test timeout margin so transient CI scheduler stalls do not fault the healthy sensor in the two-sensor isolation scenario.
  • Contributors: Xudong Han

0.2.0 (2026-07-21)

  • Replace the sensor runtime with one ROS-neutral C++17 transport, protocol, status, and recovery core.
  • Add the netft_driver/NetFTHardwareInterface ros2_control sensor plugin, six standard force-torque state interfaces, reusable Xacro, and broadcaster configuration.
  • Add fail-stop fault handling, lifecycle recovery, instance-local diagnostics and software bias, and multi-sensor isolation.
  • Install native netft_node and netft_check executables for ROS 1 and ROS 2 while preserving the standalone ROS interfaces.
  • Validate native builds and loopback integration for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling.
  • Contributors: Xudong Han

0.1.0 (2026-07-19)

  • Initial public release.
  • Add one ROS 1 and ROS 2 source package for ATI Ethernet Net F/T RDT sensors.
  • Add reconnect, diagnostics, software bias, loopback integration tests, and a bounded non-biasing hardware check.
  • Validate source builds for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling in locked maintainer environments.
  • Contributors: Xudong Han

Launch files

  • launch/netft.launch
      • sensor_ip [default: 192.168.1.1]
      • sensor_port [default: 49152]
      • http_port [default: 80]
      • use_sensor_calibration [default: true]
      • configuration_connect_timeout [default: 0.5]
      • configuration_timeout [default: 1.0]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged netft_driver at Robotics Stack Exchange

No version for distro foxy showing rolling. Known supported distros are highlighted in the buttons above.
Package symbol

netft_driver package from ros-netft repo

netft_driver

ROS Distro
rolling

Package Summary

Version 0.3.2
License Apache-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/netft/ros-netft.git
VCS Type git
VCS Version main
Last Updated 2026-08-04
Dev Status MAINTAINED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Native ROS 1, ROS 2, and ros2_control driver for ATI Net F/T RDT sensors.

Additional Links

Maintainers

  • Xudong Han

Authors

  • Xudong Han

ROS Net F/T Driver

CI Release CodeQL Coverage ROS License

netft_driver is a native ROS driver for ATI Ethernet Net F/T and Ethernet Axia force/torque sensors. It supports a standalone ROS 1 or ROS 2 node and a ROS 2 ros2_control sensor hardware plugin.

Features

  • Publishes calibrated geometry_msgs/WrenchStamped data in N and Nm.
  • Reports connection, sequence, receive-rate, and device-status diagnostics.
  • Provides an explicit software-bias service.
  • Integrates with the standard ROS 2 force-torque sensor broadcaster.
  • Carries a reviewed private snapshot of the netft-cpp acquisition core.

Supported ROS distributions

ROS distribution Standalone driver ros2_control plugin Support policy
ROS 2 Lyrical Yes Yes Supported
ROS 2 Kilted Yes Yes Supported
ROS 2 Jazzy Yes Yes Supported
ROS 2 Humble Yes Yes Compatibility
ROS 2 Rolling Yes Yes Development
ROS 1 Noetic* Yes N/A Legacy source support

* ROS 1 Noetic is end-of-life and supported from source only.

Installation

ROS 2

Replace lyrical with another supported ROS 2 distribution when required.

source /opt/ros/lyrical/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select netft_driver
source install/setup.bash

ROS 1 Noetic

source /opt/ros/noetic/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep update --include-eol-distros
rosdep install --from-paths src --ignore-src -r -y
catkin_make
source devel/setup.bash

See the installation guide for prerequisites and package availability.

Quick start

ATI RDT permits one UDP client. Stop other RDT clients before starting the driver. The examples use 192.168.1.1, ATI’s factory-default static address; replace it with the address assigned to your sensor.

Standalone driver

ROS 2:

ros2 launch netft_driver netft.launch.py sensor_ip:=192.168.1.1
ros2 topic echo --once /netft/wrench

ROS 1:

roslaunch netft_driver netft.launch sensor_ip:=192.168.1.1
rostopic echo -n 1 /netft/wrench

The default bias service is /netft/bias. Bias changes the measurement zero; call it only when the sensor and connected mechanism are in a safe state.

ros2_control

The plugin class is netft_driver/NetFTHardwareInterface. Include the installed Xacro macro in the robot description managed by your controller manager:

```xml

<xacro:netft_ros2_control name=”wrist_netft_hardware”

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package netft_driver

Forthcoming

  • Update the private netft-cpp core snapshot to v0.3.3, including lifecycle-safe client destruction during concurrent worker shutdown.

0.3.2 (2026-07-29)

  • Update the private netft-cpp core snapshot to v0.3.1, including the fix that prevents fail-stop clients from receiving stalled or backward FT-sequence samples.
  • Retain raw wrench counts in core samples while keeping ROS output in SI units.
  • Use the upstream portable XML parser and remove the obsolete local fallback.

0.3.1 (2026-07-23)

  • Update the private netft-cpp core snapshot to v0.1.3 so repeated signal interruptions cannot extend the configured UDP receive timeout.

0.3.0 (2026-07-22)

  • Add a private netft-cpp v0.1.2 core snapshot and remove the duplicate original runtime.
  • Read sensor-reported calibration by default and convert its native force and torque units to N and Nm.
  • Add the explicit use_sensor_calibration=false manual override, with counts/N and counts/Nm inputs.
  • Add HTTP configuration port and timeout parameters for sensor calibration discovery.
  • Support Noetic's GCC 9 standard library with an Apache-2.0 XML parser compatibility translation unit.
  • Keep the ros2_control plugin ABI private by hiding core and implementation symbols.
  • License the complete repository under Apache-2.0, matching the upstream core.

0.2.2 (2026-07-22)

  • Replace the project-specific sensor address in defaults and examples with ATI's factory-default 192.168.1.1 address.
  • Keep tests focused on executable and machine-readable contracts instead of human-facing documentation, help, error, log, and diagnostic wording.
  • Normalize generated release notes and remove the obsolete source-only availability notice.
  • Contributors: Xudong Han

0.2.1 (2026-07-22)

  • Fix ROS version detection when isolated build environments do not expose ROS_VERSION to CMake.
  • Declare the ros_environment build dependency and validate ROS 1 and ROS 2 configuration with ROS_VERSION unset.
  • Increase the ros2_control smoke-test timeout margin so transient CI scheduler stalls do not fault the healthy sensor in the two-sensor isolation scenario.
  • Contributors: Xudong Han

0.2.0 (2026-07-21)

  • Replace the sensor runtime with one ROS-neutral C++17 transport, protocol, status, and recovery core.
  • Add the netft_driver/NetFTHardwareInterface ros2_control sensor plugin, six standard force-torque state interfaces, reusable Xacro, and broadcaster configuration.
  • Add fail-stop fault handling, lifecycle recovery, instance-local diagnostics and software bias, and multi-sensor isolation.
  • Install native netft_node and netft_check executables for ROS 1 and ROS 2 while preserving the standalone ROS interfaces.
  • Validate native builds and loopback integration for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling.
  • Contributors: Xudong Han

0.1.0 (2026-07-19)

  • Initial public release.
  • Add one ROS 1 and ROS 2 source package for ATI Ethernet Net F/T RDT sensors.
  • Add reconnect, diagnostics, software bias, loopback integration tests, and a bounded non-biasing hardware check.
  • Validate source builds for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling in locked maintainer environments.
  • Contributors: Xudong Han

Launch files

  • launch/netft.launch
      • sensor_ip [default: 192.168.1.1]
      • sensor_port [default: 49152]
      • http_port [default: 80]
      • use_sensor_calibration [default: true]
      • configuration_connect_timeout [default: 0.5]
      • configuration_timeout [default: 1.0]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged netft_driver at Robotics Stack Exchange

No version for distro iron showing rolling. Known supported distros are highlighted in the buttons above.
Package symbol

netft_driver package from ros-netft repo

netft_driver

ROS Distro
rolling

Package Summary

Version 0.3.2
License Apache-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/netft/ros-netft.git
VCS Type git
VCS Version main
Last Updated 2026-08-04
Dev Status MAINTAINED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Native ROS 1, ROS 2, and ros2_control driver for ATI Net F/T RDT sensors.

Additional Links

Maintainers

  • Xudong Han

Authors

  • Xudong Han

ROS Net F/T Driver

CI Release CodeQL Coverage ROS License

netft_driver is a native ROS driver for ATI Ethernet Net F/T and Ethernet Axia force/torque sensors. It supports a standalone ROS 1 or ROS 2 node and a ROS 2 ros2_control sensor hardware plugin.

Features

  • Publishes calibrated geometry_msgs/WrenchStamped data in N and Nm.
  • Reports connection, sequence, receive-rate, and device-status diagnostics.
  • Provides an explicit software-bias service.
  • Integrates with the standard ROS 2 force-torque sensor broadcaster.
  • Carries a reviewed private snapshot of the netft-cpp acquisition core.

Supported ROS distributions

ROS distribution Standalone driver ros2_control plugin Support policy
ROS 2 Lyrical Yes Yes Supported
ROS 2 Kilted Yes Yes Supported
ROS 2 Jazzy Yes Yes Supported
ROS 2 Humble Yes Yes Compatibility
ROS 2 Rolling Yes Yes Development
ROS 1 Noetic* Yes N/A Legacy source support

* ROS 1 Noetic is end-of-life and supported from source only.

Installation

ROS 2

Replace lyrical with another supported ROS 2 distribution when required.

source /opt/ros/lyrical/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select netft_driver
source install/setup.bash

ROS 1 Noetic

source /opt/ros/noetic/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep update --include-eol-distros
rosdep install --from-paths src --ignore-src -r -y
catkin_make
source devel/setup.bash

See the installation guide for prerequisites and package availability.

Quick start

ATI RDT permits one UDP client. Stop other RDT clients before starting the driver. The examples use 192.168.1.1, ATI’s factory-default static address; replace it with the address assigned to your sensor.

Standalone driver

ROS 2:

ros2 launch netft_driver netft.launch.py sensor_ip:=192.168.1.1
ros2 topic echo --once /netft/wrench

ROS 1:

roslaunch netft_driver netft.launch sensor_ip:=192.168.1.1
rostopic echo -n 1 /netft/wrench

The default bias service is /netft/bias. Bias changes the measurement zero; call it only when the sensor and connected mechanism are in a safe state.

ros2_control

The plugin class is netft_driver/NetFTHardwareInterface. Include the installed Xacro macro in the robot description managed by your controller manager:

```xml

<xacro:netft_ros2_control name=”wrist_netft_hardware”

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package netft_driver

Forthcoming

  • Update the private netft-cpp core snapshot to v0.3.3, including lifecycle-safe client destruction during concurrent worker shutdown.

0.3.2 (2026-07-29)

  • Update the private netft-cpp core snapshot to v0.3.1, including the fix that prevents fail-stop clients from receiving stalled or backward FT-sequence samples.
  • Retain raw wrench counts in core samples while keeping ROS output in SI units.
  • Use the upstream portable XML parser and remove the obsolete local fallback.

0.3.1 (2026-07-23)

  • Update the private netft-cpp core snapshot to v0.1.3 so repeated signal interruptions cannot extend the configured UDP receive timeout.

0.3.0 (2026-07-22)

  • Add a private netft-cpp v0.1.2 core snapshot and remove the duplicate original runtime.
  • Read sensor-reported calibration by default and convert its native force and torque units to N and Nm.
  • Add the explicit use_sensor_calibration=false manual override, with counts/N and counts/Nm inputs.
  • Add HTTP configuration port and timeout parameters for sensor calibration discovery.
  • Support Noetic's GCC 9 standard library with an Apache-2.0 XML parser compatibility translation unit.
  • Keep the ros2_control plugin ABI private by hiding core and implementation symbols.
  • License the complete repository under Apache-2.0, matching the upstream core.

0.2.2 (2026-07-22)

  • Replace the project-specific sensor address in defaults and examples with ATI's factory-default 192.168.1.1 address.
  • Keep tests focused on executable and machine-readable contracts instead of human-facing documentation, help, error, log, and diagnostic wording.
  • Normalize generated release notes and remove the obsolete source-only availability notice.
  • Contributors: Xudong Han

0.2.1 (2026-07-22)

  • Fix ROS version detection when isolated build environments do not expose ROS_VERSION to CMake.
  • Declare the ros_environment build dependency and validate ROS 1 and ROS 2 configuration with ROS_VERSION unset.
  • Increase the ros2_control smoke-test timeout margin so transient CI scheduler stalls do not fault the healthy sensor in the two-sensor isolation scenario.
  • Contributors: Xudong Han

0.2.0 (2026-07-21)

  • Replace the sensor runtime with one ROS-neutral C++17 transport, protocol, status, and recovery core.
  • Add the netft_driver/NetFTHardwareInterface ros2_control sensor plugin, six standard force-torque state interfaces, reusable Xacro, and broadcaster configuration.
  • Add fail-stop fault handling, lifecycle recovery, instance-local diagnostics and software bias, and multi-sensor isolation.
  • Install native netft_node and netft_check executables for ROS 1 and ROS 2 while preserving the standalone ROS interfaces.
  • Validate native builds and loopback integration for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling.
  • Contributors: Xudong Han

0.1.0 (2026-07-19)

  • Initial public release.
  • Add one ROS 1 and ROS 2 source package for ATI Ethernet Net F/T RDT sensors.
  • Add reconnect, diagnostics, software bias, loopback integration tests, and a bounded non-biasing hardware check.
  • Validate source builds for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling in locked maintainer environments.
  • Contributors: Xudong Han

Launch files

  • launch/netft.launch
      • sensor_ip [default: 192.168.1.1]
      • sensor_port [default: 49152]
      • http_port [default: 80]
      • use_sensor_calibration [default: true]
      • configuration_connect_timeout [default: 0.5]
      • configuration_timeout [default: 1.0]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged netft_driver at Robotics Stack Exchange

No version for distro lunar showing rolling. Known supported distros are highlighted in the buttons above.
Package symbol

netft_driver package from ros-netft repo

netft_driver

ROS Distro
rolling

Package Summary

Version 0.3.2
License Apache-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/netft/ros-netft.git
VCS Type git
VCS Version main
Last Updated 2026-08-04
Dev Status MAINTAINED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Native ROS 1, ROS 2, and ros2_control driver for ATI Net F/T RDT sensors.

Additional Links

Maintainers

  • Xudong Han

Authors

  • Xudong Han

ROS Net F/T Driver

CI Release CodeQL Coverage ROS License

netft_driver is a native ROS driver for ATI Ethernet Net F/T and Ethernet Axia force/torque sensors. It supports a standalone ROS 1 or ROS 2 node and a ROS 2 ros2_control sensor hardware plugin.

Features

  • Publishes calibrated geometry_msgs/WrenchStamped data in N and Nm.
  • Reports connection, sequence, receive-rate, and device-status diagnostics.
  • Provides an explicit software-bias service.
  • Integrates with the standard ROS 2 force-torque sensor broadcaster.
  • Carries a reviewed private snapshot of the netft-cpp acquisition core.

Supported ROS distributions

ROS distribution Standalone driver ros2_control plugin Support policy
ROS 2 Lyrical Yes Yes Supported
ROS 2 Kilted Yes Yes Supported
ROS 2 Jazzy Yes Yes Supported
ROS 2 Humble Yes Yes Compatibility
ROS 2 Rolling Yes Yes Development
ROS 1 Noetic* Yes N/A Legacy source support

* ROS 1 Noetic is end-of-life and supported from source only.

Installation

ROS 2

Replace lyrical with another supported ROS 2 distribution when required.

source /opt/ros/lyrical/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select netft_driver
source install/setup.bash

ROS 1 Noetic

source /opt/ros/noetic/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep update --include-eol-distros
rosdep install --from-paths src --ignore-src -r -y
catkin_make
source devel/setup.bash

See the installation guide for prerequisites and package availability.

Quick start

ATI RDT permits one UDP client. Stop other RDT clients before starting the driver. The examples use 192.168.1.1, ATI’s factory-default static address; replace it with the address assigned to your sensor.

Standalone driver

ROS 2:

ros2 launch netft_driver netft.launch.py sensor_ip:=192.168.1.1
ros2 topic echo --once /netft/wrench

ROS 1:

roslaunch netft_driver netft.launch sensor_ip:=192.168.1.1
rostopic echo -n 1 /netft/wrench

The default bias service is /netft/bias. Bias changes the measurement zero; call it only when the sensor and connected mechanism are in a safe state.

ros2_control

The plugin class is netft_driver/NetFTHardwareInterface. Include the installed Xacro macro in the robot description managed by your controller manager:

```xml

<xacro:netft_ros2_control name=”wrist_netft_hardware”

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package netft_driver

Forthcoming

  • Update the private netft-cpp core snapshot to v0.3.3, including lifecycle-safe client destruction during concurrent worker shutdown.

0.3.2 (2026-07-29)

  • Update the private netft-cpp core snapshot to v0.3.1, including the fix that prevents fail-stop clients from receiving stalled or backward FT-sequence samples.
  • Retain raw wrench counts in core samples while keeping ROS output in SI units.
  • Use the upstream portable XML parser and remove the obsolete local fallback.

0.3.1 (2026-07-23)

  • Update the private netft-cpp core snapshot to v0.1.3 so repeated signal interruptions cannot extend the configured UDP receive timeout.

0.3.0 (2026-07-22)

  • Add a private netft-cpp v0.1.2 core snapshot and remove the duplicate original runtime.
  • Read sensor-reported calibration by default and convert its native force and torque units to N and Nm.
  • Add the explicit use_sensor_calibration=false manual override, with counts/N and counts/Nm inputs.
  • Add HTTP configuration port and timeout parameters for sensor calibration discovery.
  • Support Noetic's GCC 9 standard library with an Apache-2.0 XML parser compatibility translation unit.
  • Keep the ros2_control plugin ABI private by hiding core and implementation symbols.
  • License the complete repository under Apache-2.0, matching the upstream core.

0.2.2 (2026-07-22)

  • Replace the project-specific sensor address in defaults and examples with ATI's factory-default 192.168.1.1 address.
  • Keep tests focused on executable and machine-readable contracts instead of human-facing documentation, help, error, log, and diagnostic wording.
  • Normalize generated release notes and remove the obsolete source-only availability notice.
  • Contributors: Xudong Han

0.2.1 (2026-07-22)

  • Fix ROS version detection when isolated build environments do not expose ROS_VERSION to CMake.
  • Declare the ros_environment build dependency and validate ROS 1 and ROS 2 configuration with ROS_VERSION unset.
  • Increase the ros2_control smoke-test timeout margin so transient CI scheduler stalls do not fault the healthy sensor in the two-sensor isolation scenario.
  • Contributors: Xudong Han

0.2.0 (2026-07-21)

  • Replace the sensor runtime with one ROS-neutral C++17 transport, protocol, status, and recovery core.
  • Add the netft_driver/NetFTHardwareInterface ros2_control sensor plugin, six standard force-torque state interfaces, reusable Xacro, and broadcaster configuration.
  • Add fail-stop fault handling, lifecycle recovery, instance-local diagnostics and software bias, and multi-sensor isolation.
  • Install native netft_node and netft_check executables for ROS 1 and ROS 2 while preserving the standalone ROS interfaces.
  • Validate native builds and loopback integration for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling.
  • Contributors: Xudong Han

0.1.0 (2026-07-19)

  • Initial public release.
  • Add one ROS 1 and ROS 2 source package for ATI Ethernet Net F/T RDT sensors.
  • Add reconnect, diagnostics, software bias, loopback integration tests, and a bounded non-biasing hardware check.
  • Validate source builds for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling in locked maintainer environments.
  • Contributors: Xudong Han

Launch files

  • launch/netft.launch
      • sensor_ip [default: 192.168.1.1]
      • sensor_port [default: 49152]
      • http_port [default: 80]
      • use_sensor_calibration [default: true]
      • configuration_connect_timeout [default: 0.5]
      • configuration_timeout [default: 1.0]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged netft_driver at Robotics Stack Exchange

No version for distro jade showing rolling. Known supported distros are highlighted in the buttons above.
Package symbol

netft_driver package from ros-netft repo

netft_driver

ROS Distro
rolling

Package Summary

Version 0.3.2
License Apache-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/netft/ros-netft.git
VCS Type git
VCS Version main
Last Updated 2026-08-04
Dev Status MAINTAINED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Native ROS 1, ROS 2, and ros2_control driver for ATI Net F/T RDT sensors.

Additional Links

Maintainers

  • Xudong Han

Authors

  • Xudong Han

ROS Net F/T Driver

CI Release CodeQL Coverage ROS License

netft_driver is a native ROS driver for ATI Ethernet Net F/T and Ethernet Axia force/torque sensors. It supports a standalone ROS 1 or ROS 2 node and a ROS 2 ros2_control sensor hardware plugin.

Features

  • Publishes calibrated geometry_msgs/WrenchStamped data in N and Nm.
  • Reports connection, sequence, receive-rate, and device-status diagnostics.
  • Provides an explicit software-bias service.
  • Integrates with the standard ROS 2 force-torque sensor broadcaster.
  • Carries a reviewed private snapshot of the netft-cpp acquisition core.

Supported ROS distributions

ROS distribution Standalone driver ros2_control plugin Support policy
ROS 2 Lyrical Yes Yes Supported
ROS 2 Kilted Yes Yes Supported
ROS 2 Jazzy Yes Yes Supported
ROS 2 Humble Yes Yes Compatibility
ROS 2 Rolling Yes Yes Development
ROS 1 Noetic* Yes N/A Legacy source support

* ROS 1 Noetic is end-of-life and supported from source only.

Installation

ROS 2

Replace lyrical with another supported ROS 2 distribution when required.

source /opt/ros/lyrical/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select netft_driver
source install/setup.bash

ROS 1 Noetic

source /opt/ros/noetic/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep update --include-eol-distros
rosdep install --from-paths src --ignore-src -r -y
catkin_make
source devel/setup.bash

See the installation guide for prerequisites and package availability.

Quick start

ATI RDT permits one UDP client. Stop other RDT clients before starting the driver. The examples use 192.168.1.1, ATI’s factory-default static address; replace it with the address assigned to your sensor.

Standalone driver

ROS 2:

ros2 launch netft_driver netft.launch.py sensor_ip:=192.168.1.1
ros2 topic echo --once /netft/wrench

ROS 1:

roslaunch netft_driver netft.launch sensor_ip:=192.168.1.1
rostopic echo -n 1 /netft/wrench

The default bias service is /netft/bias. Bias changes the measurement zero; call it only when the sensor and connected mechanism are in a safe state.

ros2_control

The plugin class is netft_driver/NetFTHardwareInterface. Include the installed Xacro macro in the robot description managed by your controller manager:

```xml

<xacro:netft_ros2_control name=”wrist_netft_hardware”

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package netft_driver

Forthcoming

  • Update the private netft-cpp core snapshot to v0.3.3, including lifecycle-safe client destruction during concurrent worker shutdown.

0.3.2 (2026-07-29)

  • Update the private netft-cpp core snapshot to v0.3.1, including the fix that prevents fail-stop clients from receiving stalled or backward FT-sequence samples.
  • Retain raw wrench counts in core samples while keeping ROS output in SI units.
  • Use the upstream portable XML parser and remove the obsolete local fallback.

0.3.1 (2026-07-23)

  • Update the private netft-cpp core snapshot to v0.1.3 so repeated signal interruptions cannot extend the configured UDP receive timeout.

0.3.0 (2026-07-22)

  • Add a private netft-cpp v0.1.2 core snapshot and remove the duplicate original runtime.
  • Read sensor-reported calibration by default and convert its native force and torque units to N and Nm.
  • Add the explicit use_sensor_calibration=false manual override, with counts/N and counts/Nm inputs.
  • Add HTTP configuration port and timeout parameters for sensor calibration discovery.
  • Support Noetic's GCC 9 standard library with an Apache-2.0 XML parser compatibility translation unit.
  • Keep the ros2_control plugin ABI private by hiding core and implementation symbols.
  • License the complete repository under Apache-2.0, matching the upstream core.

0.2.2 (2026-07-22)

  • Replace the project-specific sensor address in defaults and examples with ATI's factory-default 192.168.1.1 address.
  • Keep tests focused on executable and machine-readable contracts instead of human-facing documentation, help, error, log, and diagnostic wording.
  • Normalize generated release notes and remove the obsolete source-only availability notice.
  • Contributors: Xudong Han

0.2.1 (2026-07-22)

  • Fix ROS version detection when isolated build environments do not expose ROS_VERSION to CMake.
  • Declare the ros_environment build dependency and validate ROS 1 and ROS 2 configuration with ROS_VERSION unset.
  • Increase the ros2_control smoke-test timeout margin so transient CI scheduler stalls do not fault the healthy sensor in the two-sensor isolation scenario.
  • Contributors: Xudong Han

0.2.0 (2026-07-21)

  • Replace the sensor runtime with one ROS-neutral C++17 transport, protocol, status, and recovery core.
  • Add the netft_driver/NetFTHardwareInterface ros2_control sensor plugin, six standard force-torque state interfaces, reusable Xacro, and broadcaster configuration.
  • Add fail-stop fault handling, lifecycle recovery, instance-local diagnostics and software bias, and multi-sensor isolation.
  • Install native netft_node and netft_check executables for ROS 1 and ROS 2 while preserving the standalone ROS interfaces.
  • Validate native builds and loopback integration for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling.
  • Contributors: Xudong Han

0.1.0 (2026-07-19)

  • Initial public release.
  • Add one ROS 1 and ROS 2 source package for ATI Ethernet Net F/T RDT sensors.
  • Add reconnect, diagnostics, software bias, loopback integration tests, and a bounded non-biasing hardware check.
  • Validate source builds for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling in locked maintainer environments.
  • Contributors: Xudong Han

Launch files

  • launch/netft.launch
      • sensor_ip [default: 192.168.1.1]
      • sensor_port [default: 49152]
      • http_port [default: 80]
      • use_sensor_calibration [default: true]
      • configuration_connect_timeout [default: 0.5]
      • configuration_timeout [default: 1.0]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged netft_driver at Robotics Stack Exchange

No version for distro indigo showing rolling. Known supported distros are highlighted in the buttons above.
Package symbol

netft_driver package from ros-netft repo

netft_driver

ROS Distro
rolling

Package Summary

Version 0.3.2
License Apache-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/netft/ros-netft.git
VCS Type git
VCS Version main
Last Updated 2026-08-04
Dev Status MAINTAINED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Native ROS 1, ROS 2, and ros2_control driver for ATI Net F/T RDT sensors.

Additional Links

Maintainers

  • Xudong Han

Authors

  • Xudong Han

ROS Net F/T Driver

CI Release CodeQL Coverage ROS License

netft_driver is a native ROS driver for ATI Ethernet Net F/T and Ethernet Axia force/torque sensors. It supports a standalone ROS 1 or ROS 2 node and a ROS 2 ros2_control sensor hardware plugin.

Features

  • Publishes calibrated geometry_msgs/WrenchStamped data in N and Nm.
  • Reports connection, sequence, receive-rate, and device-status diagnostics.
  • Provides an explicit software-bias service.
  • Integrates with the standard ROS 2 force-torque sensor broadcaster.
  • Carries a reviewed private snapshot of the netft-cpp acquisition core.

Supported ROS distributions

ROS distribution Standalone driver ros2_control plugin Support policy
ROS 2 Lyrical Yes Yes Supported
ROS 2 Kilted Yes Yes Supported
ROS 2 Jazzy Yes Yes Supported
ROS 2 Humble Yes Yes Compatibility
ROS 2 Rolling Yes Yes Development
ROS 1 Noetic* Yes N/A Legacy source support

* ROS 1 Noetic is end-of-life and supported from source only.

Installation

ROS 2

Replace lyrical with another supported ROS 2 distribution when required.

source /opt/ros/lyrical/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select netft_driver
source install/setup.bash

ROS 1 Noetic

source /opt/ros/noetic/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep update --include-eol-distros
rosdep install --from-paths src --ignore-src -r -y
catkin_make
source devel/setup.bash

See the installation guide for prerequisites and package availability.

Quick start

ATI RDT permits one UDP client. Stop other RDT clients before starting the driver. The examples use 192.168.1.1, ATI’s factory-default static address; replace it with the address assigned to your sensor.

Standalone driver

ROS 2:

ros2 launch netft_driver netft.launch.py sensor_ip:=192.168.1.1
ros2 topic echo --once /netft/wrench

ROS 1:

roslaunch netft_driver netft.launch sensor_ip:=192.168.1.1
rostopic echo -n 1 /netft/wrench

The default bias service is /netft/bias. Bias changes the measurement zero; call it only when the sensor and connected mechanism are in a safe state.

ros2_control

The plugin class is netft_driver/NetFTHardwareInterface. Include the installed Xacro macro in the robot description managed by your controller manager:

```xml

<xacro:netft_ros2_control name=”wrist_netft_hardware”

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package netft_driver

Forthcoming

  • Update the private netft-cpp core snapshot to v0.3.3, including lifecycle-safe client destruction during concurrent worker shutdown.

0.3.2 (2026-07-29)

  • Update the private netft-cpp core snapshot to v0.3.1, including the fix that prevents fail-stop clients from receiving stalled or backward FT-sequence samples.
  • Retain raw wrench counts in core samples while keeping ROS output in SI units.
  • Use the upstream portable XML parser and remove the obsolete local fallback.

0.3.1 (2026-07-23)

  • Update the private netft-cpp core snapshot to v0.1.3 so repeated signal interruptions cannot extend the configured UDP receive timeout.

0.3.0 (2026-07-22)

  • Add a private netft-cpp v0.1.2 core snapshot and remove the duplicate original runtime.
  • Read sensor-reported calibration by default and convert its native force and torque units to N and Nm.
  • Add the explicit use_sensor_calibration=false manual override, with counts/N and counts/Nm inputs.
  • Add HTTP configuration port and timeout parameters for sensor calibration discovery.
  • Support Noetic's GCC 9 standard library with an Apache-2.0 XML parser compatibility translation unit.
  • Keep the ros2_control plugin ABI private by hiding core and implementation symbols.
  • License the complete repository under Apache-2.0, matching the upstream core.

0.2.2 (2026-07-22)

  • Replace the project-specific sensor address in defaults and examples with ATI's factory-default 192.168.1.1 address.
  • Keep tests focused on executable and machine-readable contracts instead of human-facing documentation, help, error, log, and diagnostic wording.
  • Normalize generated release notes and remove the obsolete source-only availability notice.
  • Contributors: Xudong Han

0.2.1 (2026-07-22)

  • Fix ROS version detection when isolated build environments do not expose ROS_VERSION to CMake.
  • Declare the ros_environment build dependency and validate ROS 1 and ROS 2 configuration with ROS_VERSION unset.
  • Increase the ros2_control smoke-test timeout margin so transient CI scheduler stalls do not fault the healthy sensor in the two-sensor isolation scenario.
  • Contributors: Xudong Han

0.2.0 (2026-07-21)

  • Replace the sensor runtime with one ROS-neutral C++17 transport, protocol, status, and recovery core.
  • Add the netft_driver/NetFTHardwareInterface ros2_control sensor plugin, six standard force-torque state interfaces, reusable Xacro, and broadcaster configuration.
  • Add fail-stop fault handling, lifecycle recovery, instance-local diagnostics and software bias, and multi-sensor isolation.
  • Install native netft_node and netft_check executables for ROS 1 and ROS 2 while preserving the standalone ROS interfaces.
  • Validate native builds and loopback integration for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling.
  • Contributors: Xudong Han

0.1.0 (2026-07-19)

  • Initial public release.
  • Add one ROS 1 and ROS 2 source package for ATI Ethernet Net F/T RDT sensors.
  • Add reconnect, diagnostics, software bias, loopback integration tests, and a bounded non-biasing hardware check.
  • Validate source builds for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling in locked maintainer environments.
  • Contributors: Xudong Han

Launch files

  • launch/netft.launch
      • sensor_ip [default: 192.168.1.1]
      • sensor_port [default: 49152]
      • http_port [default: 80]
      • use_sensor_calibration [default: true]
      • configuration_connect_timeout [default: 0.5]
      • configuration_timeout [default: 1.0]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged netft_driver at Robotics Stack Exchange

No version for distro hydro showing rolling. Known supported distros are highlighted in the buttons above.
Package symbol

netft_driver package from ros-netft repo

netft_driver

ROS Distro
rolling

Package Summary

Version 0.3.2
License Apache-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/netft/ros-netft.git
VCS Type git
VCS Version main
Last Updated 2026-08-04
Dev Status MAINTAINED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Native ROS 1, ROS 2, and ros2_control driver for ATI Net F/T RDT sensors.

Additional Links

Maintainers

  • Xudong Han

Authors

  • Xudong Han

ROS Net F/T Driver

CI Release CodeQL Coverage ROS License

netft_driver is a native ROS driver for ATI Ethernet Net F/T and Ethernet Axia force/torque sensors. It supports a standalone ROS 1 or ROS 2 node and a ROS 2 ros2_control sensor hardware plugin.

Features

  • Publishes calibrated geometry_msgs/WrenchStamped data in N and Nm.
  • Reports connection, sequence, receive-rate, and device-status diagnostics.
  • Provides an explicit software-bias service.
  • Integrates with the standard ROS 2 force-torque sensor broadcaster.
  • Carries a reviewed private snapshot of the netft-cpp acquisition core.

Supported ROS distributions

ROS distribution Standalone driver ros2_control plugin Support policy
ROS 2 Lyrical Yes Yes Supported
ROS 2 Kilted Yes Yes Supported
ROS 2 Jazzy Yes Yes Supported
ROS 2 Humble Yes Yes Compatibility
ROS 2 Rolling Yes Yes Development
ROS 1 Noetic* Yes N/A Legacy source support

* ROS 1 Noetic is end-of-life and supported from source only.

Installation

ROS 2

Replace lyrical with another supported ROS 2 distribution when required.

source /opt/ros/lyrical/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select netft_driver
source install/setup.bash

ROS 1 Noetic

source /opt/ros/noetic/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep update --include-eol-distros
rosdep install --from-paths src --ignore-src -r -y
catkin_make
source devel/setup.bash

See the installation guide for prerequisites and package availability.

Quick start

ATI RDT permits one UDP client. Stop other RDT clients before starting the driver. The examples use 192.168.1.1, ATI’s factory-default static address; replace it with the address assigned to your sensor.

Standalone driver

ROS 2:

ros2 launch netft_driver netft.launch.py sensor_ip:=192.168.1.1
ros2 topic echo --once /netft/wrench

ROS 1:

roslaunch netft_driver netft.launch sensor_ip:=192.168.1.1
rostopic echo -n 1 /netft/wrench

The default bias service is /netft/bias. Bias changes the measurement zero; call it only when the sensor and connected mechanism are in a safe state.

ros2_control

The plugin class is netft_driver/NetFTHardwareInterface. Include the installed Xacro macro in the robot description managed by your controller manager:

```xml

<xacro:netft_ros2_control name=”wrist_netft_hardware”

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package netft_driver

Forthcoming

  • Update the private netft-cpp core snapshot to v0.3.3, including lifecycle-safe client destruction during concurrent worker shutdown.

0.3.2 (2026-07-29)

  • Update the private netft-cpp core snapshot to v0.3.1, including the fix that prevents fail-stop clients from receiving stalled or backward FT-sequence samples.
  • Retain raw wrench counts in core samples while keeping ROS output in SI units.
  • Use the upstream portable XML parser and remove the obsolete local fallback.

0.3.1 (2026-07-23)

  • Update the private netft-cpp core snapshot to v0.1.3 so repeated signal interruptions cannot extend the configured UDP receive timeout.

0.3.0 (2026-07-22)

  • Add a private netft-cpp v0.1.2 core snapshot and remove the duplicate original runtime.
  • Read sensor-reported calibration by default and convert its native force and torque units to N and Nm.
  • Add the explicit use_sensor_calibration=false manual override, with counts/N and counts/Nm inputs.
  • Add HTTP configuration port and timeout parameters for sensor calibration discovery.
  • Support Noetic's GCC 9 standard library with an Apache-2.0 XML parser compatibility translation unit.
  • Keep the ros2_control plugin ABI private by hiding core and implementation symbols.
  • License the complete repository under Apache-2.0, matching the upstream core.

0.2.2 (2026-07-22)

  • Replace the project-specific sensor address in defaults and examples with ATI's factory-default 192.168.1.1 address.
  • Keep tests focused on executable and machine-readable contracts instead of human-facing documentation, help, error, log, and diagnostic wording.
  • Normalize generated release notes and remove the obsolete source-only availability notice.
  • Contributors: Xudong Han

0.2.1 (2026-07-22)

  • Fix ROS version detection when isolated build environments do not expose ROS_VERSION to CMake.
  • Declare the ros_environment build dependency and validate ROS 1 and ROS 2 configuration with ROS_VERSION unset.
  • Increase the ros2_control smoke-test timeout margin so transient CI scheduler stalls do not fault the healthy sensor in the two-sensor isolation scenario.
  • Contributors: Xudong Han

0.2.0 (2026-07-21)

  • Replace the sensor runtime with one ROS-neutral C++17 transport, protocol, status, and recovery core.
  • Add the netft_driver/NetFTHardwareInterface ros2_control sensor plugin, six standard force-torque state interfaces, reusable Xacro, and broadcaster configuration.
  • Add fail-stop fault handling, lifecycle recovery, instance-local diagnostics and software bias, and multi-sensor isolation.
  • Install native netft_node and netft_check executables for ROS 1 and ROS 2 while preserving the standalone ROS interfaces.
  • Validate native builds and loopback integration for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling.
  • Contributors: Xudong Han

0.1.0 (2026-07-19)

  • Initial public release.
  • Add one ROS 1 and ROS 2 source package for ATI Ethernet Net F/T RDT sensors.
  • Add reconnect, diagnostics, software bias, loopback integration tests, and a bounded non-biasing hardware check.
  • Validate source builds for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling in locked maintainer environments.
  • Contributors: Xudong Han

Launch files

  • launch/netft.launch
      • sensor_ip [default: 192.168.1.1]
      • sensor_port [default: 49152]
      • http_port [default: 80]
      • use_sensor_calibration [default: true]
      • configuration_connect_timeout [default: 0.5]
      • configuration_timeout [default: 1.0]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged netft_driver at Robotics Stack Exchange

No version for distro kinetic showing rolling. Known supported distros are highlighted in the buttons above.
Package symbol

netft_driver package from ros-netft repo

netft_driver

ROS Distro
rolling

Package Summary

Version 0.3.2
License Apache-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/netft/ros-netft.git
VCS Type git
VCS Version main
Last Updated 2026-08-04
Dev Status MAINTAINED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Native ROS 1, ROS 2, and ros2_control driver for ATI Net F/T RDT sensors.

Additional Links

Maintainers

  • Xudong Han

Authors

  • Xudong Han

ROS Net F/T Driver

CI Release CodeQL Coverage ROS License

netft_driver is a native ROS driver for ATI Ethernet Net F/T and Ethernet Axia force/torque sensors. It supports a standalone ROS 1 or ROS 2 node and a ROS 2 ros2_control sensor hardware plugin.

Features

  • Publishes calibrated geometry_msgs/WrenchStamped data in N and Nm.
  • Reports connection, sequence, receive-rate, and device-status diagnostics.
  • Provides an explicit software-bias service.
  • Integrates with the standard ROS 2 force-torque sensor broadcaster.
  • Carries a reviewed private snapshot of the netft-cpp acquisition core.

Supported ROS distributions

ROS distribution Standalone driver ros2_control plugin Support policy
ROS 2 Lyrical Yes Yes Supported
ROS 2 Kilted Yes Yes Supported
ROS 2 Jazzy Yes Yes Supported
ROS 2 Humble Yes Yes Compatibility
ROS 2 Rolling Yes Yes Development
ROS 1 Noetic* Yes N/A Legacy source support

* ROS 1 Noetic is end-of-life and supported from source only.

Installation

ROS 2

Replace lyrical with another supported ROS 2 distribution when required.

source /opt/ros/lyrical/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select netft_driver
source install/setup.bash

ROS 1 Noetic

source /opt/ros/noetic/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep update --include-eol-distros
rosdep install --from-paths src --ignore-src -r -y
catkin_make
source devel/setup.bash

See the installation guide for prerequisites and package availability.

Quick start

ATI RDT permits one UDP client. Stop other RDT clients before starting the driver. The examples use 192.168.1.1, ATI’s factory-default static address; replace it with the address assigned to your sensor.

Standalone driver

ROS 2:

ros2 launch netft_driver netft.launch.py sensor_ip:=192.168.1.1
ros2 topic echo --once /netft/wrench

ROS 1:

roslaunch netft_driver netft.launch sensor_ip:=192.168.1.1
rostopic echo -n 1 /netft/wrench

The default bias service is /netft/bias. Bias changes the measurement zero; call it only when the sensor and connected mechanism are in a safe state.

ros2_control

The plugin class is netft_driver/NetFTHardwareInterface. Include the installed Xacro macro in the robot description managed by your controller manager:

```xml

<xacro:netft_ros2_control name=”wrist_netft_hardware”

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package netft_driver

Forthcoming

  • Update the private netft-cpp core snapshot to v0.3.3, including lifecycle-safe client destruction during concurrent worker shutdown.

0.3.2 (2026-07-29)

  • Update the private netft-cpp core snapshot to v0.3.1, including the fix that prevents fail-stop clients from receiving stalled or backward FT-sequence samples.
  • Retain raw wrench counts in core samples while keeping ROS output in SI units.
  • Use the upstream portable XML parser and remove the obsolete local fallback.

0.3.1 (2026-07-23)

  • Update the private netft-cpp core snapshot to v0.1.3 so repeated signal interruptions cannot extend the configured UDP receive timeout.

0.3.0 (2026-07-22)

  • Add a private netft-cpp v0.1.2 core snapshot and remove the duplicate original runtime.
  • Read sensor-reported calibration by default and convert its native force and torque units to N and Nm.
  • Add the explicit use_sensor_calibration=false manual override, with counts/N and counts/Nm inputs.
  • Add HTTP configuration port and timeout parameters for sensor calibration discovery.
  • Support Noetic's GCC 9 standard library with an Apache-2.0 XML parser compatibility translation unit.
  • Keep the ros2_control plugin ABI private by hiding core and implementation symbols.
  • License the complete repository under Apache-2.0, matching the upstream core.

0.2.2 (2026-07-22)

  • Replace the project-specific sensor address in defaults and examples with ATI's factory-default 192.168.1.1 address.
  • Keep tests focused on executable and machine-readable contracts instead of human-facing documentation, help, error, log, and diagnostic wording.
  • Normalize generated release notes and remove the obsolete source-only availability notice.
  • Contributors: Xudong Han

0.2.1 (2026-07-22)

  • Fix ROS version detection when isolated build environments do not expose ROS_VERSION to CMake.
  • Declare the ros_environment build dependency and validate ROS 1 and ROS 2 configuration with ROS_VERSION unset.
  • Increase the ros2_control smoke-test timeout margin so transient CI scheduler stalls do not fault the healthy sensor in the two-sensor isolation scenario.
  • Contributors: Xudong Han

0.2.0 (2026-07-21)

  • Replace the sensor runtime with one ROS-neutral C++17 transport, protocol, status, and recovery core.
  • Add the netft_driver/NetFTHardwareInterface ros2_control sensor plugin, six standard force-torque state interfaces, reusable Xacro, and broadcaster configuration.
  • Add fail-stop fault handling, lifecycle recovery, instance-local diagnostics and software bias, and multi-sensor isolation.
  • Install native netft_node and netft_check executables for ROS 1 and ROS 2 while preserving the standalone ROS interfaces.
  • Validate native builds and loopback integration for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling.
  • Contributors: Xudong Han

0.1.0 (2026-07-19)

  • Initial public release.
  • Add one ROS 1 and ROS 2 source package for ATI Ethernet Net F/T RDT sensors.
  • Add reconnect, diagnostics, software bias, loopback integration tests, and a bounded non-biasing hardware check.
  • Validate source builds for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling in locked maintainer environments.
  • Contributors: Xudong Han

Launch files

  • launch/netft.launch
      • sensor_ip [default: 192.168.1.1]
      • sensor_port [default: 49152]
      • http_port [default: 80]
      • use_sensor_calibration [default: true]
      • configuration_connect_timeout [default: 0.5]
      • configuration_timeout [default: 1.0]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged netft_driver at Robotics Stack Exchange

No version for distro melodic showing rolling. Known supported distros are highlighted in the buttons above.
Package symbol

netft_driver package from ros-netft repo

netft_driver

ROS Distro
rolling

Package Summary

Version 0.3.2
License Apache-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/netft/ros-netft.git
VCS Type git
VCS Version main
Last Updated 2026-08-04
Dev Status MAINTAINED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Native ROS 1, ROS 2, and ros2_control driver for ATI Net F/T RDT sensors.

Additional Links

Maintainers

  • Xudong Han

Authors

  • Xudong Han

ROS Net F/T Driver

CI Release CodeQL Coverage ROS License

netft_driver is a native ROS driver for ATI Ethernet Net F/T and Ethernet Axia force/torque sensors. It supports a standalone ROS 1 or ROS 2 node and a ROS 2 ros2_control sensor hardware plugin.

Features

  • Publishes calibrated geometry_msgs/WrenchStamped data in N and Nm.
  • Reports connection, sequence, receive-rate, and device-status diagnostics.
  • Provides an explicit software-bias service.
  • Integrates with the standard ROS 2 force-torque sensor broadcaster.
  • Carries a reviewed private snapshot of the netft-cpp acquisition core.

Supported ROS distributions

ROS distribution Standalone driver ros2_control plugin Support policy
ROS 2 Lyrical Yes Yes Supported
ROS 2 Kilted Yes Yes Supported
ROS 2 Jazzy Yes Yes Supported
ROS 2 Humble Yes Yes Compatibility
ROS 2 Rolling Yes Yes Development
ROS 1 Noetic* Yes N/A Legacy source support

* ROS 1 Noetic is end-of-life and supported from source only.

Installation

ROS 2

Replace lyrical with another supported ROS 2 distribution when required.

source /opt/ros/lyrical/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select netft_driver
source install/setup.bash

ROS 1 Noetic

source /opt/ros/noetic/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep update --include-eol-distros
rosdep install --from-paths src --ignore-src -r -y
catkin_make
source devel/setup.bash

See the installation guide for prerequisites and package availability.

Quick start

ATI RDT permits one UDP client. Stop other RDT clients before starting the driver. The examples use 192.168.1.1, ATI’s factory-default static address; replace it with the address assigned to your sensor.

Standalone driver

ROS 2:

ros2 launch netft_driver netft.launch.py sensor_ip:=192.168.1.1
ros2 topic echo --once /netft/wrench

ROS 1:

roslaunch netft_driver netft.launch sensor_ip:=192.168.1.1
rostopic echo -n 1 /netft/wrench

The default bias service is /netft/bias. Bias changes the measurement zero; call it only when the sensor and connected mechanism are in a safe state.

ros2_control

The plugin class is netft_driver/NetFTHardwareInterface. Include the installed Xacro macro in the robot description managed by your controller manager:

```xml

<xacro:netft_ros2_control name=”wrist_netft_hardware”

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package netft_driver

Forthcoming

  • Update the private netft-cpp core snapshot to v0.3.3, including lifecycle-safe client destruction during concurrent worker shutdown.

0.3.2 (2026-07-29)

  • Update the private netft-cpp core snapshot to v0.3.1, including the fix that prevents fail-stop clients from receiving stalled or backward FT-sequence samples.
  • Retain raw wrench counts in core samples while keeping ROS output in SI units.
  • Use the upstream portable XML parser and remove the obsolete local fallback.

0.3.1 (2026-07-23)

  • Update the private netft-cpp core snapshot to v0.1.3 so repeated signal interruptions cannot extend the configured UDP receive timeout.

0.3.0 (2026-07-22)

  • Add a private netft-cpp v0.1.2 core snapshot and remove the duplicate original runtime.
  • Read sensor-reported calibration by default and convert its native force and torque units to N and Nm.
  • Add the explicit use_sensor_calibration=false manual override, with counts/N and counts/Nm inputs.
  • Add HTTP configuration port and timeout parameters for sensor calibration discovery.
  • Support Noetic's GCC 9 standard library with an Apache-2.0 XML parser compatibility translation unit.
  • Keep the ros2_control plugin ABI private by hiding core and implementation symbols.
  • License the complete repository under Apache-2.0, matching the upstream core.

0.2.2 (2026-07-22)

  • Replace the project-specific sensor address in defaults and examples with ATI's factory-default 192.168.1.1 address.
  • Keep tests focused on executable and machine-readable contracts instead of human-facing documentation, help, error, log, and diagnostic wording.
  • Normalize generated release notes and remove the obsolete source-only availability notice.
  • Contributors: Xudong Han

0.2.1 (2026-07-22)

  • Fix ROS version detection when isolated build environments do not expose ROS_VERSION to CMake.
  • Declare the ros_environment build dependency and validate ROS 1 and ROS 2 configuration with ROS_VERSION unset.
  • Increase the ros2_control smoke-test timeout margin so transient CI scheduler stalls do not fault the healthy sensor in the two-sensor isolation scenario.
  • Contributors: Xudong Han

0.2.0 (2026-07-21)

  • Replace the sensor runtime with one ROS-neutral C++17 transport, protocol, status, and recovery core.
  • Add the netft_driver/NetFTHardwareInterface ros2_control sensor plugin, six standard force-torque state interfaces, reusable Xacro, and broadcaster configuration.
  • Add fail-stop fault handling, lifecycle recovery, instance-local diagnostics and software bias, and multi-sensor isolation.
  • Install native netft_node and netft_check executables for ROS 1 and ROS 2 while preserving the standalone ROS interfaces.
  • Validate native builds and loopback integration for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling.
  • Contributors: Xudong Han

0.1.0 (2026-07-19)

  • Initial public release.
  • Add one ROS 1 and ROS 2 source package for ATI Ethernet Net F/T RDT sensors.
  • Add reconnect, diagnostics, software bias, loopback integration tests, and a bounded non-biasing hardware check.
  • Validate source builds for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling in locked maintainer environments.
  • Contributors: Xudong Han

Launch files

  • launch/netft.launch
      • sensor_ip [default: 192.168.1.1]
      • sensor_port [default: 49152]
      • http_port [default: 80]
      • use_sensor_calibration [default: true]
      • configuration_connect_timeout [default: 0.5]
      • configuration_timeout [default: 1.0]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged netft_driver at Robotics Stack Exchange

No version for distro noetic showing rolling. Known supported distros are highlighted in the buttons above.
Package symbol

netft_driver package from ros-netft repo

netft_driver

ROS Distro
rolling

Package Summary

Version 0.3.2
License Apache-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/netft/ros-netft.git
VCS Type git
VCS Version main
Last Updated 2026-08-04
Dev Status MAINTAINED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Native ROS 1, ROS 2, and ros2_control driver for ATI Net F/T RDT sensors.

Additional Links

Maintainers

  • Xudong Han

Authors

  • Xudong Han

ROS Net F/T Driver

CI Release CodeQL Coverage ROS License

netft_driver is a native ROS driver for ATI Ethernet Net F/T and Ethernet Axia force/torque sensors. It supports a standalone ROS 1 or ROS 2 node and a ROS 2 ros2_control sensor hardware plugin.

Features

  • Publishes calibrated geometry_msgs/WrenchStamped data in N and Nm.
  • Reports connection, sequence, receive-rate, and device-status diagnostics.
  • Provides an explicit software-bias service.
  • Integrates with the standard ROS 2 force-torque sensor broadcaster.
  • Carries a reviewed private snapshot of the netft-cpp acquisition core.

Supported ROS distributions

ROS distribution Standalone driver ros2_control plugin Support policy
ROS 2 Lyrical Yes Yes Supported
ROS 2 Kilted Yes Yes Supported
ROS 2 Jazzy Yes Yes Supported
ROS 2 Humble Yes Yes Compatibility
ROS 2 Rolling Yes Yes Development
ROS 1 Noetic* Yes N/A Legacy source support

* ROS 1 Noetic is end-of-life and supported from source only.

Installation

ROS 2

Replace lyrical with another supported ROS 2 distribution when required.

source /opt/ros/lyrical/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select netft_driver
source install/setup.bash

ROS 1 Noetic

source /opt/ros/noetic/setup.bash
mkdir -p ~/netft_ws/src
git clone https://github.com/netft/ros-netft.git ~/netft_ws/src/netft_driver
cd ~/netft_ws
rosdep update --include-eol-distros
rosdep install --from-paths src --ignore-src -r -y
catkin_make
source devel/setup.bash

See the installation guide for prerequisites and package availability.

Quick start

ATI RDT permits one UDP client. Stop other RDT clients before starting the driver. The examples use 192.168.1.1, ATI’s factory-default static address; replace it with the address assigned to your sensor.

Standalone driver

ROS 2:

ros2 launch netft_driver netft.launch.py sensor_ip:=192.168.1.1
ros2 topic echo --once /netft/wrench

ROS 1:

roslaunch netft_driver netft.launch sensor_ip:=192.168.1.1
rostopic echo -n 1 /netft/wrench

The default bias service is /netft/bias. Bias changes the measurement zero; call it only when the sensor and connected mechanism are in a safe state.

ros2_control

The plugin class is netft_driver/NetFTHardwareInterface. Include the installed Xacro macro in the robot description managed by your controller manager:

```xml

<xacro:netft_ros2_control name=”wrist_netft_hardware”

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package netft_driver

Forthcoming

  • Update the private netft-cpp core snapshot to v0.3.3, including lifecycle-safe client destruction during concurrent worker shutdown.

0.3.2 (2026-07-29)

  • Update the private netft-cpp core snapshot to v0.3.1, including the fix that prevents fail-stop clients from receiving stalled or backward FT-sequence samples.
  • Retain raw wrench counts in core samples while keeping ROS output in SI units.
  • Use the upstream portable XML parser and remove the obsolete local fallback.

0.3.1 (2026-07-23)

  • Update the private netft-cpp core snapshot to v0.1.3 so repeated signal interruptions cannot extend the configured UDP receive timeout.

0.3.0 (2026-07-22)

  • Add a private netft-cpp v0.1.2 core snapshot and remove the duplicate original runtime.
  • Read sensor-reported calibration by default and convert its native force and torque units to N and Nm.
  • Add the explicit use_sensor_calibration=false manual override, with counts/N and counts/Nm inputs.
  • Add HTTP configuration port and timeout parameters for sensor calibration discovery.
  • Support Noetic's GCC 9 standard library with an Apache-2.0 XML parser compatibility translation unit.
  • Keep the ros2_control plugin ABI private by hiding core and implementation symbols.
  • License the complete repository under Apache-2.0, matching the upstream core.

0.2.2 (2026-07-22)

  • Replace the project-specific sensor address in defaults and examples with ATI's factory-default 192.168.1.1 address.
  • Keep tests focused on executable and machine-readable contracts instead of human-facing documentation, help, error, log, and diagnostic wording.
  • Normalize generated release notes and remove the obsolete source-only availability notice.
  • Contributors: Xudong Han

0.2.1 (2026-07-22)

  • Fix ROS version detection when isolated build environments do not expose ROS_VERSION to CMake.
  • Declare the ros_environment build dependency and validate ROS 1 and ROS 2 configuration with ROS_VERSION unset.
  • Increase the ros2_control smoke-test timeout margin so transient CI scheduler stalls do not fault the healthy sensor in the two-sensor isolation scenario.
  • Contributors: Xudong Han

0.2.0 (2026-07-21)

  • Replace the sensor runtime with one ROS-neutral C++17 transport, protocol, status, and recovery core.
  • Add the netft_driver/NetFTHardwareInterface ros2_control sensor plugin, six standard force-torque state interfaces, reusable Xacro, and broadcaster configuration.
  • Add fail-stop fault handling, lifecycle recovery, instance-local diagnostics and software bias, and multi-sensor isolation.
  • Install native netft_node and netft_check executables for ROS 1 and ROS 2 while preserving the standalone ROS interfaces.
  • Validate native builds and loopback integration for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling.
  • Contributors: Xudong Han

0.1.0 (2026-07-19)

  • Initial public release.
  • Add one ROS 1 and ROS 2 source package for ATI Ethernet Net F/T RDT sensors.
  • Add reconnect, diagnostics, software bias, loopback integration tests, and a bounded non-biasing hardware check.
  • Validate source builds for Noetic, Humble, Jazzy, Kilted, Lyrical, and Rolling in locked maintainer environments.
  • Contributors: Xudong Han

Launch files

  • launch/netft.launch
      • sensor_ip [default: 192.168.1.1]
      • sensor_port [default: 49152]
      • http_port [default: 80]
      • use_sensor_calibration [default: true]
      • configuration_connect_timeout [default: 0.5]
      • configuration_timeout [default: 1.0]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged netft_driver at Robotics Stack Exchange