BlueROV2 Software Setup

By Rusty, Kevin, and Daniel

Guide Versions

This guide is for the R4 version of the BlueROV2 or ROVs that have been upgraded to a Navigator Flight Controller and BlueOS software. If you have an older R1, R2, or R3 version of the BlueROV2 that still uses a Pixhawk autopilot and Companion software, use this version of the Software Setup 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

Power on the BlueROV2

1. Open the battery enclosure by removing the Pressure Relief Valve (PRV) plug from the bulkhead by turning the plug counterclockwise until you can take it out.

brov2-servicing-1

2. Remove the locking cord from the enclosure.

brov2-servicing-2

3. Grip the end cap from the tabs and pull it away from the tube to remove it and open the enclosure. Do not pull directly from the power cables.

brov2-servicing-3

4. Connect the XT90 connector from the battery to the XT90 connector on the power cable and place the battery in the tube.

brov2-servicing-4

To close the battery enclosure:

1. Push the end cap and flange assembly back onto the tube until it is fully seated. If you have a locking-style enclosure, make sure the rotation locking tab sits inside the slot in the tube.

2. Insert the locking cord through the slot.

3. Reinstall the PRV or vent plug back in the bulkhead. Turn the plug clockwise until it stops to seal it.

Connect the FXTI

1. 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.

2. 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

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

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

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

FXTI-USB

Choose Your Operating System

Now that the BlueROV2 is powered on and connected to the computer, click on the blue buttons below to show the installation and network configuration instructions for your operating system:

Windows Setup macOS Setup Linux Setup

Installing QGroundControl

QGroundControl (QGC) is ground control station software that serves as the graphical user interface to view the camera and control the ROV. Download the latest recommended version from the link below and install it on your computer. Please note that there may be updated versions of QGroundControl available but we recommend using the version from the link below for the best experience.

Try Cockpit!

Cockpit is our new, highly customizable ground control station software and we’d love for you to try it out. Cockpit allows you to fully customize the user interface through its widget system, view multiple video streams, customize controller functions, and much more. Check this link for more information. Installers for Windows, Mac, and Linux are available here.

Network Setup

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 Settings

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

1. Go to System Preferences then Network.

2. The FXTI acts as a USB Ethernet adapter and will be displayed as “USB 10/100 LAN”, select it 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

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. The FXTI acts as a USB Ethernet adapter and will show up as an Ethernet device in the Device MAC Address dropdown, select it from the dropdown menu.

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

Update Software

Before continuing with setup, 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. It comes preinstalled on the BlueROV2’s onboard computer. 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. Do as the friendly welcome banner suggests and connect to a WiFi network by clicking on an available network from the Wifi menu and entering the password.


Updating BlueOS

To perform a BlueOS software update:

Click on BlueOS Version from the left sidebar. This page will show the currently installed BlueOS version. It will also display an “UPGRADE TO…” button if there is update for BlueOS available. Go ahead and upgrade to the latest version if one is 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.

Make sure you have internet access when checking for updates. No updates will be displayed if the BlueOS is not connected to the internet.

Updating ArduSub

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

1. Click on Autopilot Firmware from the left sidebar. The currently installed firmware version will be displayed in the autopilot summary information at the top.

2. Expand the Firmware update section. Select Sub from the Vehicle type dropdown menu. From the Firmware dropdown menu, select the latest STABLE version available (a higher number means a newer version). If the latest stable matches what is currently installed, you don’t have to do anything. Otherwise, if a newer version is available, click INSTALL FIRMWARE and wait for the process to finish.


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. Do not add the battery capacity, leave it at “0”. You will monitor the remaining battery charge level by reading the voltage directly, this is explained further in the Operating Guide.

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

Controller Setup

Connecting the Controller

The Xbox controller is our recommended controller for the best experience. The Logitech F310 is also a good alternative for a more affordable option.

QGroundControl also supports many other types of gamepad controllers. If you would like to use a different type of controller, please refer to QGroundControl documentation for information about other supported controllers.

Xbox Controller

The Xbox controller is plug-and-play with Windows systems. It can be used wired with a USB-C cable or wirelessly via Bluetooth. To use the controller wirelessly, your computer must have Bluetooth enabled and the controller must be paired from the Bluetooth settings menu.

