As an example of digital signal processing capabilities of a Raspberry Pi, dual watch functionality is implemented.
The audio signal from IC-7410 is converted to an analytic signal using a Hilbert filter with 51 taps, and down converted with a BFO generating a 300 Hz complex sinusoid. The converted signal goes into the left channel of the audio output, while the original signal, after going through a 151 tap BPF, goes to the right channel.
To generate a single tone, say, around 660 Hz, an AM broadcasting signal at 954 kHz is received with IC-7410 set to a CW mode. The left and right channels show a 360 Hz and a 660 Hz signal, respectively.
You observe two peaks, each comming from the left and the right channels.
const double bfo_freq = +300.0; double bfo_phase = 0.0; // double complex cbfo = cos(bfo_phase) - I * sin(bfo_phase); double complex cleft = cright * cbfo bfo_phase += bfo_delta; // sample[2*i ] = creal(cleft ); sample[2*i+1] = creal(cright);