Skip to content

Instantly share code, notes, and snippets.

View maxious's full-sized avatar
hack the planet

Alex Sadleir maxious

hack the planet
View GitHub Profile
@maxious
maxious / global_conf.json
Created February 3, 2021 11:14
helium AU915 global config for ic880a based lora concentrator
{
/* based on https://github.com/helium/sx1302_hal/blob/helium/hotspot/packet_forwarder/global_conf.json.sx1250.AU915 and https://github.com/TheThingsNetwork/gateway-conf/blob/master/AU-global_conf.json */
"SX1301_conf": {
"lorawan_public": true,
"clksrc": 1,
"clksrc_desc": "radio_1 provides clock to concentrator for most devices except MultiTech. For MultiTech set to 0.",
"antenna_gain": 0,
"antenna_gain_desc": "antenna gain, in dBi",
"radio_0": {
"enable": true,
@maxious
maxious / zigbee2mqtt_to_wow.py
Created January 24, 2021 08:00
Copy zigbee2mqtt weather sensor reading to Met Office/BOM WOW
import json
from datetime import datetime
import requests
import paho.mqtt.client as mqtt
from datetime import datetime
import json
import traceback
last_weather = None
@maxious
maxious / bme680_mqtt.py
Last active December 28, 2019 05:16
bme680 mqtt publisher for python
#!/usr/bin/env python
import bme680
# import context # Ensures paho is in PYTHONPATH
import paho.mqtt.publish as publish
import time
import platform
hostname = platform.node()
sensor = bme680.BME680()
sensor.set_humidity_oversample(bme680.OS_2X)
# gdalinfo aus_for18_publish/aus_for18 -nogcp -nomd -noct -nofl | grep "<.*>"
# gdalwarp --config GDAL_CACHEMAX 10096 -multi -of GTiff -co "TILED=YES" -co "TFW=YES" -co BIGTIFF=YES -co COMPRESS=PACKBITS aus_for18 aus_for18.tiff
import xml.etree.ElementTree as ET
rat = ET.parse('rat.xml').getroot()
headers = [defn.find('Name').text for defn in rat.findall('FieldDefn')]
grouped_data = {}
id_to_label = {}
max_value = 0
id_var = 'VALUE'
# Python
import time
import logging
import argparse
import os
import sys
import numpy as np
import subprocess
import dothat.backlight as backlight
import dothat.lcd as lcd
<?xml version="1.0" encoding="ISO-8859-1"?>
<StyledLayerDescriptor version="1.0.0"
xsi:schemaLocation="http://www.opengis.net/sld StyledLayerDescriptor.xsd"
xmlns="http://www.opengis.net/sld"
xmlns:ogc="http://www.opengis.net/ogc"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<!-- a Named Layer is the basic building block of an SLD document -->
<NamedLayer>
<Name>default_raster</Name>
@maxious
maxious / README.md
Last active August 10, 2019 08:39
ANKO Pan and Tilt Camera E952
@maxious
maxious / nm.json
Last active September 10, 2019 04:47
{"services":[],"homeCamera":{"north":-8,"east":158,"south":-45,"west":109},"corsDomains":["data.gov.au", "www.data.gov.au", "144.6.226.103", "144.6.226.103:8080"],"catalog":[
{
"name":"User-Added+Data",
"description":"The+group+for+data+that+was+added+by+the+user+via+the+Add+Data+panel.",
"info":[
],
"isUserSupplied":true,
"isPromoted":false,
"isHidden":false,
@maxious
maxious / yourname.py
Last active May 22, 2019 04:39
Data Plumbing
NAME="yourname" # all lower case one word
import datetime
import pandas
from airflow import models
from airflow.operators.python_operator import PythonOperator
from airflow.contrib.operators.kubernetes_pod_operator import KubernetesPodOperator
DATA_DIR = '/home/airflow/gcs/data/'
GCS_BUCKET = 'us-east1-dta-airflow-b3415db4-bucket'
DOCKER_IMAGE = 'gcr.io/dta-ga-bigquery/galileo'
RUN_R_SCRIPT = [('gsutil cp gs://{GCS_BUCKET}/data/{NAME}.csv . && ' +
@maxious
maxious / rc.local
Last active February 24, 2019 02:11
rc.local for booking up a Quectel GPS chip with assisted GPS data
stty -F /dev/ttyAMA0 raw speed 115200;
# clone from https://github.com/f5eng/mt3339-utils
/home/pi/mt3339-utils/gpsinit -f /home/pi/mt3339-utils/gpsinit.conf /dev/ttyAMA0 ;
if ifconfig -a | grep --quiet wlan0; then
echo wlan exists, wait to load epo;
while ! ping -c 1 -W 1 8.8.8.8; do
echo "Waiting for 8.8.8.8 - network interface might be down..."
sleep 1
done