I want to write a program to filter a single radio station using SDR. Not for any application just a stepping stone to learn. I am going to use C so it is easier for me to see the steps and things going on rather than them being obfuscated with scipy, matlab fmdemod object or something. I have IQ data from my receiver and I know how to change the sampling rate and base-band frequency but once I have the correct data and I know the desired information is there, I need to do frequency demodulation. From reading I have seen that possible would be to do in software:

  1. polar discriminator
  2. digital limiter
  3. phase angle estimate

then I would send this filtered data to some audio api. Does this seem like the right idea? Just looking for input or someone to tell me I am wrong lol and point me in the right direction. Thanks

  • $\begingroup$ See linuxjournal.com/article/7505 $\endgroup$ – MBaz Jan 3 at 23:59
  • 1
    $\begingroup$ @MBaz awesome! A bit of a travel back in time to GNU Radio of old, but since the concepts remain the same, nice! $\endgroup$ – Marcus Müller Jan 4 at 7:56
  • 1
    $\begingroup$ thank you! @MBaz $\endgroup$ – meanthatmuchtoyou Jan 4 at 12:54