Skip to content

Instantly share code, notes, and snippets.

@tomvdb
tomvdb / gist:3770f3385faaa3220c7d5d2aadee13ae
Created January 25, 2023 16:11
JPG Extract from Tomasz SharjahSat1 Data
https://twitter.com/Tomek_SP5LOT/status/1618193191085412353
Raw KISS Data:
C0 00 82 6C 64 AA 9E A6 E0 82 6C 60 AA 9E A6 61 03 F0 45 53 45 52 41 F6 0A 00 00 00 00 00 FF D8 FF E0 00 10 4A 46 49 46 00 01 01 01 00 00 00 00 00 00 FF DB DD 00 43 00 0C 08 09 0B 09 08 0C 0B 0A 0B 0E 0D 0C 0E 12 1E 14 12 11 11 12 25 1A 1C 16 1E 2C 26 2E 2D 2B 26 2A 29 30 36 45 3B 30 33 41 34 29 2A 3C 52 3D 41 47 4A 4D 4E 4D 2F 3A 55 5B 54 4B 5A 45 4C 4D 4A FF DB DD 00 43 01 0D 0E 0E 12 10 12 23 14 14 23 4A 32 2A 32 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A 4A FF C4 00 1F 00 00 01 05 01 01 01 01 01 01 00 00 00 00 00 00 00 00 01 02 03 04 05 06 07 08 09 0A 0B FF C4 00 B5 10 00 02 01 03 03 02 04 03 05 05 04 04 00 00 01 7D 01 02 03 00 04 11 05 12 21 31 41 06 13 51 61 07 22 71 14 32 81 91 A1 08 23 42 B1 C1 15 52 D1 F0 C0
C0 00 82 6C 64 AA 9E A6 E0 82 6C 60 AA 9E A6 61 03 F0 45 53 45 52 41 F6 09 00 00 00 24 33 62 72 82 09 0A 16 17 18 1
@tomvdb
tomvdb / weather_ext.py
Created October 24, 2022 09:25
Example Python Script to send Weather Station data to QO-100 HS Modem
# external weather application example for hsmodem
# tom - zr6tg - 2022/10/23
import socket
import time
import random
while True:
'''
@tomvdb
tomvdb / hsmodem_weather.html
Created October 24, 2022 09:23
Example HTML File for HS Modem - Weather Station Data Receive
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>QO-100 HS Modem Tests</title>
<style>
.sparkline--red {
stroke: red;
@tomvdb
tomvdb / gist:ad80d1a0d6bcf3a12c725b1c398ba65b
Created July 15, 2022 13:42
Longmynd Websocket send command example
# example python script for sending commands to client websocket - https://github.com/philcrump/longmynd
# zr6tg
import websockets
import asyncio
import json
class LongmyndControl:
def __init__(self):
self.websocket = None
To setup longmynd on pi boot:
Create service file
sudo nano /etc/systemd/system/longmynd.service
Enter this into the text file:
[Unit]
Description=Longmynd Client
@tomvdb
tomvdb / gist:ef56e56981476c3cc97fa51708f2358e
Created April 19, 2022 19:25
icmultimeter icom 9700 error
ets Jul 29 2019 12:21:46
rst:0x1 (POWERON_RESET),boot:0x17 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:0x3fff0018,len:4
load:0x3fff001c,len:1044
load:0x40078000,len:10124
load:0x40080400,len:5856
@tomvdb
tomvdb / ZR6TG Rotator Controller V1
Last active June 25, 2022 08:33
Basic satellite station controller. Basic rotctld server implemented as well as communication to rotator arduinos
[
{
"id": "800528f16bfd8a64",
"type": "tab",
"label": "Az/El Rotator Control",
"disabled": false,
"info": "",
"env": []
},
{
@tomvdb
tomvdb / satnogs_station_monitor.py
Created January 8, 2019 09:30
Simple script that checks the online status of a satnogs station and sends a pushover notification if it's offline, Put in crontab at whatever time interval works for (mine is setup for hourly use)
# simple script that checks the online status of a satnogs station and sends a pushover notification if it's offline
# Put in crontab at whatever time interval works for (mine is setup for hourly use)
# 2019/01/08 - Tom Van den Bon (ZR6TG)
import requests
import httplib, urllib
STATION_ID=62
PUSHOVER_USER_KEY = "USERKEY"
PUSHOVER_API_KEY = "APIKEY"
@tomvdb
tomvdb / gist:251de94880ee6de8fe251955fbe4066c
Created November 6, 2017 12:11
Maze Controlled by Flick Shield on Raspberry PI
import maestro
import signal
import flicklib
xpos = 0
ypos = 0
@flicklib.move()
def move(x, y, z):
global xpos
@tomvdb
tomvdb / gist:11dde6d41c4387784e2354e549d4cc47
Created June 21, 2017 09:04
Quick airwheel pygame example for Flick gesture board
import signal
import pygame
import flicklib
from pygame.locals import *
pygame.init()
pygame.mouse.set_visible(False)
screen = pygame.display.set_mode((400, 300))
done = False