Add a localization stream

You can configure odometry and point cloud data to go over realtime channels during teleoperation. These data will also be sent as telemetry data to the Formant cloud. This allows you to use realtime data channels to see odometry and point cloud data with very tight feedback and low latency during teleoperation, while also being able to store data from your teleoperation session and review it later as telemetry data in Formant.

For more information on data channels in Formant, see Telemetry vs. realtime data streams.

This guide will teach you how to add teleoperation capabilities to your localization stream and add it to your teleoperation view.

Prerequisite: Configure telemetry localization data

If you haven't already, configure your telemetry localization data stream as described in Add a ROS localization stream.

Once your telemetry localization stream is configured, you will see it under the Localization section of your teleoperation settings.

Step 1: Navigate to device teleoperation settings

  1. In Formant, in the upper-left corner, open the menu and click Settings.
  2. Click Devices, and then click on the device you want to configure.
  3. Click on the Teleoperation tab to open the teleoperation configuration page.

Step 2: Add teleop functionality to localization stream

  1. In the teleoperation configuration page, scroll down to Localization . You should see the localization stream you configured in the Prerequisite section:
  1. Click the pencil icon to open the configuration window.

Add realtime odometry stream

You can configure your odometry data to be sent over the realtime data pipeline by adding the same odometry topic to your localization stream and under the Odometry section of your device's teleoperation settings.

To accomplish this, you'll want to complete the following two tasks (either order is fine):

  • Add the odometry topic you want to visualize in realtime during teleoperation to your localization stream:

As long as you provide the same odometry stream in both configurations, it will be sent over the realtime data channel during teleoperation, as well as being uploaded to the Formant cloud as telemetry data.

Add realtime point cloud stream

You can configure your point cloud data to be sent over the realtime data pipeline by adding the same point cloud topic to your localization stream and under the Pointcloud section of your device's teleoperation settings.

To accomplish this, you'll want to complete the following two tasks (either order is fine):

  • Add the point cloud topic(s) you want to visualize in realtime during teleoperation to your localization stream:

As long as you provide the same point cloud stream(s) in both configurations, it will be sent over the realtime data channel during teleoperation, as well as being uploaded to the Formant cloud as telemetry data.

Add publish goal and cancel goal topics

If you configure the Publish goal and Cancel goal topics, you can click a location on the localization map and it will be sent to your robot as a goal. That goal can also be canceled:

PropertyUsage
Publish goalEnter the topic to which Formant should publish a new goal for your robot to follow. This message will be sent with the ROS data type geometry_msgs/PoseStamped.
Cancel goalEnter the goal ID topic to cancel the current goal. This topic should have the ROS data type actionlib_msgs/GoalID.

When you're finished configuring your stream, click Done, and then Save.

Step 3: Add a navigation stream to your teleoperation view

Once your localization stream has been ingested as telemetry data, you can add it as a view in your teleoperation interface.

  1. Scroll to the top of the teleoperation configuration window. Localization streams which have been ingested by the Formant agent can be added to the Primary View or Sidebar Views by clicking the dropdown arrow:
  1. Click Save to confirm your teleoperation settings.

Step 4: Verify your work in teleoperation mode

  1. Ensure that you have added your navigation stream to a view as in Step 3.
  2. In your device view, in the upper-right corner, click the three dots >> Teleop, or enter Shift + T.
  3. Verify that your localization module is showing up properly:

Step 5: Learn about localization and relocalization workflows

Once you've configured your robot's localization streams, continue onto Localization and relocalization workflow.

See also

👋

If you notice an issue with this page or need help, please reach out to us! Use the 'Did this page help you?' buttons below, or get in contact with our Customer Success team via the Intercom messenger in the bottom-right corner of this page, or at [email protected].