Skip to content

Instantly share code, notes, and snippets.

View sidwarkd's full-sized avatar
🌮
Smart Puck'in

Kevin Sidwar sidwarkd

🌮
Smart Puck'in
View GitHub Profile
@sidwarkd
sidwarkd / example.cs
Created March 16, 2015 19:35
A super simple way to get the list of project files from a Visual Studio Solution file.
public static void GetProjectFilesFromSolution(string solutionFile)
{
if (File.Exists(solutionFile))
{
string cwd = Directory.GetCurrentDirectory();
Directory.SetCurrentDirectory(Path.GetDirectoryName(solutionFile));
// This is a hack for reading solution files but is better than the almost 100 lines of code
// necessary to load a special MS assembly and parse the file the 'right way'
string[] solutionContents = File.ReadAllLines(solutionFile);
@sidwarkd
sidwarkd / config.json.sample
Created April 1, 2015 13:17
Competitor to the Amazon Dash
{
"sparkAccessToken": "",
"sparkDeviceID": "",
"twilioAccountSID": "",
"twilioAuthToken": "",
"toPhoneNumber": "[NUMBER TO CALL]",
"fromPhoneNumber": "[YOUR TWILIO NUMBER]",
"paperTowelTwiml": "[URL TO TWIML FILE. DROPBOX WORKS GREAT]"
}
@sidwarkd
sidwarkd / Observable.cs
Created May 11, 2016 22:12
Observable Class for UWP Data Binding
public class Observable : INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged;
protected void Changed([CallerMemberName]string propertyName = null)
{
var handler = PropertyChanged;
if (handler != null)
{
handler(this, new PropertyChangedEventArgs(propertyName));
@sidwarkd
sidwarkd / server.js
Last active December 11, 2016 19:17
Simple Node Server For Onion Omega
const http = require('http');
const hostname = '0.0.0.0';
const port = 3000;
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hello from the Onion Omega\n');
});
@sidwarkd
sidwarkd / fridgeye_nextion.ino
Created December 1, 2016 08:33
Arduino Sketch for Fridgeye App on Nextion Display
// Include the Nextion Arduino library
#include "Nextion.h"
long lastUpdate;
int SENSOR = A0; // Alias A0 as SENSOR
// t0 element from the Nextion GUI Editor was on
// page 0 with an id of 2.
NexText t0 = NexText(0, 2, "t0");
@sidwarkd
sidwarkd / twilio.json
Created December 10, 2016 07:58
Particle Webhook Config File Template for Twilio Integration
{
"eventName": "[EVENT TO LISTEN FOR]",
"url": "https://api.twilio.com/2010-04-01/Accounts/[ACCOUNT SID]/Messages",
"requestType": "POST",
"auth": {
"username": "[ACCOUNT SID]",
"password": "[AUTH TOKEN]"
},
"form": {
"From" : "[YOUR TWILIO NUMBER]",
@sidwarkd
sidwarkd / christmas_countdown.ino
Created December 17, 2016 05:18
A simple Christmas countdown program for Particle Photon
#include <time.h>
#define TARGET_MONTH 12
#define TARGET_DAY 25
#define TARGET_YEAR 2016
#define CLEAR_COMMAND 0x76
#define CURSOR_COMMAND 0x79
struct tm target = {0};
@sidwarkd
sidwarkd / particle_temp_sensor.ino
Created December 22, 2016 08:07
A simple temperature sensor that publishes an event to the Particle cloud if it gets above 82 degrees Fahrenheit
void setup() {
Serial.begin(9600);
}
void loop() {
int val = analogRead(A0);
float voltage = val * 3.3 / 4096; // Convert analog reading to voltage value
float tempC = (voltage - 0.5) * 100;
float tempF = (tempC * 9.0 / 5.0) + 32.0;
Serial.printlnf("Temp F: %3.1f Temp C: %3.1f", tempF, tempC);
@sidwarkd
sidwarkd / app.js
Created January 25, 2017 04:42
Help for Sameer
var config = require("./config.js");
var socket = require("socket.io-client")(config.server_url);
var gpio = require("rpi-gpio");
var sensorLib = require('node-dht-sensor');
var data=0;
process.on("SIGINT", function(){
gpio.write(config.led, 1, function(){
gpio.destroy(function(){
@sidwarkd
sidwarkd / usbserial1.ino
Created April 19, 2017 03:47
USBSerial1 Example
void setup() {
delay(5000); // Give yourself 5 seconds to launch particle serial monitor
Serial.begin();
USBSerial1.begin();
Serial.println("Serial port configured!");
USBSerial1.println("USBSerial1 configured too!");
pinMode(D7, OUTPUT);
}
void loop() {