Package Summary

Version 0.11.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/bosch-engineering/off_highway_sensor_drivers.git
VCS Type git
VCS Version humble-devel
Last Updated 2026-01-26
Dev Status MAINTAINED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The off_highway_mm7p10 package

Maintainers

  • Gabriela-Adriana Lapuste

Authors

  • Gabriela-Adriana Lapuste

off_highway_mm7p10

The off_highway_mm7p10 package provides a receiver node to receive and decode CAN frames from the Bosch MM7.10 Inertial Measurement Unit (IMU) into ROS messages - it implements an off_highway_can::Receiver.

Further information on the Bosch MM7.10 IMU, its inputs, outputs and how they can be interpreted can be found on the Bosch Rexroth Homepage.

Supported devices

Device name Part Number Description
MM7.10 IMU R 917 013 362 - 6-axis IMU (3-axis gyroscope, 3-axis accelerometer)
- IMU data output on automotive CAN is supported

Contact: off-highway.beg@bosch.com

Nodes

Receiver

The MM7.10 receiver decodes CAN frames into IMU data and publishes it as ROS sensor messages.

The MM7.10 sends its data in three synchronized CAN frames (TX1, TX2, TX3) containing:

  • TX1 (Z_AY): Yaw rate, lateral acceleration (Y), temperature, status bits
  • TX2 (X_AX): Roll rate, longitudinal acceleration (X), status bits
  • TX3 (Y_AZ): Pitch rate, vertical acceleration (Z), hardware index, status bits

All three frames must be received with matching message counters before the data is published. If frames are missed or message counters don’t match, a warning is logged and the data is not published.

The receiver validates message counters across the three frames to ensure synchronization. Messages with all-zero IMU values are filtered out as invalid.

The IMU data is published as a standard sensor_msgs/Imu message. The orientation field is not populated (covariance set to -1), as the MM7.10 only provides angular velocities and linear accelerations, not orientation estimates.

Additionally, diagnostic information including sensor status bits and temperature is published as an Information message and monitored for errors. If any status bits indicate an error (IMU not available, signal failure, or initialization in progress) or if the temperature is invalid, a diagnostic error is published on /diagnostics.

If the receiver node does not receive any CAN messages within the configured timeout period, the watchdog will detect this and publish a diagnostic error on /diagnostics. The watchdog checks for timeouts at the frequency specified by watchdog_frequency (default 100 Hz).

Subscribed Topics

Published Topics

  • imu (sensor_msgs/Imu)
    • Update Rate: On each complete set of synchronized CAN frames (typically 100 Hz), but only if IMU data is not all zeros
    • Contains angular velocity (rad/s) and linear acceleration (m/s²) data from the MM7.10
    • Orientation field is not used (covariance set to -1)
    • Roll rate sign is inverted to match ROS coordinate system conventions
  • info (off_highway_mm7p10_msgs/Information)
    • Update Rate: On each complete set of synchronized CAN frames (when IMU is published)
    • Contains current sensor status information including status bits for all channels (yaw, roll, pitch rates and accelerations) and temperature data
  • /diagnostics (diagnostic_msgs/DiagnosticArray)
    • Update Rate: On each complete set of synchronized CAN frames or when watchdog detects timeout
    • Diagnostic status contains:
      • Timeout status (monitored by watchdog timer at watchdog_frequency)
      • Sensor status bits from all six channels (yaw, roll, pitch rates and X, Y, Z accelerations)
      • Temperature validity status

Parameters

See receiver_params.yaml.

Launch files

  • receiver_launch: Starts the receiver with the given parameters.
    • Arguments:
      • params: Path to ROS YAML parameter file to load for receiver. If not provided, default parameters from this package are loaded.
CHANGELOG

Changelog for package off_highway_mm7p10

0.11.0 (2026-01-26)

  • Add ROS2 Bosch MM7P10 inertial measurement unit sensor driver
  • Contributors: Gabriela Adriana Lapuste

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged off_highway_mm7p10 at Robotics Stack Exchange

Package Summary

Version 1.2.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/bosch-engineering/off_highway_sensor_drivers.git
VCS Type git
VCS Version jazzy-devel
Last Updated 2026-01-26
Dev Status MAINTAINED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The off_highway_mm7p10 package

Maintainers

  • Gabriela-Adriana Lapuste

Authors

  • Gabriela-Adriana Lapuste

off_highway_mm7p10

The off_highway_mm7p10 package provides a receiver node to receive and decode CAN frames from the Bosch MM7.10 Inertial Measurement Unit (IMU) into ROS messages - it implements an off_highway_can::Receiver.

Further information on the Bosch MM7.10 IMU, its inputs, outputs and how they can be interpreted can be found on the Bosch Rexroth Homepage.

Supported devices

Device name Part Number Description
MM7.10 IMU R 917 013 362 - 6-axis IMU (3-axis gyroscope, 3-axis accelerometer)
- IMU data output on automotive CAN is supported

Contact: off-highway.beg@bosch.com

Nodes

Receiver

The MM7.10 receiver decodes CAN frames into IMU data and publishes it as ROS sensor messages.

The MM7.10 sends its data in three synchronized CAN frames (TX1, TX2, TX3) containing:

  • TX1 (Z_AY): Yaw rate, lateral acceleration (Y), temperature, status bits
  • TX2 (X_AX): Roll rate, longitudinal acceleration (X), status bits
  • TX3 (Y_AZ): Pitch rate, vertical acceleration (Z), hardware index, status bits

All three frames must be received with matching message counters before the data is published. If frames are missed or message counters don’t match, a warning is logged and the data is not published.

The receiver validates message counters across the three frames to ensure synchronization. Messages with all-zero IMU values are filtered out as invalid.

The IMU data is published as a standard sensor_msgs/Imu message. The orientation field is not populated (covariance set to -1), as the MM7.10 only provides angular velocities and linear accelerations, not orientation estimates.

Additionally, diagnostic information including sensor status bits and temperature is published as an Information message and monitored for errors. If any status bits indicate an error (IMU not available, signal failure, or initialization in progress) or if the temperature is invalid, a diagnostic error is published on /diagnostics.

If the receiver node does not receive any CAN messages within the configured timeout period, the watchdog will detect this and publish a diagnostic error on /diagnostics. The watchdog checks for timeouts at the frequency specified by watchdog_frequency (default 100 Hz).

Subscribed Topics

Published Topics

  • imu (sensor_msgs/Imu)
    • Update Rate: On each complete set of synchronized CAN frames (typically 100 Hz), but only if IMU data is not all zeros
    • Contains angular velocity (rad/s) and linear acceleration (m/s²) data from the MM7.10
    • Orientation field is not used (covariance set to -1)
    • Roll rate sign is inverted to match ROS coordinate system conventions
  • info (off_highway_mm7p10_msgs/Information)
    • Update Rate: On each complete set of synchronized CAN frames (when IMU is published)
    • Contains current sensor status information including status bits for all channels (yaw, roll, pitch rates and accelerations) and temperature data
  • /diagnostics (diagnostic_msgs/DiagnosticArray)
    • Update Rate: On each complete set of synchronized CAN frames or when watchdog detects timeout
    • Diagnostic status contains:
      • Timeout status (monitored by watchdog timer at watchdog_frequency)
      • Sensor status bits from all six channels (yaw, roll, pitch rates and X, Y, Z accelerations)
      • Temperature validity status

Parameters

See receiver_params.yaml.

Launch files

  • receiver_launch: Starts the receiver with the given parameters.
    • Arguments:
      • params: Path to ROS YAML parameter file to load for receiver. If not provided, default parameters from this package are loaded.
CHANGELOG

Changelog for package off_highway_mm7p10

1.2.0 (2026-01-26)

  • Add ROS2 Bosch MM7P10 inertial measurement unit sensor driver
  • Contributors: Gabriela Adriana Lapuste

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged off_highway_mm7p10 at Robotics Stack Exchange

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

Package Summary

Version 0.11.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/bosch-engineering/off_highway_sensor_drivers.git
VCS Type git
VCS Version humble-devel
Last Updated 2026-01-26
Dev Status MAINTAINED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The off_highway_mm7p10 package

Maintainers

  • Gabriela-Adriana Lapuste

Authors

  • Gabriela-Adriana Lapuste

off_highway_mm7p10

The off_highway_mm7p10 package provides a receiver node to receive and decode CAN frames from the Bosch MM7.10 Inertial Measurement Unit (IMU) into ROS messages - it implements an off_highway_can::Receiver.

Further information on the Bosch MM7.10 IMU, its inputs, outputs and how they can be interpreted can be found on the Bosch Rexroth Homepage.

Supported devices

Device name Part Number Description
MM7.10 IMU R 917 013 362 - 6-axis IMU (3-axis gyroscope, 3-axis accelerometer)
- IMU data output on automotive CAN is supported

Contact: off-highway.beg@bosch.com

Nodes

Receiver

The MM7.10 receiver decodes CAN frames into IMU data and publishes it as ROS sensor messages.

The MM7.10 sends its data in three synchronized CAN frames (TX1, TX2, TX3) containing:

  • TX1 (Z_AY): Yaw rate, lateral acceleration (Y), temperature, status bits
  • TX2 (X_AX): Roll rate, longitudinal acceleration (X), status bits
  • TX3 (Y_AZ): Pitch rate, vertical acceleration (Z), hardware index, status bits

