Hi,
While trying to make satnogs-client decode Meteor M2-3/M2-4 LRPT images, I started with the @SA2KNG repository GitHub - kng/satnogs-client-docker: Run satnogs-client inside one or more docker containers · GitHub and the knegge/satnogs-client:lsf-addons Docker image. I did several modifications, including:
-
Platform: trixie base, UID/GID 999 fix, matplotlib purge, writable cache dirs (FFTW/matplotlib/fontconfig).
-
SDR: SoapySDR 0.8.1, SDRplay API 3.15 +
sdrplay_apiService, SoapySDRPlay3 0.5.1, mirisdr/SoapyMiri, SoapyRTLTCP, kalibrate/rx_tools/rffft; plus the station-levelSATNOGS_RX_SAMP_RATE=2e6fix (2.048e6 rejected by the RSPduo). -
Decoders: patched
meteor_demod/meteor_decode(stderr status so--stdoutstays clean, portable build flags — the native flags SIGILL’d the A53 station), ssdv (JY1SAT), aptdec, optional SatDump. -
LRPT client support:
satnogs_lrpt.pymode,find_sample_rate→4*baudrate, legacy IQ naming, dispatcher →satnogs_fm.py. -
satnogs_fm.py: wideband tap at4*baudrateon UDP 57358 (audio tap can’t carry 160 kHz), separate rigctl object (double rig-open), waterfall widened to ±160 kHz for LRPT. -
Reliability: rewritten
satnogs-prereadiness probe (sdrplay_api_Open()ctypes), keep-healthy service — fixed the cold-startshm_openrace;satnogs-postper-obs diagnostics;meteor.sh+udp2ishort.pypipeline withMETEOR_INVERTA/B toggle. -
Ops: grsat/satdump/bandscan/direwolf/rotor-park/gpio/meminfo/iq-rename scripts, imagedecode JY1SAT fix, boot warm-up chain kept intact.
The new Docker image is antzi/satnogs-client:lsf-addons and it works as a drop-in replacement of the knegge one. Just add the following line in the docker-compose.yml:
image: antzi/satnogs-client:lsf-addons
under services: → satnogs_client:
Here are two examples of observations done using this image:
I would really appreciate if you give it a try, especially on a better hardware than mine.