FinsROV
FinsROV is a low-cost, open-source underwater robot platform designed for underwater tasks and research in robotics and AI.
- Drone
- Open source
- 3D printable
Suggested by Robotheca, created by @IWIN-FINS (opens in a new tab), from github.com/IWIN-FINS/FinsROV-An-Underwater-Camera-Based-Multi-Robot-Platform (opens in a new tab). Pinned to commit 1bc38e8 (opens in a new tab).
- Hardware license
- MIT (opens in a new tab)
- Software license
- GPL-3.0-only (opens in a new tab)
- Commercial use
- Allowed
This repository contains executable files that Robotheca doesn't check. Only run them if you trust the creator.
Photo and 3D model

3D preview converted from github.com/IWIN-FINS/FinsROV-An-Underwater-Camera-Based-Multi-Robot-Platform at 1bc38e8, under MIT. View the original files from GitHub (18.9 MB) (opens in a new tab)
- Power
- 13.75 W
- Height
- 15 cm
- Weight
- 4.85 kg
What it can do
Written by Robotheca from the project's documents.
- Omnidirectional movement with eight thrusters
- Dual 2-DOF gimbals with four servos for camera pointing
- Depth control using four water pressure sensors
- Joystick control via USB serial interface
- Hover mode with closed-loop depth, roll and pitch control
- Open-loop translation and rotation commands
- Up to 3 m/s maximum speed in still water
- Operates at depths between 10 and 20 meters
Bill of materials
This repository has no parts list Robotheca can read yet.
Build guide
The creator's steps, each with its instructions.
- 1Prepare structural components
- 2Assemble the waterproof compartment and internal circuitry
- 3Install the eight thrusters
- 4Mount the four servos and dual 2-DOF gimbals
- 5Install the four water depth sensors
- 6Connect and solder all electronic components
- 7Flash the lower-level controller firmware (STM32F4)
- 8Test and calibrate the system
The guide appears here as you scroll.
Guide by @IWIN-FINS (README.md), under MIT (hardware) and GPL-3.0-only (software). The English translation is by Robotheca, shared under the same license.
More guides
Wiring and electronics
Notes written by Robotheca from the project's documents.
Main parts
- DJI Robomaster C-board (STM32F4) as main controller
- PCA9685 PWM expansion board for thrusters and servos
- IST8310 magnetometer (optional)
- Four MS5837-30BA water pressure sensors
- Eight thrusters with individual PWM control
- Four servos for dual gimbals
- Wireless programmer via SWD interface
- TTL-to-422 and 422-to-USB modules for serial communication
- XT30/60 RC model battery power input
Connections
- I2C expansion board output ports 0-3 to four water pressure sensors (GND, VCC, SCL, SDA)
- I2C expansion board output port 4 to PWM expansion board input GND,VCC,SCL,SDA
- C-board PWM interface 5V pin to PWM expansion board input V+
- PWM expansion board output ports 0-7 to eight thrusters PWM signal inputs
- PWM expansion board output ports 8-11 to four servos PWM signal inputs
- C-board UART6 via TTL-to-422 and 422-to-USB to host computer
- C-board SWD download port to wireless programmer for firmware flashing
- External battery to C-board power input via XT30/60 connector
- C-board power output to thrusters power inputs in parallel