All three frames must be received with matching message counters before the data is published. If frames are missed or message counters don’t match, a warning is logged and the data is not published.

The receiver validates message counters across the three frames to ensure synchronization. Messages with all-zero IMU values are filtered out as invalid.

The IMU data is published as a standard sensor_msgs/Imu message. The orientation field is not populated (covariance set to -1), as the MM7.10 only provides angular velocities and linear accelerations, not orientation estimates.

Additionally, diagnostic information including sensor status bits and temperature is published as an Information message and monitored for errors. If any status bits indicate an error (IMU not available, signal failure, or initialization in progress) or if the temperature is invalid, a diagnostic error is published on /diagnostics.

If the receiver node does not receive any CAN messages within the configured timeout period, the watchdog will detect this and publish a diagnostic error on /diagnostics. The watchdog checks for timeouts at the frequency specified by watchdog_frequency (default 100 Hz).

Subscribed Topics

Published Topics

  • imu (sensor_msgs/Imu)
    • Update Rate: On each complete set of synchronized CAN frames (typically 100 Hz), but only if IMU data is not all zeros
    • Contains angular velocity (rad/s) and linear acceleration (m/s²) data from the MM7.10
    • Orientation field is not used (covariance set to -1)
    • Roll rate sign is inverted to match ROS coordinate system conventions
  • info (off_highway_mm7p10_msgs/Information)
    • Update Rate: On each complete set of synchronized CAN frames (when IMU is published)
    • Contains current sensor status information including status bits for all channels (yaw, roll, pitch rates and accelerations) and temperature data
  • /diagnostics (diagnostic_msgs/DiagnosticArray)
    • Update Rate: On each complete set of synchronized CAN frames or when watchdog detects timeout
    • Diagnostic status contains:
      • Timeout status (monitored by watchdog timer at watchdog_frequency)
      • Sensor status bits from all six channels (yaw, roll, pitch rates and X, Y, Z accelerations)
      • Temperature validity status

Parameters

See receiver_params.yaml.

Launch files

  • receiver_launch: Starts the receiver with the given parameters.
    • Arguments:
      • params: Path to ROS YAML parameter file to load for receiver. If not provided, default parameters from this package are loaded.
CHANGELOG

Changelog for package off_highway_mm7p10

0.11.0 (2026-01-26)

  • Add ROS2 Bosch MM7P10 inertial measurement unit sensor driver
  • Contributors: Gabriela Adriana Lapuste

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged off_highway_mm7p10 at Robotics Stack Exchange

Package Summary

Version 1.2.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/bosch-engineering/off_highway_sensor_drivers.git
VCS Type git
VCS Version rolling-devel
Last Updated 2026-01-26
Dev Status MAINTAINED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The off_highway_mm7p10 package

Maintainers

  • Gabriela-Adriana Lapuste

Authors

  • Gabriela-Adriana Lapuste

off_highway_mm7p10

The off_highway_mm7p10 package provides a receiver node to receive and decode CAN frames from the Bosch MM7.10 Inertial Measurement Unit (IMU) into ROS messages - it implements an off_highway_can::Receiver.

Further information on the Bosch MM7.10 IMU, its inputs, outputs and how they can be interpreted can be found on the Bosch Rexroth Homepage.

Supported devices

Device name Part Number Description
MM7.10 IMU R 917 013 362 - 6-axis IMU (3-axis gyroscope, 3-axis accelerometer)
- IMU data output on automotive CAN is supported

Contact: off-highway.beg@bosch.com

Nodes

Receiver

The MM7.10 receiver decodes CAN frames into IMU data and publishes it as ROS sensor messages.

The MM7.10 sends its data in three synchronized CAN frames (TX1, TX2, TX3) containing:

  • TX1 (Z_AY): Yaw rate, lateral acceleration (Y), temperature, status bits
  • TX2 (X_AX): Roll rate, longitudinal acceleration (X), status bits
  • TX3 (Y_AZ): Pitch rate, vertical acceleration (Z), hardware index, status bits

All three frames must be received with matching message counters before the data is published. If frames are missed or message counters don’t match, a warning is logged and the data is not published.

The receiver validates message counters across the three frames to ensure synchronization. Messages with all-zero IMU values are filtered out as invalid.

The IMU data is published as a standard sensor_msgs/Imu message. The orientation field is not populated (covariance set to -1), as the MM7.10 only provides angular velocities and linear accelerations, not orientation estimates.

Additionally, diagnostic information including sensor status bits and temperature is published as an Information message and monitored for errors. If any status bits indicate an error (IMU not available, signal failure, or initialization in progress) or if the temperature is invalid, a diagnostic error is published on /diagnostics.

If the receiver node does not receive any CAN messages within the configured timeout period, the watchdog will detect this and publish a diagnostic error on /diagnostics. The watchdog checks for timeouts at the frequency specified by watchdog_frequency (default 100 Hz).

Subscribed Topics

Published Topics

  • imu (sensor_msgs/Imu)
    • Update Rate: On each complete set of synchronized CAN frames (typically 100 Hz), but only if IMU data is not all zeros
    • Contains angular velocity (rad/s) and linear acceleration (m/s²) data from the MM7.10
    • Orientation field is not used (covariance set to -1)
    • Roll rate sign is inverted to match ROS coordinate system conventions
  • info (off_highway_mm7p10_msgs/Information)
    • Update Rate: On each complete set of synchronized CAN frames (when IMU is published)
    • Contains current sensor status information including status bits for all channels (yaw, roll, pitch rates and accelerations) and temperature data
  • /diagnostics (diagnostic_msgs/DiagnosticArray)
    • Update Rate: On each complete set of synchronized CAN frames or when watchdog detects timeout
    • Diagnostic status contains:
      • Timeout status (monitored by watchdog timer at watchdog_frequency)
      • Sensor status bits from all six channels (yaw, roll, pitch rates and X, Y, Z accelerations)
      • Temperature validity status

Parameters

See receiver_params.yaml.

Launch files

  • receiver_launch: Starts the receiver with the given parameters.
    • Arguments:
      • params: Path to ROS YAML parameter file to load for receiver. If not provided, default parameters from this package are loaded.
CHANGELOG

Changelog for package off_highway_mm7p10

1.2.0 (2026-01-26)

  • Add ROS2 Bosch MM7P10 inertial measurement unit sensor driver
  • Contributors: Gabriela Adriana Lapuste

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged off_highway_mm7p10 at Robotics Stack Exchange

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

Package Summary

Version 0.11.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/bosch-engineering/off_highway_sensor_drivers.git
VCS Type git
VCS Version humble-devel
Last Updated 2026-01-26
Dev Status MAINTAINED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The off_highway_mm7p10 package

Maintainers

  • Gabriela-Adriana Lapuste

Authors

  • Gabriela-Adriana Lapuste

off_highway_mm7p10

The off_highway_mm7p10 package provides a receiver node to receive and decode CAN frames from the Bosch MM7.10 Inertial Measurement Unit (IMU) into ROS messages - it implements an off_highway_can::Receiver.

Further information on the Bosch MM7.10 IMU, its inputs, outputs and how they can be interpreted can be found on the Bosch Rexroth Homepage.

Supported devices

Device name Part Number Description
MM7.10 IMU R 917 013 362 - 6-axis IMU (3-axis gyroscope, 3-axis accelerometer)
- IMU data output on automotive CAN is supported

Contact: off-highway.beg@bosch.com

Nodes

Receiver

The MM7.10 receiver decodes CAN frames into IMU data and publishes it as ROS sensor messages.

The MM7.10 sends its data in three synchronized CAN frames (TX1, TX2, TX3) containing:

  • TX1 (Z_AY): Yaw rate, lateral acceleration (Y), temperature, status bits
  • TX2 (X_AX): Roll rate, longitudinal acceleration (X), status bits
  • TX3 (Y_AZ): Pitch rate, vertical acceleration (Z), hardware index, status bits

All three frames must be received with matching message counters before the data is published. If frames are missed or message counters don’t match, a warning is logged and the data is not published.

The receiver validates message counters across the three frames to ensure synchronization. Messages with all-zero IMU values are filtered out as invalid.

The IMU data is published as a standard sensor_msgs/Imu message. The orientation field is not populated (covariance set to -1), as the MM7.10 only provides angular velocities and linear accelerations, not orientation estimates.

Additionally, diagnostic information including sensor status bits and temperature is published as an Information message and monitored for errors. If any status bits indicate an error (IMU not available, signal failure, or initialization in progress) or if the temperature is invalid, a diagnostic error is published on /diagnostics.

If the receiver node does not receive any CAN messages within the configured timeout period, the watchdog will detect this and publish a diagnostic error on /diagnostics. The watchdog checks for timeouts at the frequency specified by watchdog_frequency (default 100 Hz).

Subscribed Topics

Published Topics

  • imu (sensor_msgs/Imu)
    • Update Rate: On each complete set of synchronized CAN frames (typically 100 Hz), but only if IMU data is not all zeros
    • Contains angular velocity (rad/s) and linear acceleration (m/s²) data from the MM7.10
    • Orientation field is not used (covariance set to -1)
    • Roll rate sign is inverted to match ROS coordinate system conventions
  • info (off_highway_mm7p10_msgs/Information)
    • Update Rate: On each complete set of synchronized CAN frames (when IMU is published)
    • Contains current sensor status information including status bits for all channels (yaw, roll, pitch rates and accelerations) and temperature data
  • /diagnostics (diagnostic_msgs/DiagnosticArray)
    • Update Rate: On each complete set of synchronized CAN frames or when watchdog detects timeout
    • Diagnostic status contains:
      • Timeout status (monitored by watchdog timer at watchdog_frequency)
      • Sensor status bits from all six channels (yaw, roll, pitch rates and X, Y, Z accelerations)
      • Temperature validity status

