The Robotic Operating System (ROS) is a set of open-source software libraries and tools that help you build robot applications. ROS uses a publish/subscribe model for data exchange. By installing a compatible driver, Swift Navigation devices can be used within ROS to obtain sensor data such as position, orientation, velocity or time.
Swift Navigation ROS 2 Driver
ROS 2 driver for Swift Navigation's GNSS/INS receivers and Starling Positioning Engine software is published on GitHub repository at github.com/swift-nav/swiftnav-ros2.
Driver Features:
- Designed for ROS 2 Humble but also works with ROS 2 Foxy
- Developed and tested on Ubuntu 22.04 (ROS 2 Humble) and Ubuntu 20.04 (ROS 2 Foxy) platforms
- Supports Swift Navigation receivers and Starling Positioning Engine in Swift Binary Protocol (SBP)
- TCP Client and Serial communication interfaces
- SBP file playback
- SBP data logging
- Publishes ROS 2 standard and Swift Navigation proprietary topics
- Configurable time stamping
- Written in C++
Refer to GitHub repository for driver installation and usage details.
Third-Party Drivers
Multiple ROS drivers for Swift Navigation devices can be also found on the Internet. Examples:
- ETH Zurich ROS / ROS 2 drivers (Python and C++ versions): github.com/ethz-asl/ethz_piksi_ros.
- ROS / ROS 2 driver (C++): github.com/szenergy/duro_gps_driver.
Note: For the third-party ROS driver related questions and support please contact their authors/developers directly.