BlueROV2 Software Setup

By Rusty, Kevin, and Daniel

Guides in this Series

BlueROV2 Assembly
Get your BlueROV2 built quickly with this assembly guide!
BlueROV2 Software Setup
Get your BlueROV2 connected to a topside computer, the vehicle updated, and joystick properly calibrated!
BlueROV2 Operation
Learn how to operate your newly built BlueROV2!
These instructions are for the latest R4 version of the BlueROV2 that uses a Raspberry Pi 4B and Navigator flight controller with BlueOS (from June 7, 2022 or later). For software setup instructions for R3 and older BlueROV2s using a Pixhawk autopilot and Raspberry Pi 3B, use this guide instead.

Software Introduction

These are instructions for the first time that you set up your computer to work with the BlueROV2. If you have not assembled your BlueROV2, please see our Assembly Guide and assemble your BlueROV2 prior to setting up the software.

Topside Setup

1. Power on the BlueROV2 by opening the Battery Enclosure and connecting the XT90 connector from the battery to the XT90 connector from the power cables.

2. Insert the Binder connector from your Fathom ROV Tether (or Spool extension cable) onto the connector bulkhead receptacle on the FXTI so the WHITE ARROW on the plug aligns with the white line.

3. Rotate the connector head clockwise until the connector locks in place and the GREEN LOCK symbol is in the 12 o'clock position.

FXTI-Tether-Locked

4. Insert the USB Type-B connector end of the included cable into the Type-B port on the back of the FXTI.

5. Connect the USB Type-A connector into a USB port on your topside computer.

6. Once connected, the indicator lights on the top of the box should illuminate showing the “Power” and “Link” status.

FXTI-USB

Now that the BlueROV2 is powered on and connected to the computer, select your operating system below to begin the installation and network configuration:

WindowsMacLinux

QGroundControl Installation, Network Setup and Controller Setup

Install QGroundControl for Windows

To connect your computer to the BlueROV2, you need to download and install QGroundControl.

The latest recommended version of QGroundControl can be downloaded from the following link:

This is the latest software version that has been tested for full compatibility with the BlueROV2, there may be newer versions available directly from the QGC website but this is the version we recommend using for the best experience.

Windows Network Setup

Network Settings

1. Go to the Windows Control Panel then select Network and Sharing Center. If you do not see Network and Sharing Center, change the View by option to large or small icons.

brov2-windows-network-setup-1

2. In the Network and Sharing Center window, select Change adapter settings.

brov2-windows-network-setup-2

3. The FXTI acts as a USB Ethernet adapter and will show up as an Ethernet device in this menu. It should be displayed as "Realtek USB FE Family Controller". Right click on this Ethernet adapter then choose Properties.

brov2-windows-network-setup-3

4. In the properties dialog, click on Internet Protocol Version 4 (TCP/IPv4) to highlight it, then click Properties.

brov2-windows-network-setup-4

5. Select "Use the following IP address" And enter 192.168.2.1 for the IP address and 255.255.255.0 for the Subnet mask. Select OK, you can then close out the rest of the windows.

brov2-windows-network-setup-5

Firewall

1. Go to the Windows Control Panel then select Windows Defender Firewall. If you do not see Windows Defender Firewall, change the View by option to large or small icons.

brov2-firewall-setup-1

2. Select "Allow an app or feature through Windows Defender Firewall".

brov2-firewall-setup-2

2. Select Change Settings, find "Open source ground control app provided by QGroundControl dev team" or "QGroundControl" in the application list. Check the box next to it and check the boxes for Private and Public then click OK.

brov2-firewall-setup-3

Joystick Setup

Initial Setup for XBox Controllers on Windows

For using the shift button functionality of XBox Controllers on Windows:

1. Go to Start -> Settings

2. Open the Gaming settings

settings

3. Go to Game Bar tab from the left navigation panel

4. Uncheck the 'Open Game bar using this button on a controller' option

gamebar

This will enable the XBox home button on the controller to be used as the shift button for ROV controls.

The Xbox Home button also acts as the on and off button for the controller when held down for a few seconds. If using this button for the shift function, do not hold it down for more than a couple of seconds to avoid turning off the controller.

