BlueROV2 Software Setup
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.
2. Remove the locking cord from the enclosure.
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.
4. Connect the XT90 connector from the battery to the XT90 connector on the power cable and place the battery in the tube.
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.
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.
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 SetupInstalling 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.
2. In the Network and Sharing Center window, select Change adapter settings.
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.
4. In the properties dialog, click on Internet Protocol Version 4 (TCP/IPv4) to highlight it, then click Properties.
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.
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.
2. Select “Allow an app or feature through Windows Defender Firewall”.
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.
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.
1. Click the Network Icon in the toolbar at the top of the screen, and click Edit Connections…
2. Click Add
3. Select “Ethernet” for the connection type and click Create…
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.
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.
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.
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.
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.
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.
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”.
Sensor Calibration
1. In the Vehicle Settings page, select the red Sensors tab in the sidebar on the left.
2. Click on the Accelerometers, choose “Roll90” for the Autopilot Orientation and click Ok.
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.
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.
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.
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.
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.
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
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.
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.
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.
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.
Function | Button Function Parameter |
---|---|
Arm | arm |
Disarm | disarm |
Shift | shift |
Camera Tilt Up | mount_tilt_up |
Camera Tilt Down | mount_tilt_down |
Increase Gain | gain_inc |
Decrease Gain | gain_dec |
Lights Brighter | lights1_brighter |
Lights Dimmer | lights1_dimmer |
Trim Pitch Forward | trim_pitch_inc |
Trim Pitch Backward | trim_pitch_dec |
Trim Roll Right | trim_roll_inc |
Trim Roll Left | trim_roll_dec |
Manual Mode | mode_manual |
Depth Hold Mode | mode_depth_hold |
Stabilize Mode | mode_stabilize |
Camera Tilt Center | mount_center |
Toggle Input Hold | input_hold_set |
Roll and Pitch Toggle | roll_pitch_toggle |
Open Gripper | servo_#_max_momentary* |
Close Gripper | servo_#_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 Number | Navigator Output Channel | Pixhawk 1 Output Channel |
---|---|---|
servo_1 | 9 | Aux 1 |
servo_2 | 10 | Aux 2 |
servo_3 | 11 | Aux 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
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!