Skip to content

Connecting FlightGoggles to an embedded system

Winter Guerra edited this page Mar 21, 2019 · 4 revisions

FlightGoggles is capable of providing hardware-in-the-loop simulation capabilities when connected to a NVIDIA Jetson or other embedded ROS-based system.

Requirements

  • Embedded computing platform running ROS Kinetic and Ubuntu 16.04.
  • A capable Windows/Ubuntu/Mac computer for simulation rendering with >= 2GB VRAM.
  • A local ethernet connection connecting the simulation computer with the embedded computing platform.

Quickstart Guide

  • Install FlightGoggles ROS framework on the embedded computing platform
    • NOTE: To save disk space on the embedded system, do not download the FlightGoggles renderer binary. As noted in the install instructions, passing in --cmake-args -DFLIGHTGOGGLES_DOWNLOAD_BINARY=OFF to catkin build will disable automatic downloading of the renderer binary.
  • Download the latest release of the FlightGoggles renderer binary from the releases page onto the rendering computer.
  • Start the FlightGoggles renderer binary on the rendering computer. Once running, input the IP/hostname of the embedded system.

You are now ready to start the FlightGoggles hardware-in-the-loop simulation. On the embedded system, you can now start the simulation using any of the following commands:

# To run example environment with joystick/keyboard teleoperation
roslaunch flightgoggles teleopExample.launch use_external_renderer:=true
# Stereo teleoperation example. See FAQ for more info on stereo rendering limitations.
roslaunch flightgoggles stereoTeleopExample.launch use_external_renderer:=true
# To run core simulation framework without teleoperation
roslaunch flightgoggles core.launch use_external_renderer:=true