Blog Home

Patrol the pool with this Arduino Nano-powered DIY RC submarine

Arduino TeamAugust 3rd, 2024

There is something inherently intriguing about submarines that doesn’t seem to apply to other vehicles. Maybe that reflects our natural fears and phobias, or maybe it is a result of our curiosity about the mysterious depths. Maybe it is simply that most of us will never get the chance to ride in a submarine. But you can get some of the experience with a model, like 15-year-old Ben Kennedy did with this DIY RC submarine.

This is a remote-controlled submarine built entirely from scratch and it is very impressive. It is a 500mm-long vessel loosely modeled after the Soviet (and now Russian) Akula-class submarine. But the resemblance is entirely superficial, as the Kennedy’s design is 100% original. 

The hull and most of the rest of the parts were modeled in Autodesk Fusion 360 and then 3D-printed. An Arduino Nano board receives radio signals from a Flysky FS-i6X transmitter controller via a Flysky iA10B receiver. The Arduino then controls the various systems that allow the submarine to move through the water.

Four small aquarium pumps move water in and out of the ballast tanks to control buoyancy. A single brushless DC motor, which is naturally waterproof, provides thrust. Two waterproof MG995 servo motors actuate the rudders for yaw and pitch, which are necessary for diving/surfacing and steering. Most of the hull isn’t watertight, so Kennedy placed a waterproof plastic bag inside the hull to protect the Arduino and the lithium battery that provides power. 

Kennedy tested the sub in his family’s backyard pool and it seems to have performed nicely. He posted his design files and code, so anyone can build their own RC submarine. 

Boards:Nano
Categories:Arduino