Skip to content
Go to file

NovAtel OEM7 Driver

ROS Driver for NovAtel OEM7 GNSS/SPAN Receivers.

Getting Started

This documents how to custom-build the novatel_oem7_driver for ROS from the provided source code. Typical users will prefer to install the pre-made binary release that has been published in the ROS distribution.

Refer to our documentation under the ROS community wiki for:

  • Hardware Setup
  • Binary Driver Installation
  • Driver Configuration
  • Driver Runtime Operation
  • Post-Processing data
  • Information on Relevant NovAtel Services and Products
  • Advanced Topics

novatel_oem7_driver documentation on ROS community wiki is located here:

Building novatel_oem7_driver from source code


  • ROS Kinetic or Melodic, including gps-common and tf ROS packages.
  • Obtain OEM7 receiver.



novatel_oem7_driver depends on the ROS gps-common and tf packages. You can install them via the commands:

sudo apt install ros-${ROS_DISTRO}-tf
sudo apt install ros-${ROS_DISTRO}-gps-common

Note ${ROS_DISTRO} is expected the evaluate to the name of your ROS distro, such as 'melodic', for example.

Option A: Install binary package

There is substantial documention regarding use of the binary release of this driver on the ROS community wiki, located here:

The key step is:

sudo apt install ros-${ROS_DISTRO}-novatel-oem7-driver

Please refer to the Community Wiki for detailed run-time documentation for novatel_oem7_driver (link given above).

Option B: Build from source (docker)

These instructions assume that you are using Ubuntu 18.04.

  1. Install Docker, add the user you intend on using to the 'docker' group. For example:
    1. Add the current user to the 'docker' group: sudo usermod -aG docker ${USER}
    2. Apply the membership changes to the current session: su - ${USER}
  2. From the base directory of the repository, run ./docker/ (this may take >10mins)
  3. From within your docker container (where the prompt from above should land), run ./ -f

Option C: Build from source (local environment)

Here are approximate instructions for building this driver with your local ROS development environment. Please note this is for reference. The Docker approach is recommended.

  1. Install ROS with developer support to your environment (ROS Wiki Ubuntu 18.04)
  2. Install ROS dependencies gps-common, tf Ex: sudo apt install python-rosdep python-rosinstall python-rosinstall-generator python-wstool build-essential ros-melodic-gps-common ros-melodic-tf
  3. Run source /opt/ros/melodic/setup.bash
  4. Set ROS_DISTRO environment variable (Ex: ROS_DISTRO=melodic)
  5. Run bash
  6. Run build: ./ -f

Create .deb from your build and install it

After building, run the create-${ROS_DISTRO} script to produce the .deb packages (novatel-oem7-driver and novatel-oem7-msgs) for your binary build.

You can then install these via dpkg, provided you have installed the required common packages mentioned earlier:

sudo dpkg -i ros-{$ROS_DISTRO}-novatel-oem7*.deb

Next Steps

Refer to the novatel_oem7_driver documentation in the ROS wiki for more information:



This project is licensed under the MIT License - see the LICENSE file for details

You can’t perform that action at this time.