A remotely operated underwater robot with six-degree thruster control providing a live camera view and water temperature data. The system is built around a Raspberry Pi "cockpit" that generates its own local network, allowing for wireless control and real-time data feedback via a custom web-based dashboard. The final build achieved a reliable, self-booting platform capable of stable maneuvers and live video streaming. The robot can run for 30 minutes of regular use before the hot-swappable battery needs replacement.
The ROV’s physical architecture was developed in SolidWorks, focusing on a four-thruster configuration to ensure precise control over pitch and yaw. To ensure recovery in the event of power loss, the chassis was engineered for slight positive buoyancy, requiring careful weight distribution and component balancing to maintain horizontal stability. The mechanical bracketry and end seals are entirely 3D printed out of PETG and the main body out of ABS tubing for increased water and pressure resistance; while not perfect materials it’s the best that can be done on a student budget.
The electrical system is powered by a 4S LiPo battery, using a dedicated Battery Eliminator Circuit (BEC) to maintain consistent voltage to the Raspberry Pi and sensors during high-draw thruster bursts. The brains of the system is a Raspberry Pi with its associated camera and temperature module. On the software side, I developed a Python-based control system that provides a seamless user interface with background services that allow the ROV to boot and initialize all control protocols instantly upon power-up. The web-based dashboard includes live camera and temperature data, as well as controls for all thruster directions and their thrust level.