I am trying to design a 2-GFSK receiver for acquiring IQ symbols. The aim is to implement the entire receiver chain but the decision stage.
The 2-GFSK waveform is being generated by a standard IoT device. The application is RF Finger Print Identification. There are constraints to intended goal and i am not able to converge to a direction to exhaust my efforts. To the best of my understanding, following challenges are to be addressed:
- There is no information on the Transmiter Pulse Shaping filter available.
- There are no training symbols in the preamble.
- GFSK modulation has non-continuous phase unlike GMSK, the I/Q unit circle keeps rotating.
Based on the constraints, I am limited in my approach.
I am finding it very difficult to estimate the signal start time/sampling point t=KT since I dont know how to realize an equivalent matched filter. Knowing, it is a gaussian shaped filter, i could not devise the Rx filter in GNU Radio companion. I tried the Polyphase clock sync using an arbitrary gaussian filter but to no avail.
My SNR is strong enough and i can visualize the IQ symbols. Since the IQ symbols are rotating clockwise or anticlockwise depending upon the data symbol being 0 or 1, I want to know if i can ever be able to estimate the correct sampling point.
Besides, i want to compensate for CFO followed by channel equalization. The eventual goal is to cleanse the transmitted IQ as close to its original form at the receiver as possible, except demodulating the IQ symbols as 0 or 1. We just want the signature of transmitted IQ. Please guide me how to approach this problem.