Skip to content

Instantly share code, notes, and snippets.

View darksidelemm's full-sized avatar

Mark Jessop darksidelemm

View GitHub Profile
@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
#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
#!/bin/bash
# STRF Cronjob Script
# Run with:
# rtl_capture.sh 437e6 10m
# Settings
FREQ=$1
RATE=2048e3
GAIN=32.8
WORKINGDIR=/home/pi/satobs
@darksidelemm
darksidelemm / habitat_rs_search.py
Created November 3, 2018 08:26
Find Radiosonde-Related Payload Configuration documents within the Habitat DB.
#!/usr/bin/env python
#
# Habitat Radiosonde Cleanup Utility
#
# Mark Jessop 2018-11
#
# Search for payload configuration documents which have been automatically generated by
# radiosonde_auto_rx. Eventually, delete the ones that are older than X weeks.
#
import couchdb
@darksidelemm
darksidelemm / log_to_kml_fix.py
Created August 31, 2018 13:03
Test fix for log_to_kml.py from radiosonde_auto_rx
#!/usr/bin/env python
#
# Radiosonde Auto RX Tools
# Log-to-KML Utilities
#
# 2018-02 Mark Jessop <vk5qi@rfhead.net>
#
# Note: This utility requires the fastkml and shapely libraries, which can be installed using:
# sudo pip install fastkml shapely
#
#!/usr/bin/env python
#
# FreeDV Sync Notification Script
#
from __future__ import print_function
import argparse
import smtplib
import socket
import sys
import time
@darksidelemm
darksidelemm / bom_obs_to_aprs.py
Created January 6, 2018 10:48
Bureau of Meteorology Single-Site JSON to APRS Uploader
#
# BOM JSON Observation to APRS Uploader
#
# Mark Jessop <vk5qi@rfhead.net>
# 2018-01-06
#
# This is intended to be run as a regular (5-10 minute) cron job.
# Update the JSON feed, APRS_CALL, APRS_PASSCODE, and WX_CALL Fields below before using.
#
# A link to the single-station observation JSON feed can be found at the bottom of an observation page,
@darksidelemm
darksidelemm / gist:2a1fb385f6fc18566f3bcf29b4929053
Last active November 20, 2017 07:27
fake rigctld, for recording sat frequency data.
#!/usr/bin/env python
#
# Fake rigctld listener.
# Hacked together in 10 minutes.
#
# Mark Jessop <vk5qi@rfhead.net>
#
import socket
import datetime
@darksidelemm
darksidelemm / gist:b517e6a9b821c50c170f1b9b7d65b824
Last active October 30, 2023 20:15
PPM Correction under Raspbian using LTE-Cell-Scanner

LTE-Cell-Scanner under Raspbian (and maybe Ubuntu/Debian)

Mark Jessop vk5qi@rfhead.net 2017-11-19

Here in VK-land, GSM is dying, if not already dead in many parts of the country. As such, RTLSDR calibration tools like kalibrate-rtl are not particularly helpful! However, thanks (mainly) to Telstra, we have a very wide coverage 4G (LTE) network on 'Band 28', which is in a good frequency range for use with a RTLSDR (Downlink band 758 – 803 MHz). LTE-Cell-Scanner provides the 'CellSearch' utility, which will search for LTE cells, and determine the RTLSDR's clock offset. This gist attempt to provide some sort of guide on getting CellSearch running under Raspbian.

Running a 2m SatNOGS Ground Station? How about turning it into an APRS SatGate!
The idea is we tap off audio received by the fm_demod.grc flowgraph (compiled to satnogs_fm_demod.py) and feed this into Direwolf (an AFSK soundmodem). Direwolf runs constantly, and attempts to process received data whenever the FM demod flowgraph runs (which is basically for all observations except BPSK, APT, and CW). The CPU overhead of direwolf is minimal - I've been able to run it on a RPi3 without overruns.
MODIFICATIONS TO fm_demod.grc
-----------------------------
Edit fm_demod.grc in gnuradio-companion. If you're feeling masochistic, you can X-forward this from the ground station machine.
Add in a Float-to-Short Block, and a UDP sink.
Set the Float-to-Short block to have a scaling factor of 32767.