I am looking into constructing a small submarine with a Raspberry Pi. This is just for a hobby project but my idea is to have it communicate with the surface wirelessly. I know that normal radio waves will not work very well so I was thinking of using some type of Ultrasound device where a transmitter/tone generator is placed in the water and the submarine has a receiver/microphone that can pick up the sound waves transmitted.

I have read that sound waves are easily transmitted underwater so this is where I came up with this idea. I am wondering if anyone has already done a project like this in the past or knows where I can find more information on it? I have never really worked with sound/wireless transmission so its all very new to me. Any help is greatly appreciated!

  • \$\begingroup\$ How about something a bit different: Have a relatively small cable go to a buoy-like stricture at the surface which will contain the radio transmitter. The antenna would be above water, so you could use regular radio equipment. \$\endgroup\$
    – AndrejaKo
    Jun 22, 2013 at 19:40
  • \$\begingroup\$ It's tricky to get it working well - I have a couple of friends who's PhDs were entirely on this problem \$\endgroup\$ Jun 22, 2013 at 20:29
  • \$\begingroup\$ Do you only need one way data from surface to sub i.e. just control data? Are you considering a fixed installation i.e. you use your sub in the same pool and no other pool? \$\endgroup\$
    – Andy aka
    Jun 22, 2013 at 20:43
  • \$\begingroup\$ I would like to have two way communication since I would like to transmit video/pictures back to the surface. I would also like it to be portable so I can take it to lakes/ponds. \$\endgroup\$ Jun 22, 2013 at 22:05
  • 1
    \$\begingroup\$ Radio waves do not penetrate deeply into water, so it is impossible to get something off the shelf to work. You will either need an antenna on the surface or ultrasonics. More esoteric radios ELF, etc. are difficult to get to work with small structures. \$\endgroup\$
    – user6972
    Jun 23, 2013 at 17:36

2 Answers 2


Device is called ultrasonic transducer and it's freely available on a market.

For communications you will need MFSK modem



or write your own protocol and software.

Note that communication will be short range, if it's ROV and you don't consider it to be AUV it's better to use simple Ethernet cable.

Military submarines also use for underwater communications ELF, VLF radiowaves, so you might also consider this option for AUV, but data rate is very low on this type of systems.


Control data is easy ... well easyish. There's multi path issues if you use sonar etc but this can be dealt with relatively easy.

The problem you're going to run into is when you are trying to send images. Especially if you want to send 'real time' video. Basically you are going to hit a bandwidth problem as low res NTSC video has a band width of about 6Mhz at the base band...... anything like sonar etc isn't going to carry that kinda of data (look into Nyquist limits/theorem).

I've done some experimentation with using LED arrays to transmit the light with some success in pool water. However migrating from clean clear water to ocean or lake water is a major feat.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.