Skip to content

Instantly share code, notes, and snippets.

View darksidelemm's full-sized avatar

Mark Jessop darksidelemm

View GitHub Profile
#!/bin/bash
# STRF Cronjob Script
# Run with:
# rtl_capture.sh 437e6 10m
# Settings
FREQ=$1
RATE=2048e3
GAIN=32.8
WORKINGDIR=/home/pi/satobs
#include "Mouse.h"
#include <Encoder.h>
// Change these two numbers to the pins connected to your encoder.
// Best Performance: both pins have interrupt capability
// Good Performance: only the first pin has interrupt capability
// Low Performance: neither pin has interrupt capability
Encoder myEnc(2, 3);
// avoid using pins with LEDs attached
@darksidelemm
darksidelemm / ssdv_grabber.py
Created February 4, 2019 11:45
SSDV Grabber
#
# SSDV Image Grabber
#
# Run with:
# python ssdv_grabber.py CALLSIGN TIME
# where CALLSIGN is the payload callsign, and
# TIME is the time of the oldest image, as %Y-%m-%dT%H:%M:%SZ
#
import requests
import argparse
#!/usr/bin/env python
import crcmod
def check_crc(data, crc):
crc16 = crcmod.predefined.mkCrcFun('crc-ccitt-false')
_crc = crc16(data)
# Convert incoming CRC to a int
@darksidelemm
darksidelemm / fsk9k6.md
Last active December 31, 2023 16:57
Decoding FSK9k6 telemetry from SatNOGS observations.

Decoding FSK9k6 transmissions from SatNOGS observations using Direwolf

Dependencies

Setup

Create a file called ax25_9600.conf with the following contents

Sonde Type Count Percentage
AVK - AK2-02 (Russia): 6 0.8
AVK-BAR (Russia): 15 1.9
AVK-MRZ (Russia): 8 1.0
Beijing Changfeng CF-06 (China): 2 0.3
GTS-1 (China): 82 10.6
Graw DFM-06: 1 0.1
Graw DFM-09: 46 6.0
Intermet iMet-1-AB: 5 0.6
#!/bin/bash
# STRF Capture Script
# Mark Jessop <vk5qi@rfhead.net>
#
# Compile rffft from https://github.com/cbassa/strf
# Use: make rffft
# You should only need libfftw3-dev as a dependency.
#
# Prepare directory with:
# mkfifo fifo
@darksidelemm
darksidelemm / STRF_Setup.md
Last active December 2, 2023 02:27
Setting up STRF Capture & Processing

Setting up STRF Data Capture & Processing

Author: Mark Jessop (VK5QI) vk5qi@rfhead.net

This guide provides information on how to capture FFT data using the strf toolset, process it to look for satellite signals, and finally compare their doppler shift against TLEs from the SpaceTrack database. This can help with resolving the 'TLE lottery' after new launches, or cataloguing transmissions from spacecraft already in orbit.

It should be noted that the analysis described in this document is but a small subset of what the strf tools are capable of! Scott Tilley has a post describing some of the history behind strf and giving a crash course on the relationship between orbital dynamics and the doppler effect here: https://skyriddles.wordpress.com/2019/01/04/basic-orbital-dynamics/

The target platform is Debian-based distributions (e.g. Debian, Raspbian, Ubuntu), but should be applicable to other Linux-based platforms. The data processing software (rfplot and rffit) is also k

@darksidelemm
darksidelemm / SatNOGS_RSPdx.md
Last active August 13, 2023 21:19
Adding SDRPlay RSPdx Support to SatNOGS

Adding SDRPlay RSPdx Support to SatNOGS

Author: Mark Jessop vk5qi@rfhead.net Date: 2020-05-08

The SDRPlay RSPdx is a pretty new SDR, and as such is only supported in the SDRPlay v3 API. The current pothosware of SoapySDRPlay only supports v2 of the API, so we need to use a different fork for now.

Note that the v3 API is in beta, and users of older model SDRPlay units may have better luck using the v2 API.

This guide assumes you are starting from an updated SatNOGS RPi image. I have only tested my RSPdx with a few observation so far, so there may be bugs!

#!/bin/bash
# STRF Cronjob Script
#
# Compile rffft from https://github.com/cbassa/strf
# Use: make rffft
# You should only need libfftw3-dev as a dependency.
#
# Prepare directory with:
# mkfifo fifo
# mkdir data