Parameters

See receiver_params.yaml.

Launch files

  • receiver_launch: Starts the receiver with the given parameters.
    • Arguments:
      • params: Path to ROS YAML parameter file to load for receiver. If not provided, default parameters from this package are loaded.
CHANGELOG

Changelog for package off_highway_mm7p10

0.11.0 (2026-01-26)

  • Add ROS2 Bosch MM7P10 inertial measurement unit sensor driver
  • Contributors: Gabriela Adriana Lapuste

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged off_highway_mm7p10 at Robotics Stack Exchange

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

Package Summary

Version 0.11.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/bosch-engineering/off_highway_sensor_drivers.git
VCS Type git
VCS Version humble-devel
Last Updated 2026-01-26
Dev Status MAINTAINED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The off_highway_mm7p10 package

Maintainers

  • Gabriela-Adriana Lapuste

Authors

  • Gabriela-Adriana Lapuste

off_highway_mm7p10

The off_highway_mm7p10 package provides a receiver node to receive and decode CAN frames from the Bosch MM7.10 Inertial Measurement Unit (IMU) into ROS messages - it implements an off_highway_can::Receiver.

Further information on the Bosch MM7.10 IMU, its inputs, outputs and how they can be interpreted can be found on the Bosch Rexroth Homepage.

Supported devices

Device name Part Number Description
MM7.10 IMU R 917 013 362 - 6-axis IMU (3-axis gyroscope, 3-axis accelerometer)
- IMU data output on automotive CAN is supported

Contact: off-highway.beg@bosch.com

Nodes

Receiver

The MM7.10 receiver decodes CAN frames into IMU data and publishes it as ROS sensor messages.

The MM7.10 sends its data in three synchronized CAN frames (TX1, TX2, TX3) containing:

  • TX1 (Z_AY): Yaw rate, lateral acceleration (Y), temperature, status bits
  • TX2 (X_AX): Roll rate, longitudinal acceleration (X), status bits
  • TX3 (Y_AZ): Pitch rate, vertical acceleration (Z), hardware index, status bits

All three frames must be received with matching message counters before the data is published. If frames are missed or message counters don’t match, a warning is logged and the data is not published.

The receiver validates message counters across the three frames to ensure synchronization. Messages with all-zero IMU values are filtered out as invalid.

The IMU data is published as a standard sensor_msgs/Imu message. The orientation field is not populated (covariance set to -1), as the MM7.10 only provides angular velocities and linear accelerations, not orientation estimates.

Additionally, diagnostic information including sensor status bits and temperature is published as an Information message and monitored for errors. If any status bits indicate an error (IMU not available, signal failure, or initialization in progress) or if the temperature is invalid, a diagnostic error is published on /diagnostics.

If the receiver node does not receive any CAN messages within the configured timeout period, the watchdog will detect this and publish a diagnostic error on /diagnostics. The watchdog checks for timeouts at the frequency specified by watchdog_frequency (default 100 Hz).

Subscribed Topics

Published Topics

  • imu (sensor_msgs/Imu)
    • Update Rate: On each complete set of synchronized CAN frames (typically 100 Hz), but only if IMU data is not all zeros
    • Contains angular velocity (rad/s) and linear acceleration (m/s²) data from the MM7.10
    • Orientation field is not used (covariance set to -1)
    • Roll rate sign is inverted to match ROS coordinate system conventions
  • info (off_highway_mm7p10_msgs/Information)
    • Update Rate: On each complete set of synchronized CAN frames (when IMU is published)
    • Contains current sensor status information including status bits for all channels (yaw, roll, pitch rates and accelerations) and temperature data
  • /diagnostics (diagnostic_msgs/DiagnosticArray)
    • Update Rate: On each complete set of synchronized CAN frames or when watchdog detects timeout
    • Diagnostic status contains:
      • Timeout status (monitored by watchdog timer at watchdog_frequency)
      • Sensor status bits from all six channels (yaw, roll, pitch rates and X, Y, Z accelerations)
      • Temperature validity status

Parameters

See receiver_params.yaml.

Launch files

  • receiver_launch: Starts the receiver with the given parameters.
    • Arguments:
      • params: Path to ROS YAML parameter file to load for receiver. If not provided, default parameters from this package are loaded.
CHANGELOG

Changelog for package off_highway_mm7p10

0.11.0 (2026-01-26)

  • Add ROS2 Bosch MM7P10 inertial measurement unit sensor driver
  • Contributors: Gabriela Adriana Lapuste

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged off_highway_mm7p10 at Robotics Stack Exchange

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

Package Summary

Version 0.11.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/bosch-engineering/off_highway_sensor_drivers.git
VCS Type git
VCS Version humble-devel
Last Updated 2026-01-26
Dev Status MAINTAINED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The off_highway_mm7p10 package

Maintainers

  • Gabriela-Adriana Lapuste

Authors

  • Gabriela-Adriana Lapuste

off_highway_mm7p10

The off_highway_mm7p10 package provides a receiver node to receive and decode CAN frames from the Bosch MM7.10 Inertial Measurement Unit (IMU) into ROS messages - it implements an off_highway_can::Receiver.

Further information on the Bosch MM7.10 IMU, its inputs, outputs and how they can be interpreted can be found on the Bosch Rexroth Homepage.

Supported devices

Device name Part Number Description
MM7.10 IMU R 917 013 362 - 6-axis IMU (3-axis gyroscope, 3-axis accelerometer)
- IMU data output on automotive CAN is supported

Contact: off-highway.beg@bosch.com

Nodes

Receiver

The MM7.10 receiver decodes CAN frames into IMU data and publishes it as ROS sensor messages.

The MM7.10 sends its data in three synchronized CAN frames (TX1, TX2, TX3) containing:

  • TX1 (Z_AY): Yaw rate, lateral acceleration (Y), temperature, status bits
  • TX2 (X_AX): Roll rate, longitudinal acceleration (X), status bits
  • TX3 (Y_AZ): Pitch rate, vertical acceleration (Z), hardware index, status bits

All three frames must be received with matching message counters before the data is published. If frames are missed or message counters don’t match, a warning is logged and the data is not published.

The receiver validates message counters across the three frames to ensure synchronization. Messages with all-zero IMU values are filtered out as invalid.

The IMU data is published as a standard sensor_msgs/Imu message. The orientation field is not populated (covariance set to -1), as the MM7.10 only provides angular velocities and linear accelerations, not orientation estimates.

Additionally, diagnostic information including sensor status bits and temperature is published as an Information message and monitored for errors. If any status bits indicate an error (IMU not available, signal failure, or initialization in progress) or if the temperature is invalid, a diagnostic error is published on /diagnostics.

If the receiver node does not receive any CAN messages within the configured timeout period, the watchdog will detect this and publish a diagnostic error on /diagnostics. The watchdog checks for timeouts at the frequency specified by watchdog_frequency (default 100 Hz).

Subscribed Topics

Published Topics

  • imu (sensor_msgs/Imu)
    • Update Rate: On each complete set of synchronized CAN frames (typically 100 Hz), but only if IMU data is not all zeros
    • Contains angular velocity (rad/s) and linear acceleration (m/s²) data from the MM7.10
    • Orientation field is not used (covariance set to -1)
    • Roll rate sign is inverted to match ROS coordinate system conventions
  • info (off_highway_mm7p10_msgs/Information)
    • Update Rate: On each complete set of synchronized CAN frames (when IMU is published)
    • Contains current sensor status information including status bits for all channels (yaw, roll, pitch rates and accelerations) and temperature data
  • /diagnostics (diagnostic_msgs/DiagnosticArray)
    • Update Rate: On each complete set of synchronized CAN frames or when watchdog detects timeout
    • Diagnostic status contains:
      • Timeout status (monitored by watchdog timer at watchdog_frequency)
      • Sensor status bits from all six channels (yaw, roll, pitch rates and X, Y, Z accelerations)
      • Temperature validity status

Parameters

See receiver_params.yaml.

Launch files

  • receiver_launch: Starts the receiver with the given parameters.
    • Arguments:
      • params: Path to ROS YAML parameter file to load for receiver. If not provided, default parameters from this package are loaded.
CHANGELOG

Changelog for package off_highway_mm7p10

0.11.0 (2026-01-26)

  • Add ROS2 Bosch MM7P10 inertial measurement unit sensor driver
  • Contributors: Gabriela Adriana Lapuste

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged off_highway_mm7p10 at Robotics Stack Exchange

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

Package Summary

Version 0.11.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/bosch-engineering/off_highway_sensor_drivers.git
VCS Type git
VCS Version humble-devel
Last Updated 2026-01-26
Dev Status MAINTAINED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The off_highway_mm7p10 package

Maintainers

  • Gabriela-Adriana Lapuste

Authors

  • Gabriela-Adriana Lapuste

off_highway_mm7p10

The off_highway_mm7p10 package provides a receiver node to receive and decode CAN frames from the Bosch MM7.10 Inertial Measurement Unit (IMU) into ROS messages - it implements an off_highway_can::Receiver.

