Skip to content

Instantly share code, notes, and snippets.

@wgbartley
wgbartley / drain-list.sh
Last active September 26, 2017 15:39
Drain Redis List to X elements
#!/bin/sh
# Max number of concurrent Redis connections before we back off
CONN_LIMIT=10000
# Check to make sure all arguments were passed
DO_EXIT=0
if [ "$1" == "" ]; then
echo "Please provide a list name (in quotes) as first argument."
@wgbartley
wgbartley / test.ino
Created November 12, 2015 04:49
Quick NeoPixel test on Bluz
#include "application.h"
#include "pinmap_impl.h"
#include "neopixel.h"
#define STRIP_LENGTH 121
int PIXEL_PIN = PIN_MAP[D2].gpio_pin;
neopixel_strip_t m_strip;
uint8_t j;
@wgbartley
wgbartley / oled_logo_example.ino
Created September 17, 2015 20:51
OLED Logo Example
#include "Adafruit_GFX.h"
#include "Adafruit_SSD1306.h"
Adafruit_SSD1306 display(D0);
static const uint8_t particle[480] = {
0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000,
0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000,
0B00000000, 0B00000011, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000,
0B00000000, 0B00000011, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B00000010, 0B00000000, 0B00000000,
0B00000000, 0B00000011, 0B00000000, 0B00000000, 0B00001111, 0B11111111, 0B00000000, 0B00000000, 0B00000000, 0B00000000, 0B010
@wgbartley
wgbartley / gist:b9f1f016b0e223699da0
Last active August 29, 2015 14:23
Discourse Forum User Post Alert
/**
* This monitors a Discourse forum for postings by a particular user.
* I stopped just shy of figuring out how to publish an event to a
* Particle device PubSub stream.
**/
var https = require('https'),
cp = require('child_process'),
xmlParseString = require('xml2js').parseString;
@wgbartley
wgbartley / spark-web-ide-memory-tracker.html
Created November 12, 2014 23:18
Spark Web IDE Memory Tracker
<!DOCTYPE html>
<html>
<head>
<title></title>
<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
<script src="http://benpickles.github.io/peity/jquery.peity.js"></script>
<script type="text/javascript">
@wgbartley
wgbartley / launch_webs.sh
Last active August 29, 2015 14:08
Docker web container launcher
#!/bin/bash
for d in $(find www-enabled/ -mindepth 1 -maxdepth 1 -type l); do
bn=`basename $d`
aliases_arr=($bn)
aliases_i=1
# Check if the container is already running
is_running=`docker ps -f status=running | grep "$bn" | wc -l`
@wgbartley
wgbartley / webcam-viewer.py
Created July 14, 2014 15:37
Grab latest webcam picture and display it on a monitor from the command-line
#!/usr/bin/python
import pygame, httplib, io
from pygame.locals import *
from PIL import Image, ImageFont, ImageDraw
from time import time, sleep, strftime, localtime
# Screen setup
print "Press ctrl+c"
display = pygame.display
@wgbartley
wgbartley / angry-bird.ino
Created June 7, 2014 00:02
Spark-Powered Angry Bird Swimmer
// D0 = Angle Down
// D1 = Angle Up
// D2 = Left
// D3 = Right
int pinLeft = D2;
int pinRight = D3;
int pinDown = D0;
int pinUp = D1;
char srvIP[] = "256.256.256.256";
char srvHost[] = "myhost.mydomain.tld";
int srvPort = 80;
char srvPath[] = "/?l=test1";
void setup() {
delay(5000);
pinMode(D7, OUTPUT);
@wgbartley
wgbartley / uptime.ino
Created May 26, 2014 19:45
Spark Uptime Test
char srvIP[] = "198.199.86.22";
char srvHost[] = "spark.wgb.me";
int srvPort = 80;
char srvPath[] = "/logger/?l=uptime-test";
void setup() {
delay(5000);
pinMode(D7, OUTPUT);