Creating waterfall images from satnogs generated .dat file?

Hi all,

Short question: are there any scripts out there to take waterfall .dat file generated by the satnogs_*.py decoder scripts and create a waterfall image like displayed on the SatNOGS Network for a particular observation?

Longer reason why:

As an example, I am manually running

/usr/bin/python3 /usr/bin/satnogs_fsk.py --soapy-rx-device=driver=rtlsdr --samp-rate-rx=2.048e6 --rx-freq=400500000 --file-path=./receiving_satnogs.out --waterfall-file-path=./receiving_waterfall_.ogg --decoded-data-file-path ./ --gain-mode=ā€˜Settings Field’ --gain=42.0 --antenna=RX --other-settings=IF1=6,IF2=3,IF2=2,IF3=0,IF4=0,IF5=2,IF6=3,TUNER=42.0 --baudrate=3 8400 --framing=ax25

then Cntrl-C out of it when the satellite goes below the horizon. So I’m looking to take the resulting waterfall.dat file and view the waterfall as a png or jpg (not to upload to SatNOGS network). I realize the doppler shift will be off without rigctl adjusting the frequency

Why do I want to do this? Sometimes I want to record the waterfall of an observation that I cannot schedule in satnogs or maybe my station when offline for a few seconds and missed the start of a scheduled pass that is still visible for the next 10-15 minutes, this way I can at least manually run the decoder and capture raw data with the hopes of displaying the waterfall portion of the artifact.

I’ve searched around and didn’t come up with anything. Thanks for any insight you can offer (even if it’s ā€˜you can’t do that’ :slight_smile: )

2 Likes

This is what SatNOGS Client do for plotting the waterfall from the .dat file:

3 Likes

Perfect, thanks you for this!

Cheers

1 Like

I’m trying to play with running manual observations now, as well. Did you get the processing of the waterfall plot working as you intended? I’ve been spending time on this, but am not certain of how to use waterfall.py with a specific file (I’m no coder… So my understanding is lacking).

Any suggestions on how to run this py script against a dat file would be appreciated.

AFAICT, this is possible without too much pain. For the .dat file, you just mean the .ogg output, ya? Like the file from --waterfall-file-path=./receiving_waterfall_.ogg mentioned by original poster?

I took the waterfall.py and made it so there’s a line for a file you want to read and it will output a PNG. Not sure if it is doing what you want, but maybe. :slight_smile: See:

2 Likes

Sensational! I’ll give this a try.

I have two ā€˜receiving’ files…
receiving_satnogs… .out
and
receiving_waterfall… .dat

So you didn’t add that to the waterfall.py, but added to the input command when called manually? Just want to be sure I understand how it’s working. Thanks so much.

Hey @BigBad

Since @fredy said it was all done in waterfall.py, all I did is take the input waterfall.py would ā€œnormallyā€ use and made it so it could use a file instead. I then made it output a PNG. I didn’t dig into which is the appropriate input file, as I hadn’t done your manual process of gathering observations.

You shouldn’t have to change the output filename from waterfall.png, unless you want to. The .dat file should probably be this line:

datafile_path='receiving_waterfall_.ogg'

to whatever your filename is, such as:

datafile_path='receiving_waterfall_.dat'

Let me know how that goes for you. Thanks!

Note: I also changed the name in the script to .dat now. If you want to send me a sample .dat file you’ve created, I can test with that.

1 Like