Further information on the Bosch MM7.10 IMU, its inputs, outputs and how they can be interpreted can be found on the Bosch Rexroth Homepage.

Supported devices

Device name Part Number Description
MM7.10 IMU R 917 013 362 - 6-axis IMU (3-axis gyroscope, 3-axis accelerometer)
- IMU data output on automotive CAN is supported

Contact: off-highway.beg@bosch.com

Nodes

Receiver

The MM7.10 receiver decodes CAN frames into IMU data and publishes it as ROS sensor messages.

The MM7.10 sends its data in three synchronized CAN frames (TX1, TX2, TX3) containing:

  • TX1 (Z_AY): Yaw rate, lateral acceleration (Y), temperature, status bits
  • TX2 (X_AX): Roll rate, longitudinal acceleration (X), status bits
  • TX3 (Y_AZ): Pitch rate, vertical acceleration (Z), hardware index, status bits

All three frames must be received with matching message counters before the data is published. If frames are missed or message counters don’t match, a warning is logged and the data is not published.

The receiver validates message counters across the three frames to ensure synchronization. Messages with all-zero IMU values are filtered out as invalid.

The IMU data is published as a standard sensor_msgs/Imu message. The orientation field is not populated (covariance set to -1), as the MM7.10 only provides angular velocities and linear accelerations, not orientation estimates.

Additionally, diagnostic information including sensor status bits and temperature is published as an Information message and monitored for errors. If any status bits indicate an error (IMU not available, signal failure, or initialization in progress) or if the temperature is invalid, a diagnostic error is published on /diagnostics.

If the receiver node does not receive any CAN messages within the configured timeout period, the watchdog will detect this and publish a diagnostic error on /diagnostics. The watchdog checks for timeouts at the frequency specified by watchdog_frequency (default 100 Hz).

Subscribed Topics

Published Topics

  • imu (sensor_msgs/Imu)
    • Update Rate: On each complete set of synchronized CAN frames (typically 100 Hz), but only if IMU data is not all zeros
    • Contains angular velocity (rad/s) and linear acceleration (m/s²) data from the MM7.10
    • Orientation field is not used (covariance set to -1)
    • Roll rate sign is inverted to match ROS coordinate system conventions
  • info (off_highway_mm7p10_msgs/Information)
    • Update Rate: On each complete set of synchronized CAN frames (when IMU is published)
    • Contains current sensor status information including status bits for all channels (yaw, roll, pitch rates and accelerations) and temperature data
  • /diagnostics (diagnostic_msgs/DiagnosticArray)
    • Update Rate: On each complete set of synchronized CAN frames or when watchdog detects timeout
    • Diagnostic status contains:
      • Timeout status (monitored by watchdog timer at watchdog_frequency)
      • Sensor status bits from all six channels (yaw, roll, pitch rates and X, Y, Z accelerations)
      • Temperature validity status

Parameters

See receiver_params.yaml.

Launch files

  • receiver_launch: Starts the receiver with the given parameters.
    • Arguments:
      • params: Path to ROS YAML parameter file to load for receiver. If not provided, default parameters from this package are loaded.
CHANGELOG

Changelog for package off_highway_mm7p10

0.11.0 (2026-01-26)

  • Add ROS2 Bosch MM7P10 inertial measurement unit sensor driver
  • Contributors: Gabriela Adriana Lapuste

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged off_highway_mm7p10 at Robotics Stack Exchange

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

Package Summary

Version 0.11.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/bosch-engineering/off_highway_sensor_drivers.git
VCS Type git
VCS Version humble-devel
Last Updated 2026-01-26
Dev Status MAINTAINED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The off_highway_mm7p10 package

Maintainers

  • Gabriela-Adriana Lapuste

Authors

  • Gabriela-Adriana Lapuste

off_highway_mm7p10

The off_highway_mm7p10 package provides a receiver node to receive and decode CAN frames from the Bosch MM7.10 Inertial Measurement Unit (IMU) into ROS messages - it implements an off_highway_can::Receiver.

Further information on the Bosch MM7.10 IMU, its inputs, outputs and how they can be interpreted can be found on the Bosch Rexroth Homepage.

Supported devices

Device name Part Number Description
MM7.10 IMU R 917 013 362 - 6-axis IMU (3-axis gyroscope, 3-axis accelerometer)
- IMU data output on automotive CAN is supported

Contact: off-highway.beg@bosch.com

Nodes

Receiver

The MM7.10 receiver decodes CAN frames into IMU data and publishes it as ROS sensor messages.

The MM7.10 sends its data in three synchronized CAN frames (TX1, TX2, TX3) containing:

  • TX1 (Z_AY): Yaw rate, lateral acceleration (Y), temperature, status bits
  • TX2 (X_AX): Roll rate, longitudinal acceleration (X), status bits
  • TX3 (Y_AZ): Pitch rate, vertical acceleration (Z), hardware index, status bits

All three frames must be received with matching message counters before the data is published. If frames are missed or message counters don’t match, a warning is logged and the data is not published.

The receiver validates message counters across the three frames to ensure synchronization. Messages with all-zero IMU values are filtered out as invalid.

The IMU data is published as a standard sensor_msgs/Imu message. The orientation field is not populated (covariance set to -1), as the MM7.10 only provides angular velocities and linear accelerations, not orientation estimates.

Additionally, diagnostic information including sensor status bits and temperature is published as an Information message and monitored for errors. If any status bits indicate an error (IMU not available, signal failure, or initialization in progress) or if the temperature is invalid, a diagnostic error is published on /diagnostics.

If the receiver node does not receive any CAN messages within the configured timeout period, the watchdog will detect this and publish a diagnostic error on /diagnostics. The watchdog checks for timeouts at the frequency specified by watchdog_frequency (default 100 Hz).

Subscribed Topics

Published Topics

  • imu (sensor_msgs/Imu)
    • Update Rate: On each complete set of synchronized CAN frames (typically 100 Hz), but only if IMU data is not all zeros
    • Contains angular velocity (rad/s) and linear acceleration (m/s²) data from the MM7.10
    • Orientation field is not used (covariance set to -1)
    • Roll rate sign is inverted to match ROS coordinate system conventions
  • info (off_highway_mm7p10_msgs/Information)
    • Update Rate: On each complete set of synchronized CAN frames (when IMU is published)
    • Contains current sensor status information including status bits for all channels (yaw, roll, pitch rates and accelerations) and temperature data
  • /diagnostics (diagnostic_msgs/DiagnosticArray)
    • Update Rate: On each complete set of synchronized CAN frames or when watchdog detects timeout
    • Diagnostic status contains:
      • Timeout status (monitored by watchdog timer at watchdog_frequency)
      • Sensor status bits from all six channels (yaw, roll, pitch rates and X, Y, Z accelerations)
      • Temperature validity status

Parameters

See receiver_params.yaml.

Launch files

  • receiver_launch: Starts the receiver with the given parameters.
    • Arguments:
      • params: Path to ROS YAML parameter file to load for receiver. If not provided, default parameters from this package are loaded.
CHANGELOG

Changelog for package off_highway_mm7p10

0.11.0 (2026-01-26)

  • Add ROS2 Bosch MM7P10 inertial measurement unit sensor driver
  • Contributors: Gabriela Adriana Lapuste

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged off_highway_mm7p10 at Robotics Stack Exchange

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

Package Summary

Version 0.11.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/bosch-engineering/off_highway_sensor_drivers.git
VCS Type git
VCS Version humble-devel
Last Updated 2026-01-26
Dev Status MAINTAINED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The off_highway_mm7p10 package

Maintainers

  • Gabriela-Adriana Lapuste

Authors

  • Gabriela-Adriana Lapuste

off_highway_mm7p10

The off_highway_mm7p10 package provides a receiver node to receive and decode CAN frames from the Bosch MM7.10 Inertial Measurement Unit (IMU) into ROS messages - it implements an off_highway_can::Receiver.

Further information on the Bosch MM7.10 IMU, its inputs, outputs and how they can be interpreted can be found on the Bosch Rexroth Homepage.

Supported devices

Device name Part Number Description
MM7.10 IMU R 917 013 362 - 6-axis IMU (3-axis gyroscope, 3-axis accelerometer)
- IMU data output on automotive CAN is supported

Contact: off-highway.beg@bosch.com

Nodes

Receiver

The MM7.10 receiver decodes CAN frames into IMU data and publishes it as ROS sensor messages.

The MM7.10 sends its data in three synchronized CAN frames (TX1, TX2, TX3) containing:

  • TX1 (Z_AY): Yaw rate, lateral acceleration (Y), temperature, status bits
  • TX2 (X_AX): Roll rate, longitudinal acceleration (X), status bits
  • TX3 (Y_AZ): Pitch rate, vertical acceleration (Z), hardware index, status bits

All three frames must be received with matching message counters before the data is published. If frames are missed or message counters don’t match, a warning is logged and the data is not published.

The receiver validates message counters across the three frames to ensure synchronization. Messages with all-zero IMU values are filtered out as invalid.

The IMU data is published as a standard sensor_msgs/Imu message. The orientation field is not populated (covariance set to -1), as the MM7.10 only provides angular velocities and linear accelerations, not orientation estimates.

