Underwater Communications FSK modulation and demodulation

I need to perform underwater communications in a range up to 100m. I will use transceivers in order to create the sound waves. I will use FSK to modulate the data, lets say 100khz for value '0' and 110khz for value '1'. The data would be coded with RTTY/Baodot scheme.

I am a newbie with Arduino's technology and I would like to know if it is capable to perform all these operations:

1- Create a FSK modulation. 2- Receive FSK and demodulate it.

The RTTY seems to be fully implementated with some already done libraries.

I have seen some libraries like SoftModem that I could use but I am not completely sure.

What do you thing about it?


(No expert disclaimer) I think you better use frequencies that are an integer divider of the 16MHz clock and that are a bit further apart. (easier to generate and easier to detect e.g 40Khz and 80Khz.

I said 100khz and 110khz just for giving an example. The frequencies that will be used will be determined by the resonance frequency of the transducer.
I just want to know if Arduino is suitable for this work and if it is capable to perform modulation/repeception/demodulation or if maybe would be better to use a FPGA.