Field Operation

Before Anything Else

Watertightness is paramount when it comes to putting Minnebot in the field.  If watertightness is ever compromised, power the robot down, remove it from the water, remove the batteries, and dry fully before attempting to power it on again. However, you should never, NEVER have to do this if you follow the following instructions appropriately, whenever you put Minnebot in the water.

  • All screws must be screwed in tightly enough that there is slightly deflection in the handle of the Aqua Allen Key when you tighten. (The head should slightly flex). Do not overtighten. 
  • All screw holes must be dried, then filled with a small dab of silicone grease before screwing in anything. 
  • Battery doors must be securely closed, and the gaskets greased with silicone grease. 
  • The top lid must have its gasket lightly greased, and flattened appropriately whenever it is put back on.
  • Do not take off the top lid unless nessecary, because of the above. 
  • All connectors must be connected, or have their caps on at all times. 
  • Whenever possible, have a second person check screw tightnesses and confirm all your work so that no mistakes are made.

The following procedure should be followed for putting Minnebot in the water.

  1. Insert batteries, remembering to wipe down and then grease door gaskets. 
  2. Apply ballasting configuration, remembering to grease all screw holes.
  3. Check all screw tightnesses. 
  4. Check that all connectors are secure. 
  5. Check that battery doors are fully closed.
  6. Ensure that the small black O-ring is in Minnebot's fiber connector.
  7. Double check everything again.
  8. Put Minnebot in the water, watching carefully for air bubbles of unknown sources.  
  9. Once you are confident that Minnebot is watertight, check ballasting. (see ballasting section)
  10. Make any nesscary adjustments. 
  11. Take out of water, power up and connect, testing connection (if operating tethered). Instructions for this follow. 
  12. Put Minnebot back in, drowning fully.
  13. Begin operations. 


Additional Saltwater Procedures

When deploying Minnebot to saltwater, additional procedures must be observed. 

  • Before attatching ballasting plates which are in full contact with the robot (i.e. no spacers), apply a thin coat of petroleoum jelly to Minnebot on the area of contact. This will serve to seperate the annodized material of the shell from the non-annodized plates, which can corrode. 
  • When returning from a trial, careful wash down the robot.  Ideally, one could leave it soaking in freshwater, but most of the time this is not an option.  In this case, rinse the robot thouroughly with freshwater, making sure to spray out all cavities and compartments, including the battery door flaps. 
  • In a similar vein, once Minnebot has been washed off and dried, remove all ballasting and external attatchments, rinsing them fully in fresh water as well.  Also wipe down the areas of the shell that the ballasting protected from the freshwater rinse. 

Setup and Power-on

  1. To power on the robot in the field, follow these steps:
  2. Ensure that both battery bays are loaded.
  3. Flip the power switch on the back of the robot to the ON position.
  4. The small OLED screen in the back will begin to scroll.
  5. Once the screen displays "AQUA5 MENU", the robot is booted, running ROS, and ready to go.

Tethered Connection

The tethered connection configuration is as follows: 

  • Fiber cable screwed into Minnebot, then plugged into the mux. This should be either the 50 ft or 100 ft fiber cable, not the patch cable.
  • Muxer power plugged into the USB strip, and Ethernet plugged into the USB strip. Ensure that this is the USB strip labeled "MINNEBOT CONNECTOR"
  • USB strip plugged into the OCU.

This configuration is pictured, without the fiber connection to the robot or the connection to the OCU visible, below.

Minnebot tethered connection

You should plug all of the various connectors and cables into each other first, then plug the USB strip into the OCU.  Once you have, the OCU will automatically run scripts setting up the appropriate connection.  You can do this before or after Minnebot has booted, it does not matter.

Once connected, the OCU will have an ethernet interface named "eth-aqua8", with a static IP set at  Hostnames have been set up appropriately, so if you wish to ssh into the vision stack, you merely run:

ssh vision

Because ssh keys have been set up, this should work without prompting you for a password.

If you would like to ssh into the control stack, run: 

ssh control OR ssh aqua

This requires the control stack password.

The ROS master is located on the vision stack, but all the appropriate environment variable should be set up on the OCU to communicat with ROS already.  To test this, run:

rostopic list

If you see a large list of topics with "aqua" in the name, you're ready to start using your code. If there is a problem, try running roswtf to check what's going wrong.

Untethered Operation

There are two modes of untethered operations. Neither is currently in working order, forcing us to use tethered operations. In future, these sections will have more detail.


AquaMenu is the system through which we can control the robot without a tether. AquaMenu displays a list of actions or submenus mapped to numbers to the rear OLED display. A sample menu is below.

  1. Calib (runs calibration service)
  2. Fwd (Robot swims forward for some duration)
  3. Follw (Runs diver following code)
  4. Bagging (Sub-menu. When selected, gives options for duration of bagging)

To select a menu item, and either run the associated command or enter the relevent submenu, input the related number using one of the control modes below. More info on AquaMenu can be found here.


RoboGest is a gesture based control system, which allows selection of menu items by making gestures with both hands, in view of the rear camera.  

AR Tags

AR tags are the fallback method of operation. While less convenient than RoboGest, they are fairly acurate.  Even when planning to use RoboGest, AR tags should be brought on any field trial, just in case.  

To operate the robot using AR tags, ensure that an AR tag recognition node is up and running, as well as the AquaMenu. These should be added to the startup configuration.  Once they have both been startup, simply show the back camera the AR tag corresponding to the number of the menu item you wish to select.