Additionally, diagnostic information including sensor status bits and temperature is published as an Information message and monitored for errors. If any status bits indicate an error (IMU not available, signal failure, or initialization in progress) or if the temperature is invalid, a diagnostic error is published on /diagnostics.

If the receiver node does not receive any CAN messages within the configured timeout period, the watchdog will detect this and publish a diagnostic error on /diagnostics. The watchdog checks for timeouts at the frequency specified by watchdog_frequency (default 100 Hz).

Subscribed Topics

Published Topics

  • imu (sensor_msgs/Imu)
    • Update Rate: On each complete set of synchronized CAN frames (typically 100 Hz), but only if IMU data is not all zeros
    • Contains angular velocity (rad/s) and linear acceleration (m/s²) data from the MM7.10
    • Orientation field is not used (covariance set to -1)
    • Roll rate sign is inverted to match ROS coordinate system conventions
  • info (off_highway_mm7p10_msgs/Information)
    • Update Rate: On each complete set of synchronized CAN frames (when IMU is published)
    • Contains current sensor status information including status bits for all channels (yaw, roll, pitch rates and accelerations) and temperature data
  • /diagnostics (diagnostic_msgs/DiagnosticArray)
    • Update Rate: On each complete set of synchronized CAN frames or when watchdog detects timeout
    • Diagnostic status contains:
      • Timeout status (monitored by watchdog timer at watchdog_frequency)
      • Sensor status bits from all six channels (yaw, roll, pitch rates and X, Y, Z accelerations)
      • Temperature validity status

Parameters

See receiver_params.yaml.

Launch files

  • receiver_launch: Starts the receiver with the given parameters.
    • Arguments:
      • params: Path to ROS YAML parameter file to load for receiver. If not provided, default parameters from this package are loaded.
CHANGELOG

Changelog for package off_highway_mm7p10

0.11.0 (2026-01-26)

  • Add ROS2 Bosch MM7P10 inertial measurement unit sensor driver
  • Contributors: Gabriela Adriana Lapuste

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged off_highway_mm7p10 at Robotics Stack Exchange

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

Package Summary

Version 0.11.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/bosch-engineering/off_highway_sensor_drivers.git
VCS Type git
VCS Version humble-devel
Last Updated 2026-01-26
Dev Status MAINTAINED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The off_highway_mm7p10 package

Maintainers

  • Gabriela-Adriana Lapuste

Authors

  • Gabriela-Adriana Lapuste

off_highway_mm7p10

The off_highway_mm7p10 package provides a receiver node to receive and decode CAN frames from the Bosch MM7.10 Inertial Measurement Unit (IMU) into ROS messages - it implements an off_highway_can::Receiver.

Further information on the Bosch MM7.10 IMU, its inputs, outputs and how they can be interpreted can be found on the Bosch Rexroth Homepage.

Supported devices

Device name Part Number Description
MM7.10 IMU R 917 013 362 - 6-axis IMU (3-axis gyroscope, 3-axis accelerometer)
- IMU data output on automotive CAN is supported

Contact: off-highway.beg@bosch.com

Nodes

Receiver

The MM7.10 receiver decodes CAN frames into IMU data and publishes it as ROS sensor messages.

The MM7.10 sends its data in three synchronized CAN frames (TX1, TX2, TX3) containing:

  • TX1 (Z_AY): Yaw rate, lateral acceleration (Y), temperature, status bits
  • TX2 (X_AX): Roll rate, longitudinal acceleration (X), status bits
  • TX3 (Y_AZ): Pitch rate, vertical acceleration (Z), hardware index, status bits

All three frames must be received with matching message counters before the data is published. If frames are missed or message counters don’t match, a warning is logged and the data is not published.

The receiver validates message counters across the three frames to ensure synchronization. Messages with all-zero IMU values are filtered out as invalid.

The IMU data is published as a standard sensor_msgs/Imu message. The orientation field is not populated (covariance set to -1), as the MM7.10 only provides angular velocities and linear accelerations, not orientation estimates.

Additionally, diagnostic information including sensor status bits and temperature is published as an Information message and monitored for errors. If any status bits indicate an error (IMU not available, signal failure, or initialization in progress) or if the temperature is invalid, a diagnostic error is published on /diagnostics.

If the receiver node does not receive any CAN messages within the configured timeout period, the watchdog will detect this and publish a diagnostic error on /diagnostics. The watchdog checks for timeouts at the frequency specified by watchdog_frequency (default 100 Hz).

Subscribed Topics

Published Topics

  • imu (sensor_msgs/Imu)
    • Update Rate: On each complete set of synchronized CAN frames (typically 100 Hz), but only if IMU data is not all zeros
    • Contains angular velocity (rad/s) and linear acceleration (m/s²) data from the MM7.10
    • Orientation field is not used (covariance set to -1)
    • Roll rate sign is inverted to match ROS coordinate system conventions
  • info (off_highway_mm7p10_msgs/Information)
    • Update Rate: On each complete set of synchronized CAN frames (when IMU is published)
    • Contains current sensor status information including status bits for all channels (yaw, roll, pitch rates and accelerations) and temperature data
  • /diagnostics (diagnostic_msgs/DiagnosticArray)
    • Update Rate: On each complete set of synchronized CAN frames or when watchdog detects timeout
    • Diagnostic status contains:
      • Timeout status (monitored by watchdog timer at watchdog_frequency)
      • Sensor status bits from all six channels (yaw, roll, pitch rates and X, Y, Z accelerations)
      • Temperature validity status

Parameters

See receiver_params.yaml.

Launch files

  • receiver_launch: Starts the receiver with the given parameters.
    • Arguments:
      • params: Path to ROS YAML parameter file to load for receiver. If not provided, default parameters from this package are loaded.
CHANGELOG

Changelog for package off_highway_mm7p10

0.11.0 (2026-01-26)

  • Add ROS2 Bosch MM7P10 inertial measurement unit sensor driver
  • Contributors: Gabriela Adriana Lapuste

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged off_highway_mm7p10 at Robotics Stack Exchange

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

Package Summary

Version 0.11.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/bosch-engineering/off_highway_sensor_drivers.git
VCS Type git
VCS Version humble-devel
Last Updated 2026-01-26
Dev Status MAINTAINED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The off_highway_mm7p10 package

Maintainers

  • Gabriela-Adriana Lapuste

Authors

  • Gabriela-Adriana Lapuste

off_highway_mm7p10

The off_highway_mm7p10 package provides a receiver node to receive and decode CAN frames from the Bosch MM7.10 Inertial Measurement Unit (IMU) into ROS messages - it implements an off_highway_can::Receiver.

Further information on the Bosch MM7.10 IMU, its inputs, outputs and how they can be interpreted can be found on the Bosch Rexroth Homepage.

Supported devices

Device name Part Number Description
MM7.10 IMU R 917 013 362 - 6-axis IMU (3-axis gyroscope, 3-axis accelerometer)
- IMU data output on automotive CAN is supported

Contact: off-highway.beg@bosch.com

Nodes

Receiver

The MM7.10 receiver decodes CAN frames into IMU data and publishes it as ROS sensor messages.

The MM7.10 sends its data in three synchronized CAN frames (TX1, TX2, TX3) containing:

  • TX1 (Z_AY): Yaw rate, lateral acceleration (Y), temperature, status bits
  • TX2 (X_AX): Roll rate, longitudinal acceleration (X), status bits
  • TX3 (Y_AZ): Pitch rate, vertical acceleration (Z), hardware index, status bits

All three frames must be received with matching message counters before the data is published. If frames are missed or message counters don’t match, a warning is logged and the data is not published.

The receiver validates message counters across the three frames to ensure synchronization. Messages with all-zero IMU values are filtered out as invalid.

The IMU data is published as a standard sensor_msgs/Imu message. The orientation field is not populated (covariance set to -1), as the MM7.10 only provides angular velocities and linear accelerations, not orientation estimates.

Additionally, diagnostic information including sensor status bits and temperature is published as an Information message and monitored for errors. If any status bits indicate an error (IMU not available, signal failure, or initialization in progress) or if the temperature is invalid, a diagnostic error is published on /diagnostics.

If the receiver node does not receive any CAN messages within the configured timeout period, the watchdog will detect this and publish a diagnostic error on /diagnostics. The watchdog checks for timeouts at the frequency specified by watchdog_frequency (default 100 Hz).

Subscribed Topics

Published Topics

  • imu (sensor_msgs/Imu)
    • Update Rate: On each complete set of synchronized CAN frames (typically 100 Hz), but only if IMU data is not all zeros
    • Contains angular velocity (rad/s) and linear acceleration (m/s²) data from the MM7.10
    • Orientation field is not used (covariance set to -1)
    • Roll rate sign is inverted to match ROS coordinate system conventions
  • info (off_highway_mm7p10_msgs/Information)
    • Update Rate: On each complete set of synchronized CAN frames (when IMU is published)
    • Contains current sensor status information including status bits for all channels (yaw, roll, pitch rates and accelerations) and temperature data
  • /diagnostics (diagnostic_msgs/DiagnosticArray)
    • Update Rate: On each complete set of synchronized CAN frames or when watchdog detects timeout
    • Diagnostic status contains:
      • Timeout status (monitored by watchdog timer at watchdog_frequency)
      • Sensor status bits from all six channels (yaw, roll, pitch rates and X, Y, Z accelerations)
      • Temperature validity status

Parameters

See receiver_params.yaml.