XBox 360 Controller

  • Plug and Play

XBox One Controller

  • Wired: Plug and Play
  • Wireless:
    • 1. Plug in Microsoft XBox Wireless Adapter for Windows.
    • 2. Turn on the controller, then press the Wireless Enrollment button on the top of the controller and on the wireless adapter.

Logitech GamePad (F710 and F310)

  • Logitech controllers should have the switch on the back set to "X".

Install QGroundControl for Mac

To connect your computer to the BlueROV2, you need to download and install QGroundControl.

The latest recommended version of QGroundControl can be downloaded from the following link:

This is the latest software version that has been tested for full compatibility with the BlueROV2, there may be newer versions available directly from the QGC website but this is the version we recommend using for the best experience.

Mac Network Setup

Mac Network Settings

1. Go to System Preferences > Network

2. If your computer has an Ethernet port, select Ethernet from the options on the left side.

3. Select the dropdown next to "Configure IPv4" and then select "Manually"

4. Enter 192.168.2.1 for the IP Address and 255.255.255.0 for the Subnet Mask and then select apply.

mac-network-settings-annotated

Mac Joystick Setup

XBox 360 Controller

1. Download the driver here. For more information on this driver, see the Readme.

2. Install the XBox 360 controller driver.

2. Plug in the Windows XBox 360 Wireless Receiver for Windows.

3. Turn on the XBox 360 Controller.

XBox One Controller

There is currently no support for wireless use.

1. Download the driver here. For more information on this driver, see the Readme.

2. Install the XBox 360 controller driver.

2. Plug in the XBox One Controller directly to the computer using a micro USB cable.

3. Turn on the XBox One Controller.

Logitech GamePad (F710 and F310)

  • Logitech controllers should have the switch on the back set to "X".

Install QGroundControl for Linux

To connect your computer to the BlueROV2, you need to download and install QGroundControl.

The latest recommended version of QGroundControl can be downloaded from the following link:

This is the latest software version that has been tested for full compatibility with the BlueROV2, there may be newer versions available directly from the QGC website but this is the version we recommend using for the best experience.

Linux Network Setup

Linux Network Settings

1. Click the Network Icon in the toolbar at the top of the screen, and click "Edit Connections..."

LinuxStep1

2. Click "Add"

LinuxStep2

3. Select "Ethernet" for the connection type and click "Create..."

LinuxStep3

4. From the "Device MAC Address" dropdown, select the Ethernet interface you want to use. If you are using the built in Ethernet card on your computer, there will be only one choice.

LinuxStep4

5. Click the "IPv4 Settings" tab, and from the "Method" dropdown menu, select "Manual". Click "Add", and enter 192.168.2.1 for the Address, 255.255.255.0 for the Netmask and 0.0.0.0 for the Gateway. Click "Save..." to complete the setup.

LinuxStep5

Linux Joystick Setup

All required drivers for wired Xbox 360 controllers and Logitech F310 controllers come pre-loaded on Ubuntu 14.04 and 16.04, no setup necessary!

Logitech GamePad (F710 and F310)

  • Logitech controllers should have the switch on the back set to "X".

Update Software

Before proceeding, you must update the onboard BlueOS software and ArduSub firmware to get the latest feature updates and bug fixes. The BlueROV2 will need access to WiFi in order to perform the updates, make sure you are in an area with a strong and accessible WiFi network before continuing with the update process.

Be sure to use a fully charged battery when performing software updates.
The very first time the BlueROV2 is powered on, it may take a couple of minutes until it is fully booted up and ready to connect. The first boot may take up to two to three minutes for the file system to fully expand to the SD card capacity.

Accessing BlueOS

BlueOS is a collection of tools and features for managing the BlueROV2 through a browser accessible user interface. To access the BlueOS web interface:

1. Make sure you have followed the first part of this guide and have powered on the BlueROV2, connected it to the computer, and configured the network settings.

2. In a browser window, type 192.168.2.2 or blueos.local in the browser address bar.

3. You will be taken to the BlueOS web interface home screen. As the friendly welcome tour suggests, connect to an available WiFi network from the WiFi menu by clicking on an available network and entering the password.

