Closed drowe67 closed 4 years ago
@billcowley I built and tested a LPF yesterday:
I get about 12.5dBm using the two tone test signal, so around 1.5dB insertion loss which is OK for our first pass.. I fiddled with the inductors a bit to tune it. Note some harmonics popping back up after 1GHz, I suspect that is due to limitations in the daughter card PCB layout (IIRC it's aimed at HF).
The LPF design is from the SM2000 VHF radio I worked on a few years ago.
@drowe67 David: It's terrific that you have already integrated rpitx with most of your FSK routines! I first tried to use a RPI4 - but should have read the F5EOE status page first. It seems there's a beta for the RPI4 but that didn't work for me. However RPI zero works fine. BTW The config.txt change of GPU frequency IS required -- without it the pi will transmit for a few seconds but then the signal dies.
Your 2m LPF is considerably neater than mine - but they are both using 2 tuned circuits and my insertion loss is similar. It's taken me a while just to catch up, and try all the nice tests in your https://github.com/drowe67/pirip README file - eventually I got there :) Below is a test from RPI0 to rtl_fsk, but with M=4.
Pi zero producing CW signal: a simple Band Pass Filter improves the Tx spectrum!
@billcowley Cool - I zoomed in and can see it's a double tuned BPF circuit. You might be able to reduce the insertion loss (and boost your EIRP) by making the two coils closer. That filter design would also work well for the RTL-SDR input.
Aso nice - work with the 4FSK - I hadn't tried that yet so good to see it's working :slightly_smiling_face:
@drowe67 I am hoping to test my USRP as a signal source tomorrow, as well as the RPI. The USRP B200 delivers about the same RF power as the RPI. All I needed extra was to convert the real signal from your modulator to an IQ (possibly up-sampled) signal -- should have been easy! I think this is finally working in csdr :)
Also, I suggest we (after reducing Rs) try the '817 as receiver, compared to the RTL -- I'm very doubtful that the simple Rx BPF will be good enough to avoid local loud signals.
@drowe67 David: I've got the USRP output at the right RF level now -- ie adjustable to almost 20dBm.
Also I tried rtl_fsk at lower symbol rates eg down to 500 sym/s and didn't get any buffer overflows(?) So maybe worth another quick test when you have time ...
@billcowley I am in the process of integrating the csdr decimator into rtl_fsk, some notes:
codec2/dr-fsk-pirip
rtl-sdr-blog/master
pirip/dr-ota
cd pirip/rtl-sdr-blog/build_rtlsdr
rm -Rf *
cmake ../ -DINSTALL_UDEV_RULES=ON -DCODEC2_BUILD_DIR=~/pirip/codec2/build_linux -DCSDR_BUILD_DIR=~/tmp/csdr
make rtl_fsk
I'll work out a way to automate all this some time, perhaps in build_rtlsdr.sh
PR to use as a logbook