Launch files

  • receiver_launch: Starts the receiver with the given parameters.
    • Arguments:
      • params: Path to ROS YAML parameter file to load for receiver. If not provided, default parameters from this package are loaded.
CHANGELOG

Changelog for package off_highway_mm7p10

0.11.0 (2026-01-26)

  • Add ROS2 Bosch MM7P10 inertial measurement unit sensor driver
  • Contributors: Gabriela Adriana Lapuste

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged off_highway_mm7p10 at Robotics Stack Exchange

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

Package Summary

Version 0.11.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/bosch-engineering/off_highway_sensor_drivers.git
VCS Type git
VCS Version humble-devel
Last Updated 2026-01-26
Dev Status MAINTAINED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The off_highway_mm7p10 package

Maintainers

  • Gabriela-Adriana Lapuste

Authors

  • Gabriela-Adriana Lapuste

off_highway_mm7p10

The off_highway_mm7p10 package provides a receiver node to receive and decode CAN frames from the Bosch MM7.10 Inertial Measurement Unit (IMU) into ROS messages - it implements an off_highway_can::Receiver.

Further information on the Bosch MM7.10 IMU, its inputs, outputs and how they can be interpreted can be found on the Bosch Rexroth Homepage.

Supported devices

Device name Part Number Description
MM7.10 IMU R 917 013 362 - 6-axis IMU (3-axis gyroscope, 3-axis accelerometer)
- IMU data output on automotive CAN is supported

Contact: off-highway.beg@bosch.com

Nodes

Receiver

The MM7.10 receiver decodes CAN frames into IMU data and publishes it as ROS sensor messages.

The MM7.10 sends its data in three synchronized CAN frames (TX1, TX2, TX3) containing:

  • TX1 (Z_AY): Yaw rate, lateral acceleration (Y), temperature, status bits
  • TX2 (X_AX): Roll rate, longitudinal acceleration (X), status bits
  • TX3 (Y_AZ): Pitch rate, vertical acceleration (Z), hardware index, status bits

All three frames must be received with matching message counters before the data is published. If frames are missed or message counters don’t match, a warning is logged and the data is not published.

The receiver validates message counters across the three frames to ensure synchronization. Messages with all-zero IMU values are filtered out as invalid.

The IMU data is published as a standard sensor_msgs/Imu message. The orientation field is not populated (covariance set to -1), as the MM7.10 only provides angular velocities and linear accelerations, not orientation estimates.

Additionally, diagnostic information including sensor status bits and temperature is published as an Information message and monitored for errors. If any status bits indicate an error (IMU not available, signal failure, or initialization in progress) or if the temperature is invalid, a diagnostic error is published on /diagnostics.

If the receiver node does not receive any CAN messages within the configured timeout period, the watchdog will detect this and publish a diagnostic error on /diagnostics. The watchdog checks for timeouts at the frequency specified by watchdog_frequency (default 100 Hz).

Subscribed Topics

Published Topics

  • imu (sensor_msgs/Imu)
    • Update Rate: On each complete set of synchronized CAN frames (typically 100 Hz), but only if IMU data is not all zeros
    • Contains angular velocity (rad/s) and linear acceleration (m/s²) data from the MM7.10
    • Orientation field is not used (covariance set to -1)
    • Roll rate sign is inverted to match ROS coordinate system conventions
  • info (off_highway_mm7p10_msgs/Information)
    • Update Rate: On each complete set of synchronized CAN frames (when IMU is published)
    • Contains current sensor status information including status bits for all channels (yaw, roll, pitch rates and accelerations) and temperature data
  • /diagnostics (diagnostic_msgs/DiagnosticArray)
    • Update Rate: On each complete set of synchronized CAN frames or when watchdog detects timeout
    • Diagnostic status contains:
      • Timeout status (monitored by watchdog timer at watchdog_frequency)
      • Sensor status bits from all six channels (yaw, roll, pitch rates and X, Y, Z accelerations)
      • Temperature validity status

Parameters

See receiver_params.yaml.

Launch files

  • receiver_launch: Starts the receiver with the given parameters.
    • Arguments:
      • params: Path to ROS YAML parameter file to load for receiver. If not provided, default parameters from this package are loaded.
CHANGELOG

Changelog for package off_highway_mm7p10

0.11.0 (2026-01-26)

  • Add ROS2 Bosch MM7P10 inertial measurement unit sensor driver
  • Contributors: Gabriela Adriana Lapuste

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged off_highway_mm7p10 at Robotics Stack Exchange

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

Package Summary

Version 0.11.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/bosch-engineering/off_highway_sensor_drivers.git
VCS Type git
VCS Version humble-devel
Last Updated 2026-01-26
Dev Status MAINTAINED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The off_highway_mm7p10 package

Maintainers

  • Gabriela-Adriana Lapuste

Authors

  • Gabriela-Adriana Lapuste

off_highway_mm7p10

The off_highway_mm7p10 package provides a receiver node to receive and decode CAN frames from the Bosch MM7.10 Inertial Measurement Unit (IMU) into ROS messages - it implements an off_highway_can::Receiver.

Further information on the Bosch MM7.10 IMU, its inputs, outputs and how they can be interpreted can be found on the Bosch Rexroth Homepage.

Supported devices

Device name Part Number Description
MM7.10 IMU R 917 013 362 - 6-axis IMU (3-axis gyroscope, 3-axis accelerometer)
- IMU data output on automotive CAN is supported

Contact: off-highway.beg@bosch.com

Nodes

Receiver

The MM7.10 receiver decodes CAN frames into IMU data and publishes it as ROS sensor messages.

The MM7.10 sends its data in three synchronized CAN frames (TX1, TX2, TX3) containing:

  • TX1 (Z_AY): Yaw rate, lateral acceleration (Y), temperature, status bits
  • TX2 (X_AX): Roll rate, longitudinal acceleration (X), status bits
  • TX3 (Y_AZ): Pitch rate, vertical acceleration (Z), hardware index, status bits

All three frames must be received with matching message counters before the data is published. If frames are missed or message counters don’t match, a warning is logged and the data is not published.

The receiver validates message counters across the three frames to ensure synchronization. Messages with all-zero IMU values are filtered out as invalid.

The IMU data is published as a standard sensor_msgs/Imu message. The orientation field is not populated (covariance set to -1), as the MM7.10 only provides angular velocities and linear accelerations, not orientation estimates.

Additionally, diagnostic information including sensor status bits and temperature is published as an Information message and monitored for errors. If any status bits indicate an error (IMU not available, signal failure, or initialization in progress) or if the temperature is invalid, a diagnostic error is published on /diagnostics.

If the receiver node does not receive any CAN messages within the configured timeout period, the watchdog will detect this and publish a diagnostic error on /diagnostics. The watchdog checks for timeouts at the frequency specified by watchdog_frequency (default 100 Hz).

Subscribed Topics

Published Topics

  • imu (sensor_msgs/Imu)
    • Update Rate: On each complete set of synchronized CAN frames (typically 100 Hz), but only if IMU data is not all zeros
    • Contains angular velocity (rad/s) and linear acceleration (m/s²) data from the MM7.10
    • Orientation field is not used (covariance set to -1)
    • Roll rate sign is inverted to match ROS coordinate system conventions
  • info (off_highway_mm7p10_msgs/Information)
    • Update Rate: On each complete set of synchronized CAN frames (when IMU is published)
    • Contains current sensor status information including status bits for all channels (yaw, roll, pitch rates and accelerations) and temperature data
  • /diagnostics (diagnostic_msgs/DiagnosticArray)
    • Update Rate: On each complete set of synchronized CAN frames or when watchdog detects timeout
    • Diagnostic status contains:
      • Timeout status (monitored by watchdog timer at watchdog_frequency)
      • Sensor status bits from all six channels (yaw, roll, pitch rates and X, Y, Z accelerations)
      • Temperature validity status

Parameters

See receiver_params.yaml.

Launch files

  • receiver_launch: Starts the receiver with the given parameters.
    • Arguments:
      • params: Path to ROS YAML parameter file to load for receiver. If not provided, default parameters from this package are loaded.
CHANGELOG

Changelog for package off_highway_mm7p10

0.11.0 (2026-01-26)

  • Add ROS2 Bosch MM7P10 inertial measurement unit sensor driver
  • Contributors: Gabriela Adriana Lapuste

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged off_highway_mm7p10 at Robotics Stack Exchange

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

Package Summary

Version 0.11.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/bosch-engineering/off_highway_sensor_drivers.git
VCS Type git
VCS Version humble-devel
Last Updated 2026-01-26
Dev Status MAINTAINED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The off_highway_mm7p10 package

Maintainers

  • Gabriela-Adriana Lapuste

Authors

  • Gabriela-Adriana Lapuste

off_highway_mm7p10

The off_highway_mm7p10 package provides a receiver node to receive and decode CAN frames from the Bosch MM7.10 Inertial Measurement Unit (IMU) into ROS messages - it implements an off_highway_can::Receiver.

Further information on the Bosch MM7.10 IMU, its inputs, outputs and how they can be interpreted can be found on the Bosch Rexroth Homepage.

Supported devices

Device name Part Number Description
MM7.10 IMU R 917 013 362 - 6-axis IMU (3-axis gyroscope, 3-axis accelerometer)
- IMU data output on automotive CAN is supported

Contact: off-highway.beg@bosch.com

Nodes

