IMU/Depth Sensor

This guide will direct you through the steps to create the IMU/Depth Sensor Module. Kits for this module can be purchased in the OpenROV Store, or the module can be built from scratch using files on OpenROV's Github site.

Image #1

Edit Step 1 IMU/Depth Sensor  ¶ 

  • Here we go!

  • Strip about 3mm of insulation off of each of the four (15cm long) lead wires

  • Solder on the lead wires in the following configuration: Red - 3v3; Black - GND; Green - SCL; White - SDA

  • Once the wires are soldered in place, use a flush cutter to trim back the excess wire leads so that very little material is left protruding from the board.

Image #1

Edit Step 2  ¶ 

  • Use acrylic cement to fasten the bottom and middle pieces together

  • Place a layer of epoxy (we're using regular 2500-ton epoxy here, but Hysol E-90 will work great too)

  • Push the IMU/Depth Sensor board into the epoxy (you may want to wear some latex gloves or use a stick to keep epoxy off your fingers)

Image #1

Edit Step 3  ¶ 

  • Cover the rest of the board with epoxy- this part requires a lot of concentration because you'll want to cover all the electronics and seal around the depth sensor, but you don't want the epoxy to overflow onto the diaphragm of the depths sensor.

  • You'll also want to make sure that epoxy thoroughly surrounds the lead-wires going into the board

Image #1

Edit Step 4  ¶ 

  • To keep the board pressed down against the bottom of the plastic enclosure, we'll tape the wires in a way that applies the right torque and downward pressure to it.

  • Make a "tape tent" (that's a term OpenROVer, Matt Valancy came up with) with the wires as shown and let the module sit until the epoxy cures

Image #1

Edit Step 5  ¶ 

  • Once the epoxy has cured, put the cover of the sensor module over the other pieces as shown and fasten it in place with acrylic cement.

  • Be careful that acrylic cement does not get on the diaphragm of the pressure sensor. Only a conservative amount of the cement is needed.

Image #1

Edit Step 6  ¶ 

  • Use a multimeter to identify the spare wires connected to the four terminals on the DB24 (14-17 upper left of image)

  • Solder the corresponding wires from the IMU to the identified wires, seal each with adhesive lined heatshrink after covering the connection with hot glue. (Twist the heat shrink tubing over the hot glue before it cools to get good coverage)

  • A wire-to-wire soldering tutorial can be helpful. Check it out HERE.

Image #1

Edit Step 7  ¶ 

  • Once the epoxy has cured and you've soldered the wires, it's time to mount the IMU as shown.

  • Hot glue works well for this.

Image #1

Edit Step 8  ¶ 

  • Now we are going to modify the OpenROV's Arduino code to activate the IMU module.

  • To do this, you will need to SSH into the ROV. This requires a program like Putty.

  • You can get Putty here

Image #1

Edit Step 9  ¶ 

  • SSH into the ROV using it's default IP address: 192.168.254.1

  • You will need the ROV to have batteries, connected to your computer with the USB and ethernet cables

  • You will also have to have had your computer's IP set. Refer back to the main build instructions for how to do this if you haven't already.

Image #1

Edit Step 10  ¶ 

  • The user name is 'rov', the password is 'OpenROV'

  • Once you have the console open and you are logged in you should see something like rov@OpenROV:~$

  • type in the command exactly as it appears here: 'sudo pico /opt/openrov/arduino/OpenROV/AConfig.h'

  • Update ROV's AConfig.h file to reflect the new hardware. Change the following from '(0)' to '(1)'. Exit and save. Close the SSH.

    • #define HAS_MS5803_14BA (0) change to:

    • #define HAS_MS5803_14BA (1)

    • #define HAS_MPU9150 (0) change to:

    • #define HAS_MPU9150 (1)

Image #1

Edit Step 11  ¶ 

  • Re-compile and re-upload the arduino software so that it uses the new AConfig.h settings using the button in the cockpit web interface. (Under the settings menu, apply new firmware...)

  • You should now see telemetry data from the ROV's cockpit web interface.

When finished you will need to update the AConfig.h file on your ROV to reflect the addition of the new hardware. Specifically you'll need to set the flags from 0 to 1 for the following:

[code]

#define HAS_MS5803_14BA (1)

#define HAS_MPU9150 (1)

[/code]

For more information, check out the Upgrades category page.

Comments Comments are onturn off

Great guide, thank you! I have added a couple of photos of the IMU installed on my OpenROV. May be useful for some. https://bikeben.squarespace.com/projects...

Ben King, · Reply

Soooo, this does not show where you have to route the wiring through the housing. Is this something your are suppose to do before you epoxy the wires into the housing or are we just suppose to route it through the cut off syringe piece on the side?

Trevor, · Reply

can you add an image here - that shows the connection with the rov wires?

Endre, · Reply

You can also just pop open a mac Terminal or iTerm2 window and use:

ssh 192.168.254.1 -l rov

and then enter the password.

Lamont Granquist, · Reply

After the changes, upload the Arduino Firmware (again)...

gloeru, · Reply

Thanks for that note!

OpenROV, · Reply

please could you change from -->

sudo pico /opt/openrov/arduino/OpenROV/Aconfig.h

in Step 7 to

sudo pico /opt/openrov/arduino/OpenROV/AConfig.h

thank you

juergenhanftalereu, · Reply

The single quotes around the 'sudo pico ..' command should probably be dropped, particularly when the text says to type in the command *exactly* as it appears here...

Also, for some reason pico may not be in the sudoers PATH, I just walked someone through these instructions who needed to use:

sudo /usr/bin/pico /opt/openrov/arduino/OpenROV/AConfig.h

Without the full path it was coming back with "command not found"

Should also probably include a comment about closing and saving from the editor for those who don't know pico and don't know the convention that ^X means ctrl-X.

Lamont Granquist, · Reply

View Statistics:

Today: 16

This Week: 80

This Month: 510

All Time: 3,929