ROS2

Download and installation

The ROS2 driver is an open source wrapper around the C++ Driver, implemented as a single ROS2 package named bota_driver.

Found the package implementation in our official GitLab repository.

bota_driver on GitLab

XACROs

The bota-driver package provides XACRO macros to simplify the integration of Bota FT sensors into URDFs.

For each sensor type, a dedicated XACRO macro is provided to simplify the creation of the sensor’s URDF description. These macros automatically generate the required links and joints, and include the appropriate meshes for both visualization and collision. This streamlines the integration of Bota FT sensors into your robot model.

The sensor XACROS must receive the following parameter:

Parameter

Description

prefix

Bota FT sensor link name. It will be used as prefix for the link and joint names the xacro creates.

The frames that all the XACROs create are shown in the figure below.

Description of the image

Frames (links) created by Bota FT Sensor XACROs.

This frames are corresponding to the following parts of the sensor:

Frame

Part

{prefix}_mounting

Mounting interface in the back of the sensor. It is the parent for allthe other frames in the sensor. It should be the child for the joint that attaches the sensor to the robot.

{prefix}_wrench

Front interface of the sensor, where the measured wrench is referenced and expressed.

{prefix}_mechX

[ONLY IF AVAILABLE] Mechanical interfaces on the side of the sensor body.

A RVIZ visualization of the robot description generated with the XACROs is shown below:

Description of the image

RVIZ visualization.

XACRO Usage Examples Practical examples for integrating Bota FT sensor XACROs into your robot models can be found in our official ROS2 examples:

Supported XACROs

Gen 0

Commercial name

Macro Name

IMU link

SensONE Serial

BFT_SENS_SER_M8

No

SensONE EtherCAT

BFT_SENS_ECAT_M8

Yes

Rokubi Serial

BFT_ROKS_SER_M8

No

Rokubi EtherCAT

BFT_ROKS_ECAT_M8

Yes

Medusa Serial

BFT_MEDS_SER_M8

No

Medusa EtherCAT

BFT_MEDS_ECAT_M8

Yes

MiniONE Pro Serial

BFT_MIPS_SER_M8

No

MiniONE Pro EtherCAT

BFT_MIPS_ECAT_M8

Yes

LaxONE Serial

BFT_LAXS_SER_M8

No

LaxONE EtherCAT

BFT_LAXS_ECAT_M8

Yes

MegaONE Serial

BFT_MEGS_SER_M8

No

MegaONE EtherCAT

BFT_MEGS_ECAT_M8

Yes

Gen A

>> ONE-Series

Commercial name

Product Name -> Macros Name

SensONE

BFT_DENS_CAT2_B4, BFT_DENS_IND2_B4, BFT_SENS_CAT2_B4, BFT_SENS_IND2_B4

Rokubi

BFT_MEDS_CAT2_B4, BFT_MEDS_IND2_B4, BFT_ROKS_CAT2_B4, BFT_ROKS_IND2_B4

MiniONE Pro

BFT_MIPS_CAT1_CG, BFT_MIPS_ENET_CG

MiniONE

BFT_MN2S_SER_UB, BFT_MN2S_SER_ML

LaxONE

BFT_LAXS_CAT2_B4, BFT_LAXS_IND2_B4

MegaONE

BFT_MEGS_CAT2_B4, BFT_MEGS_IND2_B4, BFT_NEGS_CAT2_B4, BFT_NEGS_IND2_B4

SensONE T80

BFT_MENS_CAT2_B4, BFT_MENS_IND2_B4

PixONE T25

BFT_SH1_CAT2_BD, BFT_SH1_IND_BD

PixONE T60

BFT_MH1_MLP_BD

Kinova Gen3 Sensor

BFT_KG32_IND3_SW

>> X-Series

Commercial name

Product Name -> Macros Name

TactX

BFT_MN3S_USB_ML

MimX

BFT_MM1X_USB_ML

PhisX

BFT_PH1X_USB_ML


Variants

Ready to Get Started?

Select the ROS2 driver variant that best fits your application needs.

Standard Node
Fast prototyping and small applications that do not require strong safety requirements.
Learn more
Lifecycle Node
For applications that require strong safety requirements and controlled state management.
Learn more
ros2_control
For applications within the ros2_control framework with strong real-time and safety requirements.
Learn more