Home        Store        Learn        Blog

Building my First DIY ROV - 3D printed with Ardusub and BlueROV components

I am building my very first DIY ROV with my 2 boys to use in our now very clear lake here in Texas (thank you Zebra mussels). I am basing my project off of the “Albie” 3D printed ROV project posted here: https://www.youtube.com/watch?v=Ma0I4YwhV7M - I am modifying this using PETG instead of PLA and I plan to redesign the frame quite a bit after we prototype all the components and get things working. I will post some pictures of the progress here soon.

I have found most of my answers here on the forum which has been a huge help. My main questions revolve around power.

I planned on re-using a PowerDistribution board I already had wired up to my ESC’s from a salvaged quadcopter project I built. With all of these components connected inside of a watertight enclosure, how does powering on and charging work?

I assume you need to open the enclosure and remove the batter for charging. What about switching power off to the Raspbery Pi and teh Pixhawk when not in use? Is that done through the Switch offered by Blue Robotics here: https://bluerobotics.com/store/comm-control-power/switch/switch-10-5a-r1/ or am I missing something else?


Sounds like a great project!

The battery does need to be removed from the WT enclosure for charging. Most of the time we just keep the battery unplugged until its time to deploy. I have added a SSR to the battery WT enclosure. Like this one: https://www.digikey.ca/en/products/detail/D06D100/CC1520-ND/353618?utm_medium=email&utm_source=oce&utm_campaign=3311_OCE20RT&utm_content=productdetail_CA&utm_cid=515623&so=65148675&mkt_tok=eyJpIjoiWVRsbE56RTRNVEExWXpZMyIsInQiOiJMVDcydjBiaW5IQ1p2UDllXC9JY094QnBsWWxlYk5XUGlLb2Z1OXY0M3psa3JycmEyT25DcWtpY1Z1c1NrRnBDcFwvRFRvcEJTM2ZPM3lIbll5OUc5Rmp5UllhYzBRdjBlV0x3OXdiOHFrOTdRM0ZOWGtkQmZuOGRLT1lkV2xDWmo0In0%3D
There are many SSRs out there. I burned out a cheap one, so I went with this more expensive unit.
I use a spare pair in the the tether and have a switch topside to power up the entire BR2. Works great!
Can’t wait to see your build.

1 Like

Here are some pictures of the build process. I am 3D printing each part separately in PETG and then glueing everything together using gorilla glue. My goal is to print as much as I can to hone the process of dealing with PETG. I am building this first ROV as a Prototype and I already have several ideas about how to design and 3D print the next one using more thrusters and make everything more serviceable. I need to get this one in the water first to keep learning.
All of the components so far except the motors are pretty much coming straight from BlueRobotics. I wanted to re-use my ESC’s but they were cheap and I couldn’t flash them to work in reverse so I just dropped another couple of $100 bucks at the BR store!

I am waiting on 2 more shipments from BR to get everything assembled. I will post more pics as I go.


Making some slow progress. I could not find the Pixhawk shelf on the BlueROV store so I 3D printed one. I am using the Raspberry PI camera for the first prototype so I am now re-printing the shelf to allow me to connect/disconnect the ribbon cable for the PI camera more easily.

Had to print some custom spacers and a few more props in a CCW and CW configuration in order to get all the motor shrouds installed.

I also worked with my teenage son to get the initial software loaded. QGroundControl installed and flashed updated images onto the Raspberry Pi and the Pixhawk. All is well so far and they are communicating to the topside computer just fine.

I will do some additional assembly soon and then I am waiting on my BlueROV ESC’s and power distribution module to wrap up the wiring in the enclosure.

Crazy how much time is involved in the trial and error of fabrication when you are not working from a kit. :slight_smile:


Progress is slow, but its progress. I have made the thruster connections and I want to add a bit more heat shrink to completely enclose the connections. I received my BR ESC’s and installed those along with most of the SOS Leak sensors. I am not starting off with the Fathom-x board so I have a Cat-5 breakout board installed instead to make connections easier.

I also potted my first connectors. I watched the BR video here and the process seemed pretty straightforward. I realized I need a better setup to really do it cleanly, but its a learning process here.

Huge thanks to the nice folks at BR. I broke off one of the threads on the electronics tray hex rods and they are sending me some replacements in the mail. I am really happy with the service and support from BR so far.

I also 3D printed a customized GoPro mount for the ROV and did a partial assembly. I really don’t like the Original Zip tie design of this and I am for sure going to redesign and re-print the body of this setup after I spend some time with the prototype.

I am hoping to get through the rest of the assembly and get the ROV splashed some time this weekend.

1 Like

I purchased a pair of these to run my ethernet signal over cheap coax. 2 for $50.

Comes with a BNC connector so you will need 2 compression-style RG59 to BNC adapters.
RG59 if using regular 75-90ohm cable TV coax.
RG58 if using 50ohm ham-radio-style coax.

1 Like

I finally got everything together and I am ready for the first splash and test today. I made a major oversight in my wiring. For this design, the battery shares the space in the 4" enclosure, so I will need to open it every time I put this into the water or connect the battery.

Unfortunately, I made up the thruster cables so short that I could not pull out the electronics tray but about 4 inches. :man_facepalming:

I spent about an hour cutting, stripping, splicing, and heat shrinking on new cable to get the length I needed to make this work. There is now a lot of excess cable I will need to bundle up each time I take this to the water. “Its just a prototype” I keep reminding myself.

On the positive side, I made some changes in the assembly that should allow the body to flood quickly and the whole thing seems pretty stout. My software check was all good so now I just need to get it in the water and get all the sensors calibrated.

