Hi. I'm in the development of my own ROV, A kind of deepwater project, capable of diving to about 680 meter.
all the trouble I had with the control and communication I think some of you could be spared for therefore this post.
I'm using 1 arduino nano and 1 arduino uno and a Mega for the control and communication, and a digital compass breakout board for heading data. A 24 bit adc spi breakout board for the pressure sensor to get a reasonable reading of the dept, A couple of Dallas temperature sensors, 2 for monitoring the electronics and the batteries and 1 for water temperature. 5 esc and 5 brusless motors for trust and vertical controll, some H-bridges to control the motors on the robotic arm to come.
I use 2 breakout boards for rs-485 serial communication between control unit and ROV running i half dublex with easytransfer library I'm now down to 4 wires in the cable, that is a common ground, 2 wires for tx an rx, last wire is analog videofeed from ROV
using the common ground too, works excellent. in over 700 meters of 4 wire cable !!!
in the control unit i have 1 nano and 1 uno, the uno runs a video overlay shield so I get all vital info in the video display.
the nano collect analog and digital input from yokes an knobs and send the commands to the mega in the ROV.
The MEGA collect temp, dept, heading, and other vital info such as amp and voltage from the battery and send it in return as compliment for the controlling data and of course controlling all the motors ect.ect.
if some interest in the project I could put out some more info