Repository Summary
Checkout URI | https://github.com/SBG-Systems/sbg_ros2.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-17 |
Dev Status | DEVELOPED |
Released | RELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
Name | Version |
---|---|
sbg_driver | 3.3.0 |
README
sbg_driver
ROS2 driver package for SBG Systems IMU, AHRS and INS.
This driver package uses the sbgECom binary protocol to read data and configure SBG Systems devices.
Initial work has been done by ENSTA Bretagne.
Author: SBG Systems
Maintainer: SBG Systems
Contact: support@sbg-systems.com
Features
The driver supports all SBG systems sensors, IMUs, AHRS and INS, with a various degree of configurations available.
The driver supports the following features:
- Parse IMU/AHRS/INS/GNSS using the sbgECom protocol
- Publish standard ROS2 messages and more detailed specific SBG Systems topics
- Subscribe and forward RTCM data to support DGPS/RTK mode with centimeters-level accuracy
- Calibrate 2D/3D magnetic field using the on-board ELLIPSE algorithms
- Configure ELLIPSE products using yaml files (see note below)
[!NOTE] While the ROS2 drivers can be used with all SBG Systems sensors, the drivers can only be used to configure the Ellipse family. For other INS such as EKINOX, APOGEE and QUANTA, please use the sbgInsRestApi For the PULSE-40, please use the sbgEcom encapsulation of the sbgInsRestApi: see our Getting started Guide
Installation
Installation from Packages
User can install the sbg_ros2_driver through the standard ROS2 installation system.
- Humble
sudo apt-get install ros-humble-sbg-driver
- Galactic
sudo apt-get install ros-galactic-sbg-driver
- Foxy
sudo apt-get install ros-foxy-sbg-driver
Building from sources
Dependencies
- Robot Operating System (ROS2)
- sbgECom C Library (embeds v4.0.1987-stable - compatible with ELLIPSE firmware 2.5 and above)
Building
- Clone the repository (use a Release version)
- Build using the ROS2 colcon build system
cd colcon_ws/src
git clone https://github.com/SBG-Systems/sbg_ros2_driver.git
cd sbg_ros2_driver
rosdep update
rosdep install --from-path .
cd ../..
colcon build
source install/setup.bash
Usage
To run the default ROS2 node with the default configuration file
ros2 launch sbg_driver sbg_device_launch.py
To run the magnetic calibration node
ros2 launch sbg_driver sbg_device_mag_calibration_launch.py
Config files
Default config files
Every configuration file is defined according to the same structure.
-
sbg_device_uart_default.yaml
This config file is the default one for UART connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually or with the ROS2 node).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
-
sbg_device_udp_default.yaml
This config file is the default one for an UDP connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
Example config files
-
ellipse_A_default.yaml Default config file for an Ellipse-A.
-
ellipse_E_default.yaml Default config file for an Ellipse-E with an external NMEA GNSS.
-
ellipse_N_default.yaml Default config file for an Ellipse-N using internal GNSS.
-
ellipse_D_default.yaml Default config file for an Ellipse-D using internal GNSS.
Launch files
Default launch files
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/SBG-Systems/sbg_ros2.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-17 |
Dev Status | DEVELOPED |
Released | RELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
Name | Version |
---|---|
sbg_driver | 3.3.0 |
README
sbg_driver
ROS2 driver package for SBG Systems IMU, AHRS and INS.
This driver package uses the sbgECom binary protocol to read data and configure SBG Systems devices.
Initial work has been done by ENSTA Bretagne.
Author: SBG Systems
Maintainer: SBG Systems
Contact: support@sbg-systems.com
Features
The driver supports all SBG systems sensors, IMUs, AHRS and INS, with a various degree of configurations available.
The driver supports the following features:
- Parse IMU/AHRS/INS/GNSS using the sbgECom protocol
- Publish standard ROS2 messages and more detailed specific SBG Systems topics
- Subscribe and forward RTCM data to support DGPS/RTK mode with centimeters-level accuracy
- Calibrate 2D/3D magnetic field using the on-board ELLIPSE algorithms
- Configure ELLIPSE products using yaml files (see note below)
[!NOTE] While the ROS2 drivers can be used with all SBG Systems sensors, the drivers can only be used to configure the Ellipse family. For other INS such as EKINOX, APOGEE and QUANTA, please use the sbgInsRestApi For the PULSE-40, please use the sbgEcom encapsulation of the sbgInsRestApi: see our Getting started Guide
Installation
Installation from Packages
User can install the sbg_ros2_driver through the standard ROS2 installation system.
- Humble
sudo apt-get install ros-humble-sbg-driver
- Galactic
sudo apt-get install ros-galactic-sbg-driver
- Foxy
sudo apt-get install ros-foxy-sbg-driver
Building from sources
Dependencies
- Robot Operating System (ROS2)
- sbgECom C Library (embeds v4.0.1987-stable - compatible with ELLIPSE firmware 2.5 and above)
Building
- Clone the repository (use a Release version)
- Build using the ROS2 colcon build system
cd colcon_ws/src
git clone https://github.com/SBG-Systems/sbg_ros2_driver.git
cd sbg_ros2_driver
rosdep update
rosdep install --from-path .
cd ../..
colcon build
source install/setup.bash
Usage
To run the default ROS2 node with the default configuration file
ros2 launch sbg_driver sbg_device_launch.py
To run the magnetic calibration node
ros2 launch sbg_driver sbg_device_mag_calibration_launch.py
Config files
Default config files
Every configuration file is defined according to the same structure.
-
sbg_device_uart_default.yaml
This config file is the default one for UART connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually or with the ROS2 node).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
-
sbg_device_udp_default.yaml
This config file is the default one for an UDP connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
Example config files
-
ellipse_A_default.yaml Default config file for an Ellipse-A.
-
ellipse_E_default.yaml Default config file for an Ellipse-E with an external NMEA GNSS.
-
ellipse_N_default.yaml Default config file for an Ellipse-N using internal GNSS.
-
ellipse_D_default.yaml Default config file for an Ellipse-D using internal GNSS.
Launch files
Default launch files
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/SBG-Systems/sbg_ros2.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-17 |
Dev Status | DEVELOPED |
Released | RELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
Name | Version |
---|---|
sbg_driver | 3.3.0 |
README
sbg_driver
ROS2 driver package for SBG Systems IMU, AHRS and INS.
This driver package uses the sbgECom binary protocol to read data and configure SBG Systems devices.
Initial work has been done by ENSTA Bretagne.
Author: SBG Systems
Maintainer: SBG Systems
Contact: support@sbg-systems.com
Features
The driver supports all SBG systems sensors, IMUs, AHRS and INS, with a various degree of configurations available.
The driver supports the following features:
- Parse IMU/AHRS/INS/GNSS using the sbgECom protocol
- Publish standard ROS2 messages and more detailed specific SBG Systems topics
- Subscribe and forward RTCM data to support DGPS/RTK mode with centimeters-level accuracy
- Calibrate 2D/3D magnetic field using the on-board ELLIPSE algorithms
- Configure ELLIPSE products using yaml files (see note below)
[!NOTE] While the ROS2 drivers can be used with all SBG Systems sensors, the drivers can only be used to configure the Ellipse family. For other INS such as EKINOX, APOGEE and QUANTA, please use the sbgInsRestApi For the PULSE-40, please use the sbgEcom encapsulation of the sbgInsRestApi: see our Getting started Guide
Installation
Installation from Packages
User can install the sbg_ros2_driver through the standard ROS2 installation system.
- Humble
sudo apt-get install ros-humble-sbg-driver
- Galactic
sudo apt-get install ros-galactic-sbg-driver
- Foxy
sudo apt-get install ros-foxy-sbg-driver
Building from sources
Dependencies
- Robot Operating System (ROS2)
- sbgECom C Library (embeds v4.0.1987-stable - compatible with ELLIPSE firmware 2.5 and above)
Building
- Clone the repository (use a Release version)
- Build using the ROS2 colcon build system
cd colcon_ws/src
git clone https://github.com/SBG-Systems/sbg_ros2_driver.git
cd sbg_ros2_driver
rosdep update
rosdep install --from-path .
cd ../..
colcon build
source install/setup.bash
Usage
To run the default ROS2 node with the default configuration file
ros2 launch sbg_driver sbg_device_launch.py
To run the magnetic calibration node
ros2 launch sbg_driver sbg_device_mag_calibration_launch.py
Config files
Default config files
Every configuration file is defined according to the same structure.
-
sbg_device_uart_default.yaml
This config file is the default one for UART connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually or with the ROS2 node).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
-
sbg_device_udp_default.yaml
This config file is the default one for an UDP connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
Example config files
-
ellipse_A_default.yaml Default config file for an Ellipse-A.
-
ellipse_E_default.yaml Default config file for an Ellipse-E with an external NMEA GNSS.
-
ellipse_N_default.yaml Default config file for an Ellipse-N using internal GNSS.
-
ellipse_D_default.yaml Default config file for an Ellipse-D using internal GNSS.
Launch files
Default launch files
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/SBG-Systems/sbg_ros2.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-17 |
Dev Status | DEVELOPED |
Released | RELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
Name | Version |
---|---|
sbg_driver | 3.3.0 |
README
sbg_driver
ROS2 driver package for SBG Systems IMU, AHRS and INS.
This driver package uses the sbgECom binary protocol to read data and configure SBG Systems devices.
Initial work has been done by ENSTA Bretagne.
Author: SBG Systems
Maintainer: SBG Systems
Contact: support@sbg-systems.com
Features
The driver supports all SBG systems sensors, IMUs, AHRS and INS, with a various degree of configurations available.
The driver supports the following features:
- Parse IMU/AHRS/INS/GNSS using the sbgECom protocol
- Publish standard ROS2 messages and more detailed specific SBG Systems topics
- Subscribe and forward RTCM data to support DGPS/RTK mode with centimeters-level accuracy
- Calibrate 2D/3D magnetic field using the on-board ELLIPSE algorithms
- Configure ELLIPSE products using yaml files (see note below)
[!NOTE] While the ROS2 drivers can be used with all SBG Systems sensors, the drivers can only be used to configure the Ellipse family. For other INS such as EKINOX, APOGEE and QUANTA, please use the sbgInsRestApi For the PULSE-40, please use the sbgEcom encapsulation of the sbgInsRestApi: see our Getting started Guide
Installation
Installation from Packages
User can install the sbg_ros2_driver through the standard ROS2 installation system.
- Humble
sudo apt-get install ros-humble-sbg-driver
- Galactic
sudo apt-get install ros-galactic-sbg-driver
- Foxy
sudo apt-get install ros-foxy-sbg-driver
Building from sources
Dependencies
- Robot Operating System (ROS2)
- sbgECom C Library (embeds v4.0.1987-stable - compatible with ELLIPSE firmware 2.5 and above)
Building
- Clone the repository (use a Release version)
- Build using the ROS2 colcon build system
cd colcon_ws/src
git clone https://github.com/SBG-Systems/sbg_ros2_driver.git
cd sbg_ros2_driver
rosdep update
rosdep install --from-path .
cd ../..
colcon build
source install/setup.bash
Usage
To run the default ROS2 node with the default configuration file
ros2 launch sbg_driver sbg_device_launch.py
To run the magnetic calibration node
ros2 launch sbg_driver sbg_device_mag_calibration_launch.py
Config files
Default config files
Every configuration file is defined according to the same structure.
-
sbg_device_uart_default.yaml
This config file is the default one for UART connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually or with the ROS2 node).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
-
sbg_device_udp_default.yaml
This config file is the default one for an UDP connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
Example config files
-
ellipse_A_default.yaml Default config file for an Ellipse-A.
-
ellipse_E_default.yaml Default config file for an Ellipse-E with an external NMEA GNSS.
-
ellipse_N_default.yaml Default config file for an Ellipse-N using internal GNSS.
-
ellipse_D_default.yaml Default config file for an Ellipse-D using internal GNSS.
Launch files
Default launch files
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/SBG-Systems/sbg_ros2.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-17 |
Dev Status | DEVELOPED |
Released | RELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
Name | Version |
---|---|
sbg_driver | 3.3.0 |
README
sbg_driver
ROS2 driver package for SBG Systems IMU, AHRS and INS.
This driver package uses the sbgECom binary protocol to read data and configure SBG Systems devices.
Initial work has been done by ENSTA Bretagne.
Author: SBG Systems
Maintainer: SBG Systems
Contact: support@sbg-systems.com
Features
The driver supports all SBG systems sensors, IMUs, AHRS and INS, with a various degree of configurations available.
The driver supports the following features:
- Parse IMU/AHRS/INS/GNSS using the sbgECom protocol
- Publish standard ROS2 messages and more detailed specific SBG Systems topics
- Subscribe and forward RTCM data to support DGPS/RTK mode with centimeters-level accuracy
- Calibrate 2D/3D magnetic field using the on-board ELLIPSE algorithms
- Configure ELLIPSE products using yaml files (see note below)
[!NOTE] While the ROS2 drivers can be used with all SBG Systems sensors, the drivers can only be used to configure the Ellipse family. For other INS such as EKINOX, APOGEE and QUANTA, please use the sbgInsRestApi For the PULSE-40, please use the sbgEcom encapsulation of the sbgInsRestApi: see our Getting started Guide
Installation
Installation from Packages
User can install the sbg_ros2_driver through the standard ROS2 installation system.
- Humble
sudo apt-get install ros-humble-sbg-driver
- Galactic
sudo apt-get install ros-galactic-sbg-driver
- Foxy
sudo apt-get install ros-foxy-sbg-driver
Building from sources
Dependencies
- Robot Operating System (ROS2)
- sbgECom C Library (embeds v4.0.1987-stable - compatible with ELLIPSE firmware 2.5 and above)
Building
- Clone the repository (use a Release version)
- Build using the ROS2 colcon build system
cd colcon_ws/src
git clone https://github.com/SBG-Systems/sbg_ros2_driver.git
cd sbg_ros2_driver
rosdep update
rosdep install --from-path .
cd ../..
colcon build
source install/setup.bash
Usage
To run the default ROS2 node with the default configuration file
ros2 launch sbg_driver sbg_device_launch.py
To run the magnetic calibration node
ros2 launch sbg_driver sbg_device_mag_calibration_launch.py
Config files
Default config files
Every configuration file is defined according to the same structure.
-
sbg_device_uart_default.yaml
This config file is the default one for UART connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually or with the ROS2 node).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
-
sbg_device_udp_default.yaml
This config file is the default one for an UDP connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
Example config files
-
ellipse_A_default.yaml Default config file for an Ellipse-A.
-
ellipse_E_default.yaml Default config file for an Ellipse-E with an external NMEA GNSS.
-
ellipse_N_default.yaml Default config file for an Ellipse-N using internal GNSS.
-
ellipse_D_default.yaml Default config file for an Ellipse-D using internal GNSS.
Launch files
Default launch files
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/SBG-Systems/sbg_ros2.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-17 |
Dev Status | DEVELOPED |
Released | RELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
Name | Version |
---|---|
sbg_driver | 3.3.0 |
README
sbg_driver
ROS2 driver package for SBG Systems IMU, AHRS and INS.
This driver package uses the sbgECom binary protocol to read data and configure SBG Systems devices.
Initial work has been done by ENSTA Bretagne.
Author: SBG Systems
Maintainer: SBG Systems
Contact: support@sbg-systems.com
Features
The driver supports all SBG systems sensors, IMUs, AHRS and INS, with a various degree of configurations available.
The driver supports the following features:
- Parse IMU/AHRS/INS/GNSS using the sbgECom protocol
- Publish standard ROS2 messages and more detailed specific SBG Systems topics
- Subscribe and forward RTCM data to support DGPS/RTK mode with centimeters-level accuracy
- Calibrate 2D/3D magnetic field using the on-board ELLIPSE algorithms
- Configure ELLIPSE products using yaml files (see note below)
[!NOTE] While the ROS2 drivers can be used with all SBG Systems sensors, the drivers can only be used to configure the Ellipse family. For other INS such as EKINOX, APOGEE and QUANTA, please use the sbgInsRestApi For the PULSE-40, please use the sbgEcom encapsulation of the sbgInsRestApi: see our Getting started Guide
Installation
Installation from Packages
User can install the sbg_ros2_driver through the standard ROS2 installation system.
- Humble
sudo apt-get install ros-humble-sbg-driver
- Galactic
sudo apt-get install ros-galactic-sbg-driver
- Foxy
sudo apt-get install ros-foxy-sbg-driver
Building from sources
Dependencies
- Robot Operating System (ROS2)
- sbgECom C Library (embeds v4.0.1987-stable - compatible with ELLIPSE firmware 2.5 and above)
Building
- Clone the repository (use a Release version)
- Build using the ROS2 colcon build system
cd colcon_ws/src
git clone https://github.com/SBG-Systems/sbg_ros2_driver.git
cd sbg_ros2_driver
rosdep update
rosdep install --from-path .
cd ../..
colcon build
source install/setup.bash
Usage
To run the default ROS2 node with the default configuration file
ros2 launch sbg_driver sbg_device_launch.py
To run the magnetic calibration node
ros2 launch sbg_driver sbg_device_mag_calibration_launch.py
Config files
Default config files
Every configuration file is defined according to the same structure.
-
sbg_device_uart_default.yaml
This config file is the default one for UART connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually or with the ROS2 node).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
-
sbg_device_udp_default.yaml
This config file is the default one for an UDP connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
Example config files
-
ellipse_A_default.yaml Default config file for an Ellipse-A.
-
ellipse_E_default.yaml Default config file for an Ellipse-E with an external NMEA GNSS.
-
ellipse_N_default.yaml Default config file for an Ellipse-N using internal GNSS.
-
ellipse_D_default.yaml Default config file for an Ellipse-D using internal GNSS.
Launch files
Default launch files
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/SBG-Systems/sbg_ros2.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-17 |
Dev Status | DEVELOPED |
Released | RELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
Name | Version |
---|---|
sbg_driver | 3.3.0 |
README
sbg_driver
ROS2 driver package for SBG Systems IMU, AHRS and INS.
This driver package uses the sbgECom binary protocol to read data and configure SBG Systems devices.
Initial work has been done by ENSTA Bretagne.
Author: SBG Systems
Maintainer: SBG Systems
Contact: support@sbg-systems.com
Features
The driver supports all SBG systems sensors, IMUs, AHRS and INS, with a various degree of configurations available.
The driver supports the following features:
- Parse IMU/AHRS/INS/GNSS using the sbgECom protocol
- Publish standard ROS2 messages and more detailed specific SBG Systems topics
- Subscribe and forward RTCM data to support DGPS/RTK mode with centimeters-level accuracy
- Calibrate 2D/3D magnetic field using the on-board ELLIPSE algorithms
- Configure ELLIPSE products using yaml files (see note below)
[!NOTE] While the ROS2 drivers can be used with all SBG Systems sensors, the drivers can only be used to configure the Ellipse family. For other INS such as EKINOX, APOGEE and QUANTA, please use the sbgInsRestApi For the PULSE-40, please use the sbgEcom encapsulation of the sbgInsRestApi: see our Getting started Guide
Installation
Installation from Packages
User can install the sbg_ros2_driver through the standard ROS2 installation system.
- Humble
sudo apt-get install ros-humble-sbg-driver
- Galactic
sudo apt-get install ros-galactic-sbg-driver
- Foxy
sudo apt-get install ros-foxy-sbg-driver
Building from sources
Dependencies
- Robot Operating System (ROS2)
- sbgECom C Library (embeds v4.0.1987-stable - compatible with ELLIPSE firmware 2.5 and above)
Building
- Clone the repository (use a Release version)
- Build using the ROS2 colcon build system
cd colcon_ws/src
git clone https://github.com/SBG-Systems/sbg_ros2_driver.git
cd sbg_ros2_driver
rosdep update
rosdep install --from-path .
cd ../..
colcon build
source install/setup.bash
Usage
To run the default ROS2 node with the default configuration file
ros2 launch sbg_driver sbg_device_launch.py
To run the magnetic calibration node
ros2 launch sbg_driver sbg_device_mag_calibration_launch.py
Config files
Default config files
Every configuration file is defined according to the same structure.
-
sbg_device_uart_default.yaml
This config file is the default one for UART connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually or with the ROS2 node).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
-
sbg_device_udp_default.yaml
This config file is the default one for an UDP connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
Example config files
-
ellipse_A_default.yaml Default config file for an Ellipse-A.
-
ellipse_E_default.yaml Default config file for an Ellipse-E with an external NMEA GNSS.
-
ellipse_N_default.yaml Default config file for an Ellipse-N using internal GNSS.
-
ellipse_D_default.yaml Default config file for an Ellipse-D using internal GNSS.
Launch files
Default launch files
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/SBG-Systems/sbg_ros2.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-17 |
Dev Status | DEVELOPED |
Released | RELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
Name | Version |
---|---|
sbg_driver | 3.3.0 |
README
sbg_driver
ROS2 driver package for SBG Systems IMU, AHRS and INS.
This driver package uses the sbgECom binary protocol to read data and configure SBG Systems devices.
Initial work has been done by ENSTA Bretagne.
Author: SBG Systems
Maintainer: SBG Systems
Contact: support@sbg-systems.com
Features
The driver supports all SBG systems sensors, IMUs, AHRS and INS, with a various degree of configurations available.
The driver supports the following features:
- Parse IMU/AHRS/INS/GNSS using the sbgECom protocol
- Publish standard ROS2 messages and more detailed specific SBG Systems topics
- Subscribe and forward RTCM data to support DGPS/RTK mode with centimeters-level accuracy
- Calibrate 2D/3D magnetic field using the on-board ELLIPSE algorithms
- Configure ELLIPSE products using yaml files (see note below)
[!NOTE] While the ROS2 drivers can be used with all SBG Systems sensors, the drivers can only be used to configure the Ellipse family. For other INS such as EKINOX, APOGEE and QUANTA, please use the sbgInsRestApi For the PULSE-40, please use the sbgEcom encapsulation of the sbgInsRestApi: see our Getting started Guide
Installation
Installation from Packages
User can install the sbg_ros2_driver through the standard ROS2 installation system.
- Humble
sudo apt-get install ros-humble-sbg-driver
- Galactic
sudo apt-get install ros-galactic-sbg-driver
- Foxy
sudo apt-get install ros-foxy-sbg-driver
Building from sources
Dependencies
- Robot Operating System (ROS2)
- sbgECom C Library (embeds v4.0.1987-stable - compatible with ELLIPSE firmware 2.5 and above)
Building
- Clone the repository (use a Release version)
- Build using the ROS2 colcon build system
cd colcon_ws/src
git clone https://github.com/SBG-Systems/sbg_ros2_driver.git
cd sbg_ros2_driver
rosdep update
rosdep install --from-path .
cd ../..
colcon build
source install/setup.bash
Usage
To run the default ROS2 node with the default configuration file
ros2 launch sbg_driver sbg_device_launch.py
To run the magnetic calibration node
ros2 launch sbg_driver sbg_device_mag_calibration_launch.py
Config files
Default config files
Every configuration file is defined according to the same structure.
-
sbg_device_uart_default.yaml
This config file is the default one for UART connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually or with the ROS2 node).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
-
sbg_device_udp_default.yaml
This config file is the default one for an UDP connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
Example config files
-
ellipse_A_default.yaml Default config file for an Ellipse-A.
-
ellipse_E_default.yaml Default config file for an Ellipse-E with an external NMEA GNSS.
-
ellipse_N_default.yaml Default config file for an Ellipse-N using internal GNSS.
-
ellipse_D_default.yaml Default config file for an Ellipse-D using internal GNSS.
Launch files
Default launch files
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/SBG-Systems/sbg_ros2.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-17 |
Dev Status | DEVELOPED |
Released | RELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
Name | Version |
---|---|
sbg_driver | 3.3.0 |
README
sbg_driver
ROS2 driver package for SBG Systems IMU, AHRS and INS.
This driver package uses the sbgECom binary protocol to read data and configure SBG Systems devices.
Initial work has been done by ENSTA Bretagne.
Author: SBG Systems
Maintainer: SBG Systems
Contact: support@sbg-systems.com
Features
The driver supports all SBG systems sensors, IMUs, AHRS and INS, with a various degree of configurations available.
The driver supports the following features:
- Parse IMU/AHRS/INS/GNSS using the sbgECom protocol
- Publish standard ROS2 messages and more detailed specific SBG Systems topics
- Subscribe and forward RTCM data to support DGPS/RTK mode with centimeters-level accuracy
- Calibrate 2D/3D magnetic field using the on-board ELLIPSE algorithms
- Configure ELLIPSE products using yaml files (see note below)
[!NOTE] While the ROS2 drivers can be used with all SBG Systems sensors, the drivers can only be used to configure the Ellipse family. For other INS such as EKINOX, APOGEE and QUANTA, please use the sbgInsRestApi For the PULSE-40, please use the sbgEcom encapsulation of the sbgInsRestApi: see our Getting started Guide
Installation
Installation from Packages
User can install the sbg_ros2_driver through the standard ROS2 installation system.
- Humble
sudo apt-get install ros-humble-sbg-driver
- Galactic
sudo apt-get install ros-galactic-sbg-driver
- Foxy
sudo apt-get install ros-foxy-sbg-driver
Building from sources
Dependencies
- Robot Operating System (ROS2)
- sbgECom C Library (embeds v4.0.1987-stable - compatible with ELLIPSE firmware 2.5 and above)
Building
- Clone the repository (use a Release version)
- Build using the ROS2 colcon build system
cd colcon_ws/src
git clone https://github.com/SBG-Systems/sbg_ros2_driver.git
cd sbg_ros2_driver
rosdep update
rosdep install --from-path .
cd ../..
colcon build
source install/setup.bash
Usage
To run the default ROS2 node with the default configuration file
ros2 launch sbg_driver sbg_device_launch.py
To run the magnetic calibration node
ros2 launch sbg_driver sbg_device_mag_calibration_launch.py
Config files
Default config files
Every configuration file is defined according to the same structure.
-
sbg_device_uart_default.yaml
This config file is the default one for UART connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually or with the ROS2 node).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
-
sbg_device_udp_default.yaml
This config file is the default one for an UDP connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
Example config files
-
ellipse_A_default.yaml Default config file for an Ellipse-A.
-
ellipse_E_default.yaml Default config file for an Ellipse-E with an external NMEA GNSS.
-
ellipse_N_default.yaml Default config file for an Ellipse-N using internal GNSS.
-
ellipse_D_default.yaml Default config file for an Ellipse-D using internal GNSS.
Launch files
Default launch files
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/SBG-Systems/sbg_ros2.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-17 |
Dev Status | DEVELOPED |
Released | RELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
Name | Version |
---|---|
sbg_driver | 3.3.0 |
README
sbg_driver
ROS2 driver package for SBG Systems IMU, AHRS and INS.
This driver package uses the sbgECom binary protocol to read data and configure SBG Systems devices.
Initial work has been done by ENSTA Bretagne.
Author: SBG Systems
Maintainer: SBG Systems
Contact: support@sbg-systems.com
Features
The driver supports all SBG systems sensors, IMUs, AHRS and INS, with a various degree of configurations available.
The driver supports the following features:
- Parse IMU/AHRS/INS/GNSS using the sbgECom protocol
- Publish standard ROS2 messages and more detailed specific SBG Systems topics
- Subscribe and forward RTCM data to support DGPS/RTK mode with centimeters-level accuracy
- Calibrate 2D/3D magnetic field using the on-board ELLIPSE algorithms
- Configure ELLIPSE products using yaml files (see note below)
[!NOTE] While the ROS2 drivers can be used with all SBG Systems sensors, the drivers can only be used to configure the Ellipse family. For other INS such as EKINOX, APOGEE and QUANTA, please use the sbgInsRestApi For the PULSE-40, please use the sbgEcom encapsulation of the sbgInsRestApi: see our Getting started Guide
Installation
Installation from Packages
User can install the sbg_ros2_driver through the standard ROS2 installation system.
- Humble
sudo apt-get install ros-humble-sbg-driver
- Galactic
sudo apt-get install ros-galactic-sbg-driver
- Foxy
sudo apt-get install ros-foxy-sbg-driver
Building from sources
Dependencies
- Robot Operating System (ROS2)
- sbgECom C Library (embeds v4.0.1987-stable - compatible with ELLIPSE firmware 2.5 and above)
Building
- Clone the repository (use a Release version)
- Build using the ROS2 colcon build system
cd colcon_ws/src
git clone https://github.com/SBG-Systems/sbg_ros2_driver.git
cd sbg_ros2_driver
rosdep update
rosdep install --from-path .
cd ../..
colcon build
source install/setup.bash
Usage
To run the default ROS2 node with the default configuration file
ros2 launch sbg_driver sbg_device_launch.py
To run the magnetic calibration node
ros2 launch sbg_driver sbg_device_mag_calibration_launch.py
Config files
Default config files
Every configuration file is defined according to the same structure.
-
sbg_device_uart_default.yaml
This config file is the default one for UART connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually or with the ROS2 node).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
-
sbg_device_udp_default.yaml
This config file is the default one for an UDP connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
Example config files
-
ellipse_A_default.yaml Default config file for an Ellipse-A.
-
ellipse_E_default.yaml Default config file for an Ellipse-E with an external NMEA GNSS.
-
ellipse_N_default.yaml Default config file for an Ellipse-N using internal GNSS.
-
ellipse_D_default.yaml Default config file for an Ellipse-D using internal GNSS.
Launch files
Default launch files
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/SBG-Systems/sbg_ros2.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-17 |
Dev Status | DEVELOPED |
Released | RELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
Name | Version |
---|---|
sbg_driver | 3.3.0 |
README
sbg_driver
ROS2 driver package for SBG Systems IMU, AHRS and INS.
This driver package uses the sbgECom binary protocol to read data and configure SBG Systems devices.
Initial work has been done by ENSTA Bretagne.
Author: SBG Systems
Maintainer: SBG Systems
Contact: support@sbg-systems.com
Features
The driver supports all SBG systems sensors, IMUs, AHRS and INS, with a various degree of configurations available.
The driver supports the following features:
- Parse IMU/AHRS/INS/GNSS using the sbgECom protocol
- Publish standard ROS2 messages and more detailed specific SBG Systems topics
- Subscribe and forward RTCM data to support DGPS/RTK mode with centimeters-level accuracy
- Calibrate 2D/3D magnetic field using the on-board ELLIPSE algorithms
- Configure ELLIPSE products using yaml files (see note below)
[!NOTE] While the ROS2 drivers can be used with all SBG Systems sensors, the drivers can only be used to configure the Ellipse family. For other INS such as EKINOX, APOGEE and QUANTA, please use the sbgInsRestApi For the PULSE-40, please use the sbgEcom encapsulation of the sbgInsRestApi: see our Getting started Guide
Installation
Installation from Packages
User can install the sbg_ros2_driver through the standard ROS2 installation system.
- Humble
sudo apt-get install ros-humble-sbg-driver
- Galactic
sudo apt-get install ros-galactic-sbg-driver
- Foxy
sudo apt-get install ros-foxy-sbg-driver
Building from sources
Dependencies
- Robot Operating System (ROS2)
- sbgECom C Library (embeds v4.0.1987-stable - compatible with ELLIPSE firmware 2.5 and above)
Building
- Clone the repository (use a Release version)
- Build using the ROS2 colcon build system
cd colcon_ws/src
git clone https://github.com/SBG-Systems/sbg_ros2_driver.git
cd sbg_ros2_driver
rosdep update
rosdep install --from-path .
cd ../..
colcon build
source install/setup.bash
Usage
To run the default ROS2 node with the default configuration file
ros2 launch sbg_driver sbg_device_launch.py
To run the magnetic calibration node
ros2 launch sbg_driver sbg_device_mag_calibration_launch.py
Config files
Default config files
Every configuration file is defined according to the same structure.
-
sbg_device_uart_default.yaml
This config file is the default one for UART connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually or with the ROS2 node).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
-
sbg_device_udp_default.yaml
This config file is the default one for an UDP connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
Example config files
-
ellipse_A_default.yaml Default config file for an Ellipse-A.
-
ellipse_E_default.yaml Default config file for an Ellipse-E with an external NMEA GNSS.
-
ellipse_N_default.yaml Default config file for an Ellipse-N using internal GNSS.
-
ellipse_D_default.yaml Default config file for an Ellipse-D using internal GNSS.
Launch files
Default launch files
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/SBG-Systems/sbg_ros2.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-17 |
Dev Status | DEVELOPED |
Released | RELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
Name | Version |
---|---|
sbg_driver | 3.3.0 |
README
sbg_driver
ROS2 driver package for SBG Systems IMU, AHRS and INS.
This driver package uses the sbgECom binary protocol to read data and configure SBG Systems devices.
Initial work has been done by ENSTA Bretagne.
Author: SBG Systems
Maintainer: SBG Systems
Contact: support@sbg-systems.com
Features
The driver supports all SBG systems sensors, IMUs, AHRS and INS, with a various degree of configurations available.
The driver supports the following features:
- Parse IMU/AHRS/INS/GNSS using the sbgECom protocol
- Publish standard ROS2 messages and more detailed specific SBG Systems topics
- Subscribe and forward RTCM data to support DGPS/RTK mode with centimeters-level accuracy
- Calibrate 2D/3D magnetic field using the on-board ELLIPSE algorithms
- Configure ELLIPSE products using yaml files (see note below)
[!NOTE] While the ROS2 drivers can be used with all SBG Systems sensors, the drivers can only be used to configure the Ellipse family. For other INS such as EKINOX, APOGEE and QUANTA, please use the sbgInsRestApi For the PULSE-40, please use the sbgEcom encapsulation of the sbgInsRestApi: see our Getting started Guide
Installation
Installation from Packages
User can install the sbg_ros2_driver through the standard ROS2 installation system.
- Humble
sudo apt-get install ros-humble-sbg-driver
- Galactic
sudo apt-get install ros-galactic-sbg-driver
- Foxy
sudo apt-get install ros-foxy-sbg-driver
Building from sources
Dependencies
- Robot Operating System (ROS2)
- sbgECom C Library (embeds v4.0.1987-stable - compatible with ELLIPSE firmware 2.5 and above)
Building
- Clone the repository (use a Release version)
- Build using the ROS2 colcon build system
cd colcon_ws/src
git clone https://github.com/SBG-Systems/sbg_ros2_driver.git
cd sbg_ros2_driver
rosdep update
rosdep install --from-path .
cd ../..
colcon build
source install/setup.bash
Usage
To run the default ROS2 node with the default configuration file
ros2 launch sbg_driver sbg_device_launch.py
To run the magnetic calibration node
ros2 launch sbg_driver sbg_device_mag_calibration_launch.py
Config files
Default config files
Every configuration file is defined according to the same structure.
-
sbg_device_uart_default.yaml
This config file is the default one for UART connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually or with the ROS2 node).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
-
sbg_device_udp_default.yaml
This config file is the default one for an UDP connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
Example config files
-
ellipse_A_default.yaml Default config file for an Ellipse-A.
-
ellipse_E_default.yaml Default config file for an Ellipse-E with an external NMEA GNSS.
-
ellipse_N_default.yaml Default config file for an Ellipse-N using internal GNSS.
-
ellipse_D_default.yaml Default config file for an Ellipse-D using internal GNSS.
Launch files
Default launch files
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/SBG-Systems/sbg_ros_driver.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-17 |
Dev Status | DEVELOPED |
Released | RELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
Name | Version |
---|---|
sbg_driver | 3.2.1 |
README
⚠️ End of Life Notice
This package targets ROS1, which has reached End of Life (EOL) as of May 2025.
As a result, this driver is no longer maintained or supported.
We recommend migrating to the ROS2 version of this driver for continued updates, compatibility, and support.
sbg_driver
ROS driver package for SBG Systems IMU, AHRS and INS.
This driver package uses the sbgECom binary protocol to read data and configure SBG Systems devices.
Initial work has been done by ENSTA Bretagne.
Author: SBG Systems
Maintainer: SBG Systems
Contact: support@sbg-systems.com
Features
The driver supports the following features:
- Configure ELLIPSE products using yaml files (see note below)
- Parse IMU/AHRS/INS/GNSS using the sbgECom protocol
- Publish standard ROS messages and more detailed specific SBG Systems topics
- Subscribe and forward RTCM data to support DGPS/RTK mode with centimeters-level accuracy
- Calibrate 2D/3D magnetic field using the on-board ELLIPSE algorithms
[!NOTE] Only ELLIPSE devices can be configured from the ROS driver. For High Performance INS such as EKINOX, APOGEE and QUANTA, please use the sbgInsRestApi
Installation
Installation from Packages
User can install the sbg_ros_driver through the standard ROS installation system.
- Noetic
sudo apt-get install ros-noetic-sbg-driver
Building from sources
Dependencies
- Robot Operating System (ROS)
- sbgECom C Library (embeds v1.11.920-stable - compatible with ELLIPSE firmware above 1.7)
- Boost C++ Library
Building
- Clone the repository (use a Release version)
cd catkin_ws/src
git clone -b master https://github.com/SBG-Systems/sbg_ros_driver.git
- Install dependencies
cd ..
rosdep install --from-paths src --ignore-src -r -y
- Build using the normal ROS catkin build system
source /opt/ros/${ROS_DISTRO}/setup.bash
catkin_make
Usage
Source the generated setup environment
source devel/setup.bash
To run the default Ros node with the default configuration
roslaunch sbg_driver sbg_device.launch
To run the magnetic calibration node
roslaunch sbg_driver sbg_device_mag_calibration.launch
Config files
Default config files
Every configuration file is defined according to the same structure.
-
sbg_device_uart_default.yaml
This config file is the default one for UART connection with the device.
It does not configure the device through the ROS node, so it has to be previously configured (manually or with the ROS node).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
-
sbg_device_udp_default.yaml
This config file is the default one for an Udp connection with the device.
It does not configure the device through the ROS node, so it has to be previously configured (manually or with the ROS node).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/SBG-Systems/sbg_ros2.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-17 |
Dev Status | DEVELOPED |
Released | RELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
Name | Version |
---|---|
sbg_driver | 3.3.0 |
README
sbg_driver
ROS2 driver package for SBG Systems IMU, AHRS and INS.
This driver package uses the sbgECom binary protocol to read data and configure SBG Systems devices.
Initial work has been done by ENSTA Bretagne.
Author: SBG Systems
Maintainer: SBG Systems
Contact: support@sbg-systems.com
Features
The driver supports all SBG systems sensors, IMUs, AHRS and INS, with a various degree of configurations available.
The driver supports the following features:
- Parse IMU/AHRS/INS/GNSS using the sbgECom protocol
- Publish standard ROS2 messages and more detailed specific SBG Systems topics
- Subscribe and forward RTCM data to support DGPS/RTK mode with centimeters-level accuracy
- Calibrate 2D/3D magnetic field using the on-board ELLIPSE algorithms
- Configure ELLIPSE products using yaml files (see note below)
[!NOTE] While the ROS2 drivers can be used with all SBG Systems sensors, the drivers can only be used to configure the Ellipse family. For other INS such as EKINOX, APOGEE and QUANTA, please use the sbgInsRestApi For the PULSE-40, please use the sbgEcom encapsulation of the sbgInsRestApi: see our Getting started Guide
Installation
Installation from Packages
User can install the sbg_ros2_driver through the standard ROS2 installation system.
- Humble
sudo apt-get install ros-humble-sbg-driver
- Galactic
sudo apt-get install ros-galactic-sbg-driver
- Foxy
sudo apt-get install ros-foxy-sbg-driver
Building from sources
Dependencies
- Robot Operating System (ROS2)
- sbgECom C Library (embeds v4.0.1987-stable - compatible with ELLIPSE firmware 2.5 and above)
Building
- Clone the repository (use a Release version)
- Build using the ROS2 colcon build system
cd colcon_ws/src
git clone https://github.com/SBG-Systems/sbg_ros2_driver.git
cd sbg_ros2_driver
rosdep update
rosdep install --from-path .
cd ../..
colcon build
source install/setup.bash
Usage
To run the default ROS2 node with the default configuration file
ros2 launch sbg_driver sbg_device_launch.py
To run the magnetic calibration node
ros2 launch sbg_driver sbg_device_mag_calibration_launch.py
Config files
Default config files
Every configuration file is defined according to the same structure.
-
sbg_device_uart_default.yaml
This config file is the default one for UART connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually or with the ROS2 node).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
-
sbg_device_udp_default.yaml
This config file is the default one for an UDP connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
Example config files
-
ellipse_A_default.yaml Default config file for an Ellipse-A.
-
ellipse_E_default.yaml Default config file for an Ellipse-E with an external NMEA GNSS.
-
ellipse_N_default.yaml Default config file for an Ellipse-N using internal GNSS.
-
ellipse_D_default.yaml Default config file for an Ellipse-D using internal GNSS.
Launch files
Default launch files
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/SBG-Systems/sbg_ros2.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-17 |
Dev Status | DEVELOPED |
Released | RELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
Name | Version |
---|---|
sbg_driver | 3.3.0 |
README
sbg_driver
ROS2 driver package for SBG Systems IMU, AHRS and INS.
This driver package uses the sbgECom binary protocol to read data and configure SBG Systems devices.
Initial work has been done by ENSTA Bretagne.
Author: SBG Systems
Maintainer: SBG Systems
Contact: support@sbg-systems.com
Features
The driver supports all SBG systems sensors, IMUs, AHRS and INS, with a various degree of configurations available.
The driver supports the following features:
- Parse IMU/AHRS/INS/GNSS using the sbgECom protocol
- Publish standard ROS2 messages and more detailed specific SBG Systems topics
- Subscribe and forward RTCM data to support DGPS/RTK mode with centimeters-level accuracy
- Calibrate 2D/3D magnetic field using the on-board ELLIPSE algorithms
- Configure ELLIPSE products using yaml files (see note below)
[!NOTE] While the ROS2 drivers can be used with all SBG Systems sensors, the drivers can only be used to configure the Ellipse family. For other INS such as EKINOX, APOGEE and QUANTA, please use the sbgInsRestApi For the PULSE-40, please use the sbgEcom encapsulation of the sbgInsRestApi: see our Getting started Guide
Installation
Installation from Packages
User can install the sbg_ros2_driver through the standard ROS2 installation system.
- Humble
sudo apt-get install ros-humble-sbg-driver
- Galactic
sudo apt-get install ros-galactic-sbg-driver
- Foxy
sudo apt-get install ros-foxy-sbg-driver
Building from sources
Dependencies
- Robot Operating System (ROS2)
- sbgECom C Library (embeds v4.0.1987-stable - compatible with ELLIPSE firmware 2.5 and above)
Building
- Clone the repository (use a Release version)
- Build using the ROS2 colcon build system
cd colcon_ws/src
git clone https://github.com/SBG-Systems/sbg_ros2_driver.git
cd sbg_ros2_driver
rosdep update
rosdep install --from-path .
cd ../..
colcon build
source install/setup.bash
Usage
To run the default ROS2 node with the default configuration file
ros2 launch sbg_driver sbg_device_launch.py
To run the magnetic calibration node
ros2 launch sbg_driver sbg_device_mag_calibration_launch.py
Config files
Default config files
Every configuration file is defined according to the same structure.
-
sbg_device_uart_default.yaml
This config file is the default one for UART connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually or with the ROS2 node).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
-
sbg_device_udp_default.yaml
This config file is the default one for an UDP connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
Example config files
-
ellipse_A_default.yaml Default config file for an Ellipse-A.
-
ellipse_E_default.yaml Default config file for an Ellipse-E with an external NMEA GNSS.
-
ellipse_N_default.yaml Default config file for an Ellipse-N using internal GNSS.
-
ellipse_D_default.yaml Default config file for an Ellipse-D using internal GNSS.
Launch files
Default launch files
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/SBG-Systems/sbg_ros2.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-17 |
Dev Status | DEVELOPED |
Released | RELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
Name | Version |
---|---|
sbg_driver | 3.3.0 |
README
sbg_driver
ROS2 driver package for SBG Systems IMU, AHRS and INS.
This driver package uses the sbgECom binary protocol to read data and configure SBG Systems devices.
Initial work has been done by ENSTA Bretagne.
Author: SBG Systems
Maintainer: SBG Systems
Contact: support@sbg-systems.com
Features
The driver supports all SBG systems sensors, IMUs, AHRS and INS, with a various degree of configurations available.
The driver supports the following features:
- Parse IMU/AHRS/INS/GNSS using the sbgECom protocol
- Publish standard ROS2 messages and more detailed specific SBG Systems topics
- Subscribe and forward RTCM data to support DGPS/RTK mode with centimeters-level accuracy
- Calibrate 2D/3D magnetic field using the on-board ELLIPSE algorithms
- Configure ELLIPSE products using yaml files (see note below)
[!NOTE] While the ROS2 drivers can be used with all SBG Systems sensors, the drivers can only be used to configure the Ellipse family. For other INS such as EKINOX, APOGEE and QUANTA, please use the sbgInsRestApi For the PULSE-40, please use the sbgEcom encapsulation of the sbgInsRestApi: see our Getting started Guide
Installation
Installation from Packages
User can install the sbg_ros2_driver through the standard ROS2 installation system.
- Humble
sudo apt-get install ros-humble-sbg-driver
- Galactic
sudo apt-get install ros-galactic-sbg-driver
- Foxy
sudo apt-get install ros-foxy-sbg-driver
Building from sources
Dependencies
- Robot Operating System (ROS2)
- sbgECom C Library (embeds v4.0.1987-stable - compatible with ELLIPSE firmware 2.5 and above)
Building
- Clone the repository (use a Release version)
- Build using the ROS2 colcon build system
cd colcon_ws/src
git clone https://github.com/SBG-Systems/sbg_ros2_driver.git
cd sbg_ros2_driver
rosdep update
rosdep install --from-path .
cd ../..
colcon build
source install/setup.bash
Usage
To run the default ROS2 node with the default configuration file
ros2 launch sbg_driver sbg_device_launch.py
To run the magnetic calibration node
ros2 launch sbg_driver sbg_device_mag_calibration_launch.py
Config files
Default config files
Every configuration file is defined according to the same structure.
-
sbg_device_uart_default.yaml
This config file is the default one for UART connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually or with the ROS2 node).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
-
sbg_device_udp_default.yaml
This config file is the default one for an UDP connection with the device.
It does not configure the device through the ROS2 node, so it has to be previously configured (manually).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS2 standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
Example config files
-
ellipse_A_default.yaml Default config file for an Ellipse-A.
-
ellipse_E_default.yaml Default config file for an Ellipse-E with an external NMEA GNSS.
-
ellipse_N_default.yaml Default config file for an Ellipse-N using internal GNSS.
-
ellipse_D_default.yaml Default config file for an Ellipse-D using internal GNSS.
Launch files
Default launch files
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/SBG-Systems/sbg_ros_driver.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-17 |
Dev Status | DEVELOPED |
Released | RELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
Name | Version |
---|---|
sbg_driver | 3.2.1 |
README
⚠️ End of Life Notice
This package targets ROS1, which has reached End of Life (EOL) as of May 2025.
As a result, this driver is no longer maintained or supported.
We recommend migrating to the ROS2 version of this driver for continued updates, compatibility, and support.
sbg_driver
ROS driver package for SBG Systems IMU, AHRS and INS.
This driver package uses the sbgECom binary protocol to read data and configure SBG Systems devices.
Initial work has been done by ENSTA Bretagne.
Author: SBG Systems
Maintainer: SBG Systems
Contact: support@sbg-systems.com
Features
The driver supports the following features:
- Configure ELLIPSE products using yaml files (see note below)
- Parse IMU/AHRS/INS/GNSS using the sbgECom protocol
- Publish standard ROS messages and more detailed specific SBG Systems topics
- Subscribe and forward RTCM data to support DGPS/RTK mode with centimeters-level accuracy
- Calibrate 2D/3D magnetic field using the on-board ELLIPSE algorithms
[!NOTE] Only ELLIPSE devices can be configured from the ROS driver. For High Performance INS such as EKINOX, APOGEE and QUANTA, please use the sbgInsRestApi
Installation
Installation from Packages
User can install the sbg_ros_driver through the standard ROS installation system.
- Noetic
sudo apt-get install ros-noetic-sbg-driver
Building from sources
Dependencies
- Robot Operating System (ROS)
- sbgECom C Library (embeds v1.11.920-stable - compatible with ELLIPSE firmware above 1.7)
- Boost C++ Library
Building
- Clone the repository (use a Release version)
cd catkin_ws/src
git clone -b master https://github.com/SBG-Systems/sbg_ros_driver.git
- Install dependencies
cd ..
rosdep install --from-paths src --ignore-src -r -y
- Build using the normal ROS catkin build system
source /opt/ros/${ROS_DISTRO}/setup.bash
catkin_make
Usage
Source the generated setup environment
source devel/setup.bash
To run the default Ros node with the default configuration
roslaunch sbg_driver sbg_device.launch
To run the magnetic calibration node
roslaunch sbg_driver sbg_device_mag_calibration.launch
Config files
Default config files
Every configuration file is defined according to the same structure.
-
sbg_device_uart_default.yaml
This config file is the default one for UART connection with the device.
It does not configure the device through the ROS node, so it has to be previously configured (manually or with the ROS node).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
-
sbg_device_udp_default.yaml
This config file is the default one for an Udp connection with the device.
It does not configure the device through the ROS node, so it has to be previously configured (manually or with the ROS node).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/SBG-Systems/sbg_ros_driver.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-17 |
Dev Status | DEVELOPED |
Released | RELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
Name | Version |
---|---|
sbg_driver | 3.2.1 |
README
⚠️ End of Life Notice
This package targets ROS1, which has reached End of Life (EOL) as of May 2025.
As a result, this driver is no longer maintained or supported.
We recommend migrating to the ROS2 version of this driver for continued updates, compatibility, and support.
sbg_driver
ROS driver package for SBG Systems IMU, AHRS and INS.
This driver package uses the sbgECom binary protocol to read data and configure SBG Systems devices.
Initial work has been done by ENSTA Bretagne.
Author: SBG Systems
Maintainer: SBG Systems
Contact: support@sbg-systems.com
Features
The driver supports the following features:
- Configure ELLIPSE products using yaml files (see note below)
- Parse IMU/AHRS/INS/GNSS using the sbgECom protocol
- Publish standard ROS messages and more detailed specific SBG Systems topics
- Subscribe and forward RTCM data to support DGPS/RTK mode with centimeters-level accuracy
- Calibrate 2D/3D magnetic field using the on-board ELLIPSE algorithms
[!NOTE] Only ELLIPSE devices can be configured from the ROS driver. For High Performance INS such as EKINOX, APOGEE and QUANTA, please use the sbgInsRestApi
Installation
Installation from Packages
User can install the sbg_ros_driver through the standard ROS installation system.
- Noetic
sudo apt-get install ros-noetic-sbg-driver
Building from sources
Dependencies
- Robot Operating System (ROS)
- sbgECom C Library (embeds v1.11.920-stable - compatible with ELLIPSE firmware above 1.7)
- Boost C++ Library
Building
- Clone the repository (use a Release version)
cd catkin_ws/src
git clone -b master https://github.com/SBG-Systems/sbg_ros_driver.git
- Install dependencies
cd ..
rosdep install --from-paths src --ignore-src -r -y
- Build using the normal ROS catkin build system
source /opt/ros/${ROS_DISTRO}/setup.bash
catkin_make
Usage
Source the generated setup environment
source devel/setup.bash
To run the default Ros node with the default configuration
roslaunch sbg_driver sbg_device.launch
To run the magnetic calibration node
roslaunch sbg_driver sbg_device_mag_calibration.launch
Config files
Default config files
Every configuration file is defined according to the same structure.
-
sbg_device_uart_default.yaml
This config file is the default one for UART connection with the device.
It does not configure the device through the ROS node, so it has to be previously configured (manually or with the ROS node).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
-
sbg_device_udp_default.yaml
This config file is the default one for an Udp connection with the device.
It does not configure the device through the ROS node, so it has to be previously configured (manually or with the ROS node).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/SBG-Systems/sbg_ros_driver.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-17 |
Dev Status | DEVELOPED |
Released | RELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
Name | Version |
---|---|
sbg_driver | 3.2.1 |
README
⚠️ End of Life Notice
This package targets ROS1, which has reached End of Life (EOL) as of May 2025.
As a result, this driver is no longer maintained or supported.
We recommend migrating to the ROS2 version of this driver for continued updates, compatibility, and support.
sbg_driver
ROS driver package for SBG Systems IMU, AHRS and INS.
This driver package uses the sbgECom binary protocol to read data and configure SBG Systems devices.
Initial work has been done by ENSTA Bretagne.
Author: SBG Systems
Maintainer: SBG Systems
Contact: support@sbg-systems.com
Features
The driver supports the following features:
- Configure ELLIPSE products using yaml files (see note below)
- Parse IMU/AHRS/INS/GNSS using the sbgECom protocol
- Publish standard ROS messages and more detailed specific SBG Systems topics
- Subscribe and forward RTCM data to support DGPS/RTK mode with centimeters-level accuracy
- Calibrate 2D/3D magnetic field using the on-board ELLIPSE algorithms
[!NOTE] Only ELLIPSE devices can be configured from the ROS driver. For High Performance INS such as EKINOX, APOGEE and QUANTA, please use the sbgInsRestApi
Installation
Installation from Packages
User can install the sbg_ros_driver through the standard ROS installation system.
- Noetic
sudo apt-get install ros-noetic-sbg-driver
Building from sources
Dependencies
- Robot Operating System (ROS)
- sbgECom C Library (embeds v1.11.920-stable - compatible with ELLIPSE firmware above 1.7)
- Boost C++ Library
Building
- Clone the repository (use a Release version)
cd catkin_ws/src
git clone -b master https://github.com/SBG-Systems/sbg_ros_driver.git
- Install dependencies
cd ..
rosdep install --from-paths src --ignore-src -r -y
- Build using the normal ROS catkin build system
source /opt/ros/${ROS_DISTRO}/setup.bash
catkin_make
Usage
Source the generated setup environment
source devel/setup.bash
To run the default Ros node with the default configuration
roslaunch sbg_driver sbg_device.launch
To run the magnetic calibration node
roslaunch sbg_driver sbg_device_mag_calibration.launch
Config files
Default config files
Every configuration file is defined according to the same structure.
-
sbg_device_uart_default.yaml
This config file is the default one for UART connection with the device.
It does not configure the device through the ROS node, so it has to be previously configured (manually or with the ROS node).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
-
sbg_device_udp_default.yaml
This config file is the default one for an Udp connection with the device.
It does not configure the device through the ROS node, so it has to be previously configured (manually or with the ROS node).
It defines a few outputs for the device:-
/sbg/imu_data
,/sbg/ekf_quat
at 25Hz - ROS standard outputs
/imu/data
,/imu/velocity
,/imu/temp
at 25Hz -
/sbg/status
,/sbg/utc_time
and/imu/utc_ref
at 1Hz.
-
File truncated at 100 lines see the full file