I am working on a simple MFSK modem for use on the HF band. I'm having trouble recovering the symbol timing information from the stream.
With 2-FSK it's easy - just subtract one frequency from the other, and use the 0-crossing point to determine how far off you are (ideally, the 0-crossing point should be right in between 2 symbols)
I'm unsure how to scale this up to more than 2 frequencies. Is there a standard way that symbol synchronization is performed on MFSK signals that I could look into?
Here is a graph of one of my 4-FSK signals, with some noised added in. Each colour represents one of the different frequency bins of interest. The pink lines are the center of each symbol.