To pair the controller with your computer:

1. Turn on the Xbox controller by holding down the middle Xbox button until it lights up.

2. Put the controller in pairing mode by holding down the small pairing button on the top of the controller until the middle Xbox button starts to blink.

3. Open the Start menu and go to Settings > Devices > Bluetooth & other devices.

4. In the Windows Bluetooth menu, select Add Bluetooth or other device and select the Bluetooth option.

5. Select the controller from the list. The controller must be in pairing mode to show up as a selectable device.

The middle Xbox button can be used as a user-assignable function button. By default, it is configured to open the Windows Game Bar. This needs to be disabled before this button can be used in QGroundControl.

1. Open the Start menu and go to Settings > Gaming.

2. Uncheck the Open Xbox Game Bar using this button… option.

The Xbox controller must be paired via Bluetooth before it can be used in QGroundControl. To pair the controller:

1. Turn on the Xbox controller by holding down the middle Xbox button until it lights up.

2. Put the controller in pairing mode by holding down the small pairing button on the top of the controller until the middle Xbox button starts to blink.

3. Open Bluetooth settings, then select the controller from the list of nearby devices.

The Xbox controller is plug-and-play when connected with a USB-C cable in the most recent Ubuntu version and many other Linux versions.

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

Logitech F310 Controller

Set the switch on the back of the controller to the “X” position and plug in the USB cable.

Set the switch on the back of the controller to the “D” position and plug in the USB cable.

Set the switch on the back of the controller to the “X” position and plug in the USB cable.

Controller Calibration

The controller may require calibration before you can enable it for use in 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 Calibration, then click Start.

brov2-software-setup-qgc-4

4. Follow the step-by-step instructions and 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 enabled.

Button Setup

The default button setup for the BlueROV2 is shown below:

The button layout can be configured in the Joystick tab on the Vehicle Setup page under Button Assignment.

1. Go to the Vehicle Setup menu then select Joystick from the sidebar.

2. Under Button Assignment, QGroundControl shows a list of all the buttons and their assigned functions.

3. Press the button that you want to change on the controller. The corresponding button number in the list will light up next to the functions that are assigned to it. The functions are listed in two columns labeled Function and Shift Function.

  • The function listed in the first Function column is triggered when the button is pressed normally.
  • The function listed in the second Shift Function column is triggered when the button is pressed while the Shift button is held down.
  • The default shift button is the “A” button on the Xbox controller.

4. Select the desired function and shift function for the button from the dropdowns to the right of the button number. Be aware that not all button functions that are displayed are supported. A list of the most common button functions is provided below.

Below is a list of the common button functions and the associated button function parameter as it is displayed in the QGroundControl dropdown. A complete list of all available button functions for advanced control is available in the ArduSub.com documentation.

FunctionButton Function Parameter
Armarm
Disarmdisarm
Shiftshift
Camera Tilt Upmount_tilt_up
Camera Tilt Downmount_tilt_down
Increase Gaingain_inc
Decrease Gaingain_dec
Lights Brighterlights1_brighter
Lights Dimmerlights1_dimmer
Trim Pitch Forwardtrim_pitch_inc
Trim Pitch Backwardtrim_pitch_dec
Trim Roll Righttrim_roll_inc
Trim Roll Lefttrim_roll_dec
Manual Modemode_manual
Depth Hold Modemode_depth_hold
Stabilize Modemode_stabilize
Camera Tilt Centermount_center
Toggle Input Holdinput_hold_set
Roll and Pitch Toggleroll_pitch_toggle
Open Gripperservo_#_max_momentary*
Close Gripperservo_#_min_momentary*
*Where # is the servo number corresponding to the output channel the Gripper is connected to. Refer to the servo function mapping table below.

The following table shows which output channels the servo_# button functions control for both the Navigator Flight Controller and Pixhawk 1 Autopilot.

Servo Function NumberNavigator Output ChannelPixhawk 1 Output Channel
servo_19Aux 1
servo_210Aux 2
servo_311Aux 3

To The First Dive!

Your computer setup is now complete! Please continue to our BlueROV2 Operation Manual to finish getting ready for your first dive!

BlueROV2 Operation
Learn how to operate your newly built BlueROV2!






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!