Skip to content

Instantly share code, notes, and snippets.

View pingswept's full-sized avatar

Brandon Stafford pingswept

  • Tufts University
  • Somerville, Massachusetts, USA
View GitHub Profile
@pingswept
pingswept / card-reader.pde
Created March 19, 2014 19:26
Code to read UID from Charlie Card using Adafruit PN532 NFC shield
/**************************************************************************/
// Based on code from Adafruit's PN532 NFC shield example
// BSD license
/**************************************************************************/
#include <Wire.h>
#include <Adafruit_NFCShield_I2C.h>
#define IRQ (2)
@pingswept
pingswept / server.py
Last active May 5, 2023 22:45
Code for Color Commons project on Greenway Light Blades in Boston. The real code starts around line 808; the rest is mostly boilerplate and data.
from flask import Flask, render_template, request
from uwsgidecorators import *
import pytronics
import os, time
public = Flask(__name__)
public.config['PROPAGATE_EXCEPTIONS'] = True
# Include "no-cache" header in all POST responses
@public.after_request
@pingswept
pingswept / test-dragon-tail.py
Created January 8, 2023 21:43
Python code to light up a dragon's tail made of LEDs that attaches to the back of my bike.
import time
import board
import neopixel
import random
# The number of NeoPixels
num_pixels = 240
# The order of the pixel colors - RGB or GRB. Some NeoPixels have red and green reversed!
# For RGBW NeoPixels, simply change the ORDER to RGBW or GRBW.
import socket
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.bind(('', 5000))
while True:
data, addr = sock.recvfrom(4096)
print('got packet: %s from $s' % data, addr)
import socket
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.sendto(b"Buy a copy of Chip War today!", ("130.64.80.187", 5000))
import board
import digitalio as dio
import time
led = dio.DigitalInOut(board.LED)
led.direction = dio.Direction.OUTPUT
button = dio.DigitalInOut(board.D6)
button.direction = dio.Direction.INPUT
@pingswept
pingswept / state-machine.py
Last active November 1, 2022 13:25
State machine example for ME 30 at Tufts
import board
import digitalio as dio
import time
led = dio.DigitalInOut(board.LED)
led.direction = dio.Direction.OUTPUT
button = dio.DigitalInOut(board.D6)
button.direction = dio.Direction.INPUT
sudo iwlist wlan0 scan essid Tufts_Secure
wlan0 Scan completed :
Cell 01 - Address: 70:DB:98:14:69:FF
Channel:52
Frequency:5.26 GHz (Channel 52)
Quality=70/70 Signal level=-39 dBm
Encryption key:off
ESSID:"Tufts_Wireless"
Bit Rates:12 Mb/s; 18 Mb/s; 24 Mb/s; 36 Mb/s; 48 Mb/s
54 Mb/s
@pingswept
pingswept / fabfile.py
Created March 16, 2021 15:30
Fabric demo
from fabric import task
# Usage
#
# fab -H pi@192.168.1.217 --prompt-for-login-password deploy
@task
def deploy(c):
hostname = c.run('hostname', hide=True).stdout
print('\033[32;1mLogged into {0}\033[0m'.format(hostname))
@pingswept
pingswept / profiling-example.py
Last active March 9, 2021 16:58
profiling-example.py
import cProfile
import pstats
from pysolar.solar import *
import datetime
import random
latitudes = random.sample(range(-90, 90), 100)
longitudes = random.sample(range(-180, 180), 100)