I’m trying to use a USRP to decode a CPFSK signal at 980MHz and 1Mb/s.
The decoder successfully detects the sync pattern, but only about once a
minute when the pattern is transmitted once a second. And when the
decoder does detect the sync pattern, the data following the pattern is
incorrect. I think the issue may be that the sample rate is too low.
When I record the raw signal data to my hard drive, graph it with
Matlab, and zoom way in, it’s very jagged and I can’t see the uniform
changes in frequency I would expect with CPFSK. Clearly there is some
data there since my code detects the sync pattern once in awhile, but I
feel like I may be right on the edge of the minimum sampling rate. When
I tell the USRP to sample at 4MHz, I do get periodic overflow errors and
when I sample at 2MHz I don’t, but obviously that’s only 2 samples per
What I don’t understand is how if the USRP is capable of recording an
HDTV signal, which has a bitrate well about 1MB/s, why I can’t seem to
get a sample rate fast enough for my slower signal. Can anyone tell me
what I’m doing wrong? Maybe it’s not sample rate, but something else?
If so, why is the data so jagged?