brov2-windows-network-setup-7
If you are not able to access the BlueOS interface through your browser, please follow the ArduSub Troubleshooting Guide before contacting Blue Robotics Support.

Updating BlueOS

To perform a BlueOS software update:

1. From the BlueOS Main page, open the menu on the left side, expand the Tools submenu, and select Version Chooser.

brov2-windows-network-setup-8
brov2-windows-network-setup-9

2. The Version Chooser page will show the current BlueOS version installed. There will also be an "Upgrade to" button shown if there is a newer stable version available. Go ahead and upgrade to the latest version if there is an upgrade available. The process may take a few minutes depending on the internet connection speed. Wait for the update process to complete, the page will automatically refresh once it is done and the new BlueOS version will be displayed.

Updating ArduSub

ArduSub is the flight control software that runs on the Raspberry Pi. To perform an ArduSub software update:

1. From the BlueOS Main page, open the menu on the left side, expand the Vehicle submenu, and select Firmware.

brov2-windows-network-setup-10

2. On the Firmware page, select "Sub" from the Vehicle dropdown menu.

3. From the Firmware dropdown menu, select the latest STABLE version available.

4. Click INSTALL FIRMWARE and wait for the process to finish.

brov2-windows-network-setup-11

Connecting to QGroundControl

1. With the BlueROV2 still connected and powered on, start the QGroundControl application.

2. Wait a few seconds for the ROV to auto-connect and the green parameters bar to finish loading from left to right.

3. If this is the first time setting up the ROV you will receive a message that additional setup is required. Follow the next sections to finalize setup.

If the vehicle does not connect, please follow the ArduSub Troubleshooting Guide before contacting Blue Robotics Support.

Load Heavy Parameters

Before proceeding with the next sections, users setting up a new BlueROV2 with the optional Heavy Retrofit Kit (8 thruster configuration) will need to load the default BlueROV2 Heavy parameters. If you are setting up a standard BlueROV2 (6 thruster configuration) you can skip this section and proceed to "Sensor Calibration".

1. Go to the Frame tab of the Vehicle Setup page.

2. Click on Vectored-6DOF, it should now be highlighted. You will be prompted to reboot the autopilot.

brov2-software-setup-qgc-5

3. To reboot the autopilot, click on the Parameters tab then click on Tools button in the upper right corner.

4. Under Tools select "Reboot Vehicle" and click "Ok".

brov2-software-setup-qgc-6

Sensor Calibration

1. In the Vehicle Settings page, select the red Sensors tab in the sidebar on the left.

brov2-software-setup-qgc-1

2. Click on the Accelerometers, choose "Roll90" for the Autopilot Orientation and click Ok.

brov2-software-setup-qgc-2

3. Follow the instructions to calibrate the accelerometer. After the calibration process, you will be prompted to reboot the autopilot. Click on reboot and wait for the ROV to reconnect.

3. Click on Compass, make sure "Roll90" is still selected, and click Ok.

brov2-software-setup-qgc-3

3. Follow the instructions to calibrate the compass. After the calibration process, you will be prompted to reboot the autopilot. Click on reboot and wait for the ROV to reconnect.

4. Click on Calibrate Pressure and wait for the calibration to complete.

When completed, the Sensors tab will no longer be red.

Voltage and Current Measurement Setup

In the Power tab of the QGroundControl Vehicle Setup page, select “Navigator w/ Blue Robotics Power Sense Module” for the Power Sensor. This will already be configured correctly.

brov2-software-setup-qgc-7

SOS Leak Sensor Setup

In the Safety tab, select "Navigator Built-In" as the leak detector pin, and set the Logic when dry to "Low". This will already be configured correctly.

brov2-software-setup-qgc-8

Configure Motor Directions

The direction that the thrusters will spin depends on how the vehicle and thrusters were assembled, so each thruster's forward/reverse direction must be configured in software.

To begin, navigate to the Vehicle Settings page in QGroundControl and select the Motors tab in the sidebar on the left, then proceed with Automatic Motor Direction Detection routine (recommended), or configure them manually.

Be sure to keep all body parts and clothing clear of thrusters while the BlueROV2 is armed.

Automatic Motor Direction Detection