Receiver

The MM7.10 receiver decodes CAN frames into IMU data and publishes it as ROS sensor messages.

The MM7.10 sends its data in three synchronized CAN frames (TX1, TX2, TX3) containing:

  • TX1 (Z_AY): Yaw rate, lateral acceleration (Y), temperature, status bits
  • TX2 (X_AX): Roll rate, longitudinal acceleration (X), status bits
  • TX3 (Y_AZ): Pitch rate, vertical acceleration (Z), hardware index, status bits

All three frames must be received with matching message counters before the data is published. If frames are missed or message counters don’t match, a warning is logged and the data is not published.

The receiver validates message counters across the three frames to ensure synchronization. Messages with all-zero IMU values are filtered out as invalid.

The IMU data is published as a standard sensor_msgs/Imu message. The orientation field is not populated (covariance set to -1), as the MM7.10 only provides angular velocities and linear accelerations, not orientation estimates.

Additionally, diagnostic information including sensor status bits and temperature is published as an Information message and monitored for errors. If any status bits indicate an error (IMU not available, signal failure, or initialization in progress) or if the temperature is invalid, a diagnostic error is published on /diagnostics.

If the receiver node does not receive any CAN messages within the configured timeout period, the watchdog will detect this and publish a diagnostic error on /diagnostics. The watchdog checks for timeouts at the frequency specified by watchdog_frequency (default 100 Hz).

Subscribed Topics

Published Topics

  • imu (sensor_msgs/Imu)
    • Update Rate: On each complete set of synchronized CAN frames (typically 100 Hz), but only if IMU data is not all zeros
    • Contains angular velocity (rad/s) and linear acceleration (m/s²) data from the MM7.10
    • Orientation field is not used (covariance set to -1)
    • Roll rate sign is inverted to match ROS coordinate system conventions
  • info (off_highway_mm7p10_msgs/Information)
    • Update Rate: On each complete set of synchronized CAN frames (when IMU is published)
    • Contains current sensor status information including status bits for all channels (yaw, roll, pitch rates and accelerations) and temperature data
  • /diagnostics (diagnostic_msgs/DiagnosticArray)
    • Update Rate: On each complete set of synchronized CAN frames or when watchdog detects timeout
    • Diagnostic status contains:
      • Timeout status (monitored by watchdog timer at watchdog_frequency)
      • Sensor status bits from all six channels (yaw, roll, pitch rates and X, Y, Z accelerations)
      • Temperature validity status

Parameters

See receiver_params.yaml.

Launch files

  • receiver_launch: Starts the receiver with the given parameters.
    • Arguments:
      • params: Path to ROS YAML parameter file to load for receiver. If not provided, default parameters from this package are loaded.
CHANGELOG

Changelog for package off_highway_mm7p10

0.11.0 (2026-01-26)

  • Add ROS2 Bosch MM7P10 inertial measurement unit sensor driver
  • Contributors: Gabriela Adriana Lapuste

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged off_highway_mm7p10 at Robotics Stack Exchange

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

Package Summary

Version 0.11.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/bosch-engineering/off_highway_sensor_drivers.git
VCS Type git
VCS Version humble-devel
Last Updated 2026-01-26
Dev Status MAINTAINED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The off_highway_mm7p10 package

Maintainers

  • Gabriela-Adriana Lapuste

Authors

  • Gabriela-Adriana Lapuste

off_highway_mm7p10

The off_highway_mm7p10 package provides a receiver node to receive and decode CAN frames from the Bosch MM7.10 Inertial Measurement Unit (IMU) into ROS messages - it implements an off_highway_can::Receiver.

Further information on the Bosch MM7.10 IMU, its inputs, outputs and how they can be interpreted can be found on the Bosch Rexroth Homepage.

Supported devices

Device name Part Number Description
MM7.10 IMU R 917 013 362 - 6-axis IMU (3-axis gyroscope, 3-axis accelerometer)
- IMU data output on automotive CAN is supported

Contact: off-highway.beg@bosch.com

Nodes

Receiver

The MM7.10 receiver decodes CAN frames into IMU data and publishes it as ROS sensor messages.

The MM7.10 sends its data in three synchronized CAN frames (TX1, TX2, TX3) containing:

  • TX1 (Z_AY): Yaw rate, lateral acceleration (Y), temperature, status bits
  • TX2 (X_AX): Roll rate, longitudinal acceleration (X), status bits
  • TX3 (Y_AZ): Pitch rate, vertical acceleration (Z), hardware index, status bits

All three frames must be received with matching message counters before the data is published. If frames are missed or message counters don’t match, a warning is logged and the data is not published.

The receiver validates message counters across the three frames to ensure synchronization. Messages with all-zero IMU values are filtered out as invalid.

The IMU data is published as a standard sensor_msgs/Imu message. The orientation field is not populated (covariance set to -1), as the MM7.10 only provides angular velocities and linear accelerations, not orientation estimates.

Additionally, diagnostic information including sensor status bits and temperature is published as an Information message and monitored for errors. If any status bits indicate an error (IMU not available, signal failure, or initialization in progress) or if the temperature is invalid, a diagnostic error is published on /diagnostics.

If the receiver node does not receive any CAN messages within the configured timeout period, the watchdog will detect this and publish a diagnostic error on /diagnostics. The watchdog checks for timeouts at the frequency specified by watchdog_frequency (default 100 Hz).

Subscribed Topics

Published Topics

  • imu (sensor_msgs/Imu)
    • Update Rate: On each complete set of synchronized CAN frames (typically 100 Hz), but only if IMU data is not all zeros
    • Contains angular velocity (rad/s) and linear acceleration (m/s²) data from the MM7.10
    • Orientation field is not used (covariance set to -1)
    • Roll rate sign is inverted to match ROS coordinate system conventions
  • info (off_highway_mm7p10_msgs/Information)
    • Update Rate: On each complete set of synchronized CAN frames (when IMU is published)
    • Contains current sensor status information including status bits for all channels (yaw, roll, pitch rates and accelerations) and temperature data
  • /diagnostics (diagnostic_msgs/DiagnosticArray)
    • Update Rate: On each complete set of synchronized CAN frames or when watchdog detects timeout
    • Diagnostic status contains:
      • Timeout status (monitored by watchdog timer at watchdog_frequency)
      • Sensor status bits from all six channels (yaw, roll, pitch rates and X, Y, Z accelerations)
      • Temperature validity status

Parameters

See receiver_params.yaml.

Launch files

  • receiver_launch: Starts the receiver with the given parameters.
    • Arguments:
      • params: Path to ROS YAML parameter file to load for receiver. If not provided, default parameters from this package are loaded.
CHANGELOG

Changelog for package off_highway_mm7p10

0.11.0 (2026-01-26)

  • Add ROS2 Bosch MM7P10 inertial measurement unit sensor driver
  • Contributors: Gabriela Adriana Lapuste

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged off_highway_mm7p10 at Robotics Stack Exchange

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

Package Summary

Version 0.11.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/bosch-engineering/off_highway_sensor_drivers.git
VCS Type git
VCS Version humble-devel
Last Updated 2026-01-26
Dev Status MAINTAINED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The off_highway_mm7p10 package

Maintainers

  • Gabriela-Adriana Lapuste

Authors

  • Gabriela-Adriana Lapuste

off_highway_mm7p10

The off_highway_mm7p10 package provides a receiver node to receive and decode CAN frames from the Bosch MM7.10 Inertial Measurement Unit (IMU) into ROS messages - it implements an off_highway_can::Receiver.

Further information on the Bosch MM7.10 IMU, its inputs, outputs and how they can be interpreted can be found on the Bosch Rexroth Homepage.

Supported devices

Device name Part Number Description
MM7.10 IMU R 917 013 362 - 6-axis IMU (3-axis gyroscope, 3-axis accelerometer)
- IMU data output on automotive CAN is supported

Contact: off-highway.beg@bosch.com

Nodes

Receiver

The MM7.10 receiver decodes CAN frames into IMU data and publishes it as ROS sensor messages.

The MM7.10 sends its data in three synchronized CAN frames (TX1, TX2, TX3) containing:

  • TX1 (Z_AY): Yaw rate, lateral acceleration (Y), temperature, status bits
  • TX2 (X_AX): Roll rate, longitudinal acceleration (X), status bits
  • TX3 (Y_AZ): Pitch rate, vertical acceleration (Z), hardware index, status bits

All three frames must be received with matching message counters before the data is published. If frames are missed or message counters don’t match, a warning is logged and the data is not published.

The receiver validates message counters across the three frames to ensure synchronization. Messages with all-zero IMU values are filtered out as invalid.

The IMU data is published as a standard sensor_msgs/Imu message. The orientation field is not populated (covariance set to -1), as the MM7.10 only provides angular velocities and linear accelerations, not orientation estimates.

Additionally, diagnostic information including sensor status bits and temperature is published as an Information message and monitored for errors. If any status bits indicate an error (IMU not available, signal failure, or initialization in progress) or if the temperature is invalid, a diagnostic error is published on /diagnostics.

If the receiver node does not receive any CAN messages within the configured timeout period, the watchdog will detect this and publish a diagnostic error on /diagnostics. The watchdog checks for timeouts at the frequency specified by watchdog_frequency (default 100 Hz).

Subscribed Topics

Published Topics

  • imu (sensor_msgs/Imu)
    • Update Rate: On each complete set of synchronized CAN frames (typically 100 Hz), but only if IMU data is not all zeros
    • Contains angular velocity (rad/s) and linear acceleration (m/s²) data from the MM7.10
    • Orientation field is not used (covariance set to -1)
    • Roll rate sign is inverted to match ROS coordinate system conventions
  • info (off_highway_mm7p10_msgs/Information)
    • Update Rate: On each complete set of synchronized CAN frames (when IMU is published)
    • Contains current sensor status information including status bits for all channels (yaw, roll, pitch rates and accelerations) and temperature data
  • /diagnostics (diagnostic_msgs/DiagnosticArray)
    • Update Rate: On each complete set of synchronized CAN frames or when watchdog detects timeout
    • Diagnostic status contains:
      • Timeout status (monitored by watchdog timer at watchdog_frequency)
      • Sensor status bits from all six channels (yaw, roll, pitch rates and X, Y, Z accelerations)
      • Temperature validity status

Parameters

See receiver_params.yaml.

Launch files

  • receiver_launch: Starts the receiver with the given parameters.
    • Arguments:
      • params: Path to ROS YAML parameter file to load for receiver. If not provided, default parameters from this package are loaded.
CHANGELOG

Changelog for package off_highway_mm7p10

0.11.0 (2026-01-26)

  • Add ROS2 Bosch MM7P10 inertial measurement unit sensor driver
  • Contributors: Gabriela Adriana Lapuste

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged off_highway_mm7p10 at Robotics Stack Exchange

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

Package Summary

Version 0.11.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/bosch-engineering/off_highway_sensor_drivers.git
VCS Type git
VCS Version humble-devel
Last Updated 2026-01-26
Dev Status MAINTAINED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The off_highway_mm7p10 package

Maintainers

  • Gabriela-Adriana Lapuste

Authors

  • Gabriela-Adriana Lapuste

off_highway_mm7p10

The off_highway_mm7p10 package provides a receiver node to receive and decode CAN frames from the Bosch MM7.10 Inertial Measurement Unit (IMU) into ROS messages - it implements an off_highway_can::Receiver.

Further information on the Bosch MM7.10 IMU, its inputs, outputs and how they can be interpreted can be found on the Bosch Rexroth Homepage.

Supported devices

Device name Part Number Description
MM7.10 IMU R 917 013 362 - 6-axis IMU (3-axis gyroscope, 3-axis accelerometer)
- IMU data output on automotive CAN is supported

Contact: off-highway.beg@bosch.com

Nodes

Receiver

The MM7.10 receiver decodes CAN frames into IMU data and publishes it as ROS sensor messages.

The MM7.10 sends its data in three synchronized CAN frames (TX1, TX2, TX3) containing:

  • TX1 (Z_AY): Yaw rate, lateral acceleration (Y), temperature, status bits
  • TX2 (X_AX): Roll rate, longitudinal acceleration (X), status bits
  • TX3 (Y_AZ): Pitch rate, vertical acceleration (Z), hardware index, status bits

All three frames must be received with matching message counters before the data is published. If frames are missed or message counters don’t match, a warning is logged and the data is not published.

The receiver validates message counters across the three frames to ensure synchronization. Messages with all-zero IMU values are filtered out as invalid.

The IMU data is published as a standard sensor_msgs/Imu message. The orientation field is not populated (covariance set to -1), as the MM7.10 only provides angular velocities and linear accelerations, not orientation estimates.

Additionally, diagnostic information including sensor status bits and temperature is published as an Information message and monitored for errors. If any status bits indicate an error (IMU not available, signal failure, or initialization in progress) or if the temperature is invalid, a diagnostic error is published on /diagnostics.

If the receiver node does not receive any CAN messages within the configured timeout period, the watchdog will detect this and publish a diagnostic error on /diagnostics. The watchdog checks for timeouts at the frequency specified by watchdog_frequency (default 100 Hz).

Subscribed Topics

Published Topics

  • imu (sensor_msgs/Imu)
    • Update Rate: On each complete set of synchronized CAN frames (typically 100 Hz), but only if IMU data is not all zeros
    • Contains angular velocity (rad/s) and linear acceleration (m/s²) data from the MM7.10
    • Orientation field is not used (covariance set to -1)
    • Roll rate sign is inverted to match ROS coordinate system conventions
  • info (off_highway_mm7p10_msgs/Information)
    • Update Rate: On each complete set of synchronized CAN frames (when IMU is published)
    • Contains current sensor status information including status bits for all channels (yaw, roll, pitch rates and accelerations) and temperature data
  • /diagnostics (diagnostic_msgs/DiagnosticArray)
    • Update Rate: On each complete set of synchronized CAN frames or when watchdog detects timeout
    • Diagnostic status contains:
      • Timeout status (monitored by watchdog timer at watchdog_frequency)
      • Sensor status bits from all six channels (yaw, roll, pitch rates and X, Y, Z accelerations)
      • Temperature validity status

Parameters

See receiver_params.yaml.

Launch files

  • receiver_launch: Starts the receiver with the given parameters.
    • Arguments:
      • params: Path to ROS YAML parameter file to load for receiver. If not provided, default parameters from this package are loaded.
CHANGELOG

Changelog for package off_highway_mm7p10

0.11.0 (2026-01-26)

  • Add ROS2 Bosch MM7P10 inertial measurement unit sensor driver
  • Contributors: Gabriela Adriana Lapuste

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged off_highway_mm7p10 at Robotics Stack Exchange

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

Package Summary

Version 0.11.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/bosch-engineering/off_highway_sensor_drivers.git
VCS Type git
VCS Version humble-devel
Last Updated 2026-01-26
Dev Status MAINTAINED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The off_highway_mm7p10 package

Maintainers

  • Gabriela-Adriana Lapuste

Authors

  • Gabriela-Adriana Lapuste

off_highway_mm7p10

The off_highway_mm7p10 package provides a receiver node to receive and decode CAN frames from the Bosch MM7.10 Inertial Measurement Unit (IMU) into ROS messages - it implements an off_highway_can::Receiver.

Further information on the Bosch MM7.10 IMU, its inputs, outputs and how they can be interpreted can be found on the Bosch Rexroth Homepage.

Supported devices

Device name Part Number Description
MM7.10 IMU R 917 013 362 - 6-axis IMU (3-axis gyroscope, 3-axis accelerometer)
- IMU data output on automotive CAN is supported

Contact: off-highway.beg@bosch.com

Nodes

Receiver

The MM7.10 receiver decodes CAN frames into IMU data and publishes it as ROS sensor messages.

The MM7.10 sends its data in three synchronized CAN frames (TX1, TX2, TX3) containing:

  • TX1 (Z_AY): Yaw rate, lateral acceleration (Y), temperature, status bits
  • TX2 (X_AX): Roll rate, longitudinal acceleration (X), status bits
  • TX3 (Y_AZ): Pitch rate, vertical acceleration (Z), hardware index, status bits

All three frames must be received with matching message counters before the data is published. If frames are missed or message counters don’t match, a warning is logged and the data is not published.

The receiver validates message counters across the three frames to ensure synchronization. Messages with all-zero IMU values are filtered out as invalid.

The IMU data is published as a standard sensor_msgs/Imu message. The orientation field is not populated (covariance set to -1), as the MM7.10 only provides angular velocities and linear accelerations, not orientation estimates.

Additionally, diagnostic information including sensor status bits and temperature is published as an Information message and monitored for errors. If any status bits indicate an error (IMU not available, signal failure, or initialization in progress) or if the temperature is invalid, a diagnostic error is published on /diagnostics.

If the receiver node does not receive any CAN messages within the configured timeout period, the watchdog will detect this and publish a diagnostic error on /diagnostics. The watchdog checks for timeouts at the frequency specified by watchdog_frequency (default 100 Hz).

Subscribed Topics

Published Topics

  • imu (sensor_msgs/Imu)
    • Update Rate: On each complete set of synchronized CAN frames (typically 100 Hz), but only if IMU data is not all zeros
    • Contains angular velocity (rad/s) and linear acceleration (m/s²) data from the MM7.10
    • Orientation field is not used (covariance set to -1)
    • Roll rate sign is inverted to match ROS coordinate system conventions
  • info (off_highway_mm7p10_msgs/Information)
    • Update Rate: On each complete set of synchronized CAN frames (when IMU is published)
    • Contains current sensor status information including status bits for all channels (yaw, roll, pitch rates and accelerations) and temperature data
  • /diagnostics (diagnostic_msgs/DiagnosticArray)
    • Update Rate: On each complete set of synchronized CAN frames or when watchdog detects timeout
    • Diagnostic status contains:
      • Timeout status (monitored by watchdog timer at watchdog_frequency)
      • Sensor status bits from all six channels (yaw, roll, pitch rates and X, Y, Z accelerations)
      • Temperature validity status

Parameters

See receiver_params.yaml.

Launch files

  • receiver_launch: Starts the receiver with the given parameters.
    • Arguments:
      • params: Path to ROS YAML parameter file to load for receiver. If not provided, default parameters from this package are loaded.
CHANGELOG

Changelog for package off_highway_mm7p10

0.11.0 (2026-01-26)

  • Add ROS2 Bosch MM7P10 inertial measurement unit sensor driver
  • Contributors: Gabriela Adriana Lapuste

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged off_highway_mm7p10 at Robotics Stack Exchange