f4exb / sdrangel

SDR Rx/Tx software for Airspy, Airspy HF+, BladeRF, HackRF, LimeSDR, PlutoSDR, RTL-SDR, SDRplay and FunCube
GNU General Public License v3.0
2.74k stars 421 forks source link

DSC decoder plugin FSK frequencies/baud rate incorrect for VHF #1707

Open tttonyyy opened 1 year ago

tttonyyy commented 1 year ago

Love the DSC decoder plugin concept - but:

    static const int DSCDEMOD_CHANNEL_SAMPLE_RATE = 1000; // Must be integer multiple of baud rate (x10)
    static const int DSCDEMOD_BAUD_RATE = 100;
    static const int DSCDEMOD_FREQUENCY_SHIFT = 170;

The ITU spec for VHF band (156.525MHz) is for FSK with centre frequency 1700Hz +-400Hz IE 2100Hz and 1300Hz. The baud rate in VHF band is 1200.

Similarly, the NFM demod settings for VHF DSC (16K0G2B) should be: RFBW = 16000 FMd = 5000

If manually using the UDP sample sink to capture DSC bursts I have to set the NFM gain to 0.5 otherwise the signals are distorted, not sure how that applies to this plugin, however. I can provide baseband recordings if that helps development.

Great work,

Tony

srcejon commented 1 year ago

If you can upload a recording that would be helpful, as am out of range for VHF here. Thanks.

tttonyyy commented 1 year ago

Here's a baseband recording of a selective individual call.

routine_call.zip

Address: 233333334 Self: 201444555 Called station rx and tx channel 8

srcejon commented 1 year ago

Thanks, but that .wav file doesn't appear to contain IQ data. It's just a single channel. Can you make the recording in SDRangel using the File Sink plugin?

tttonyyy commented 1 year ago

No problem. I'm away from home most of today but will get that recording for you as soon as possible.

tttonyyy commented 1 year ago

Hi @srcejon, try this one:

selective_individual_call_2.2023-06-03T19_21_59_833.sdriq.zip

srcejon commented 1 year ago

Thanks - unfortunately not trivial to get working...

sv1 commented 2 months ago

Meanwhile it would be nice to rename the plugin to "HF DSC...." and remove VHF frequency from plugin documentation. This way no frustrated users trying to figure out why their setup does not work!