The Automatic Motor Direction Detection routine needs to be performed while the BlueROV2 is floating in water. The ROV will activate each thruster individually and automatically detect the direction from the movement. This is the recommended method, especially for inexperienced users.

1. Place the vehicle in water with enough room for it to move around slightly without bumping into walls or the bottom. Make sure the vehicle has a bit of slack in the tether so that it can move freely.

2. Adjust the vehicle's ballast so it is neutrally or slightly positively buoyant in the water. Neutrally buoyant means that it neither sinks nor rises in the water. Positively buoyant means that it will rise to the surface in the water.

3. Click the Auto-Detect Directions button and wait while the vehicle does its motor direction detection routine.

brov2-software-setup-qgc-9

4. The results of the routine will appear as it progresses, and success or failure will be indicated for each individual thruster. If one of the thrusters fails, make sure the ROV has enough room to move around freely and attempt the test again. If one or more thrusters consistently fails, it could be an indication that it is not correctly connected to an ESC. Double check that the thrusters are connected to the correct ESC according to the assembly instructions.

Manual Configuration

DO NOT run thrusters for longer than 30 seconds in air or you will wear out the plastic bearings.

1. Read and understand the instructions on the setup page.

2. Arm the BlueROV2 by clicking the switch on the page.

3. One at a time, move each slider, and make sure that the thruster that spins matches the location in the diagram and is pushing air as described in the instructions. If a thruster is pushing air in the opposite direction, click the corresponding checkbox under the 'Reverse Motor Direction' section to correct the rotation. If the thruster that spins does not match its location in the diagram it means that it has been connected to the wrong ESC. Double check that the thrusters are connected to the correct ESC according to the assembly instructions.

4. When you are finished with the setup, disarm the ROV by clicking the switch.

brov2-software-setup-qgc-10

Joystick/Controller Calibration

The controller will require calibration before you can enable them for use with QGroundControl. If your controller requires calibration, the Joystick tab on the Vehicle Settings page will be red, and you should follow these steps to calibrate your controller. If your controller does not require calibration, the Joystick tab will not be red, and you can skip this step!

1. Go to the Vehicle Settings page in QGroundControl, then click on the red Joystick tab in the sidebar on the left. If you do not see a Joystick tab, this means that the controller is not detected by QGroundControl or not connected to the computer.

2. Ensure the 'RC Mode' selection is set to 3.

3. Click "Calibrate", then click "Next".

brov2-software-setup-qgc-4

4. Follow the step-by-step instructions, move the sticks as indicated in QGroundControl.

When completed, the Joystick tab will no longer be red, and the Enabled checkbox on the Joystick page will be checked.

Button Setup

The default button setup for the BlueROV2 is as shown in the image below:

joystick-defaults

The button functions may be reconfigured in the Joystick tab on the Vehicle Setup page under Button Assignment.

To The First Dive!

Your computer setup is now complete! Please see our Operation Manual to finish getting ready for your first dive!
BlueROV2 Operation
Learn how to operate your newly built BlueROV2!

Issue Reporting

We're always trying to make our documentation, instructions, software, and user experience better. If you're having an issue with anything, please report it so that we can address it as soon as possible! Here's where to do that depending on what's wrong:

  • ArduSub Issues: For anything related to the ArduSub software that runs on the Pixhawk and controls the ROV, reports issues on the ArduSub Github Issues Page. If you're unsure where your issue should be posted, you can report it here.
  • QGroundControl Issues: For anything related to the QGroundControl software, joystick setup, video streaming, etc., please report an issue on the QGroundControl Github Issues Page.
  • Documentation: For anything related to the documentation and instructions here, please report an issue by submitting an e-mail to [email protected].




Authors

Rusty

Rusty is the founder and CEO of Blue Robotics. His background is in engineering but he likes to be involved in everything at Blue Robotics!


Kevin

Kevin is the Applications Engineer at Blue Robotics. He has a love for marine robotics and explorations and was one of Blue Robotics' first Kickstarter backers in 2014! Since then he's joined our team and helps fellow explorers around the world use Blue Robotics products to accomplish their missions.


Daniel

Daniel is a Technical Support Specialist at Blue Robotics and is an expert at working with all elements of our product line!