I am pretty sure I am going to have some buoyancy challenges today. I will send in the results later. Cross your finger.

1 Like

I forgot to ask, I am getting this error in QGroundControl each time I connect to the ROV. Anyone know what this is or how to resolve this? I am not sure this is critical or not.

Maybe it doesn’t like your power sense module?

It works!! Had a great first run with the DIY ROV in the neighbors pool on Saturday. I didn’t get great video with all the craziness going on. BBQ and kids swimming was also happening :slight_smile:

I thin the bubble front on the enclosure was throwing the ballast off since I couldn’t get the nose down, even with the entire 1 1/2" PVC filled with wet pool sand. I used a mesh bag filled with river rocks, hooked on the front of the ballast PVC to dial in the perfect weight, which was about 2 lbs more on the front.

Because of the big bag hanging off the front, it wasn’t particularly easy to fly around the pool, but the thrusters were surprisingly responsive and the 3d printed props worked great.

I for sure need to get the BR camera. The Raspberry Pi camera is just not good enough to really enjoy the experience.

I am going to place some additional BR orders, adjust the ballast and make a few additional tweaks and test again in the pool before heading to the lake for some real exploration.

Here is a very short video of the ROV in the pool. The bag on the front is funny.

1 Like

@corndog Yeah, I am using a leftover module from a previous project. I am going to see if I can get this one selected correctly in QGC. If not, I will be buying the BR power sense module instead.

The vertical ascent was very slow in my first pool test so I decided to add a 2nd vertical thruster to the ROV. The design doesn’t allow for a lot of water flow past the vertical’s so the next design will move these so they work better.

I also received and installed the new USB camera, mount, and servo from BR and removed the original Raspberry PI camera.

I also added right at 2 pounds of ballast to the front with some metal machined blocks I had laying around.

Really hoping to get it back into the water, but I ran out of time so it will be next week before I get a chance at a second pool test. Stay Tuned!!

Finally got the DIY ROV back in the pool yesterday. Buoyancy is better and the ROV is slightly positive and floats level. Something with the balance seems off since everytime I hit both thrusters forward, the ROV dives pretty sharply. I am not sure what is causing that and could use some pointers from the experts here if you have any ideas?

The BR camera is way better and worked great.

The new vertical thruster is not working as expected and seems to have little to no power. I am going to do some troubleshooting on that before my next test.

Also, had my first leak detector alarm on this test. I have no idea where the water came in, but a few drops showed up in the bottom of the enclosure and were absorbed by the sponges near the front. Looks like I need to do a vacuum leak test and some additional testing.

My goal is to get this prototype working well enough to take it to the lake soon.

Questions for the group here:

  1. every time I hit forward, the unit dives fairly sharply. I am guessing this has to do with the balance of the added weights?

  2. The ROV is a bit overpowered thruster wise and I was wondering if there are adjustments in QGC I can make so full forward thrust is not 100% power? I think it would be easier to control if I could lower the power to 50% or 75% of full when not in heavy current.

I have a few videos of the test I will post soon. Thank you!

Here is a short video of the recent test, starts with some surface video, then a bit of underwater recording using the new BR USB camera and mount.

Thanks everyone.

1 Like

It looks like your rear thrusters may be placed above the center of mass/center of drag, which would cause the rov to pitch forward like you are observing.

1 Like

As @jwalser mentioned, placing the thruster force offset from the center of mass/center of drag induces a torque on the craft as a whole, causing it to pitch when the applied force is large. You should notice that if you go backwards fast it will pitch in the opposite direction.
As a secondary note, this can also have to do with where your tether comes out of the ROV, and how much tether drag you’ve got.

QGC has a ‘gain’ command which you can reduce as desired (generally from a button on your controller). Should do exactly what you’re after, although it does apply to all the thrusters so you can’t have reduced forward/backward thrust while still having full vertical thrust.

They’re likely to be competing for the same water, as they’re very close together. Having the water slamming straight into the flat top of the ROV also means it needs to turn sharply, which significantly reduces the effectiveness, and the high pressure that builds up just under the thrusters may mean very little water actually contributes to vertical motion.

The ideal is to have maximum volume of water intake, and minimum drag area. Moving thrusters out to the sides increases the volume as they compete less, and making holes so that water can flow through the top face reduces the drag area (and would give the water somewhere to go if you leave the thrusters where they are). Note that intake is directional, so in the far right image below it might be a bit more effective to go up than down.

1 Like

@EliotInsight and @jwalser Can’t thank you both enough for your help and for the explanation on this. This makes perfect sense to me and heled my learning curve greatly. I had not thought of the center of mass issue, but I get it now with your help.

I did think the vertical thruster design of this was strange with the water not being able to flow through. My next 3D printed design is still a work in progress, but it basically mirrors the BlueROV vectored thruster design where the vetored thrusters are in the middle of the ROV body and the vertical thrusters are on the sides. In both cases, I made sure that the thruster had un-impeded water flow in both directions as much as possible.

I will share the design here once I get it far enough along. My learning curve on 3D design is also in progress. :slight_smile:

Hoping to get the ROV as is in the lake tomorrow to get some more experience with using an ROV in the LIVE enviroment. I expect some frustrations and more learning is on the way.

1 Like

Always cool and inspiring to see someone working hard and learning about a project they’re passionate about. It’s been awesome to see your progress so far, and good fun to help out with your understanding (and refresh some of my own in the process).

Keen to see how this continues, and best of luck getting some good practice and experience in the lake today :slight_smile: