Outdated version

This page documents an outdated version of the driver. It is recommended to use the most recent version. Documentation can be found for that version here

Overview

ROS driver for all of Microstrain's current G and C series products.

Supported Devices

3DM-GQ7, 3DM-CV7, 3DM-GX5-45, 3DM-GX5-25, 3DM-GX5-15

Resources

Getting Started with GQ7

Installation

Buildfarm

This package is being built and distributed by the ROS build farm. If you do not need to modify the source, it is recommended to install directly from the buildfarm by running the following commands where ROS_DISTRO is the version of ROS you are using such as melodic or noetic:

Driver:

sudo apt-get update && sudo apt-get install ros-ROS_DISTRO-microstrain-inertial-driver

Docker

The microstrain_inertial_driver is distributed as a docker image. More information on how to use the image can be found on DockerHub.

Source

For more info on source code and how to build from source, visit the Source section of our README.md on our microstrain_inertial GitHub page.

For more information on the ROS distros and platforms we support, please see our index.ros.org page.

Usage

Configure Parameters

This node uses a params.yml file for ease of configuration. This file contains all available parameters for the node, so please refer to that file for more information on the available parameters and how to use them.

Override Parameters for ROS

1. Copy and paste the line(s) you desire to change from params.yml into a new .yml file. We will call it /home/user/my_params.yml for this example. This new .yml file will override the default params.yml and if there are multiple lines of the same parameter, the last instance of the parameter will take precedence.

2. Launch the driver and specify the new params file:

roslaunch microstrain_inertial_driver microstrain.launch params_file:=/home/user/my_params.yml

Override Parameters for ROS2

1. Copy the file empty.yml to a new .yml file. For this example we will call the new file /home/user/my_params.yml. This new .yml file will override the default params.yml and if there are multiple lines of the same parameter, the last instance of the parameter will take precedence.

2. Copy and paste the line(s) you desire to change from params.yml into /home/user/my_params.yml.

3. Launch the driver and specify the new params file:

ros2 launch microstrain_inertial_driver microstrain_launch.py params_file:=/home/user/my_params.yml

Messages Publishing

See below for a mapping between the ROS topics and messages to the MIP messages that populate them

Standard ROS Messages

The following topics contain standard ROS messages often used by other nodes. Sensor data is often massaged or converted to be fit into what the ROS standards dictate. This is not always the case, so please refer to the documentation for each topic to see how the data might be different than expected.

MIP Messages

The following topics contain messages that are more or less an exact pass through to a MIP data field that does not fit into a standard ROS message

Other Messages

The following topics do not fall into any of the above categories and are likely addons to the device not specifically from the MIP protocol

  • nmea/sentence nmea_msgs/Sentence

    • GGA NMEA sentences may be published from the aux port of a GQ7 if it is connected and the following configuration is set:
         aux_port: '/dev/ttyACM1'  # The serial port that the aux port is connected on
         rtk_dongle_enable: True  # Enable the handshake on the aux port to enable NMEA streaming
         publish_nmea: True  # Enable the publishing of NMEA messages
    • Several types of NMEA sentences may be published from the main port of the GQ7 if publish_nmea is true, and this section of config is configured to stream NMEA.

Services

Wiki: microstrain_inertial_driver/3.0 (last edited 2023-11-02 21:35:07 by RobFisher)