Write ups for some of my past projects

Work Projects

Using NixOS to Manage Hardware Testing Environments

This was a blog post I did for Swift Navigaiton. I appears it’s been lost to the sands of time, so I’m reproducing it here.

OKCompute Analysis Framework

As part of my work at Swift Navigation I’ve done a lot of work analyzing the results of test runs and building CI frameworks to generate metrics or raise alarms based on...

A GPS Spoofing Work Project

One of my work projects from awhile back popped up on Ars Technica.

Academic Projects

Building a TIS100 Node for an FPGA

It’s been awhile since I used an FPGA toolchain, so I was looking for a good project to use as a refresher.

Side-channel Attacks Using the Chipwhisperer

I finally had a chance to dig into the chipwhisperer. It’s a learning tool to teach about hardware security vulnerabilities like Side-channel attacks.

Heart Monitoring

A project at the Karlsruhe Institute of Technology, in Germany, to use accelerometers to track heart motion to aid in robotic surgery.

Autonomous Drifting RC Car

As part of a project for the machine learning lab at Cornell, I did the hardware and some of the software to make a stock RC car autonomously drift though...

FPGA Localization of Robot from its Beeps

Final project for ECE 576 at Cornell, click here for the project write up

Persistence of Vision Clock

Final project for ECE 476 at Cornell, click here for the project write up

Sumo Robot

Final project for mechatronics. Ended up winning first prize in the sumo robot competition.

All Projects

Web Based Door Control Update

Another update to Web Based Door Control. Here I take the path of least resistance to add Google Assistant integration and uptime monitoring by integrating with Blynk, IFTTT, and UptimeRobot....

Added SSL to Blog

I finally decided to go through the hassle of setting this blog up with SSL. While normally this wouldn’t be too hard with https://letsencrypt.org/, since I’m using S3 bucket based...

x86 Boot Loading

In my previous careers, I’ve spent a decent amount of time involved with bringing up processors in embedded platforms. However, despite spending a decent amount of time working with bootloaders...

AWS IoT Setup

As a followup to NodeMCU Development, I decided to connect my project to the AWS IoT cloud to see what that entailed. Turns out, it’s a huge amount of headache...

NodeMCU Development

I’m starting another electronic art project, and decided to use the NodeMCU for the processor. It’s cheap, easy to setup, and has WiFi. However, when I previously used the board...

SQL Murder Mystery

Had some fun playing the SQL murder mystery game at https://mystery.knightlab.com/. Pretty fun way to refresh myself on SQL syntax. I figured I’d record my thought process playing through it....

Fog of War Game

I made a tactics game with a gimmick of espionage in the LibGDX Java framework. This is probably the most complete game I’ve put together.

Sushi Go Arena

I made a framework for testing AI’s made to play the card game “Sushi Go”. Source at https://github.com/axlan/sushi_go_ai . It included a GUI to allow a human to play against...

Laser Stars Revisited

During some time off, I decided to rewrite the laser_stars (http://www.robopenguins.com/laser-stars/) code using the ROS framework. During the original project I ended up creating a lot of the configuration /...

Laser Stars

This is a bit of a weird one. I’m not sure what drew me to this project, but I decided to do a project to use a laser to draw...

Site Moved to AWS / Jekyll

I decided I should probably move my site to a less fragile platform. I’ve been using Wordpress on 000webhost. 000webhost is fine for a free host, but about a year...

K40 Laser Cutter

Maria got me a k40 laser cutter for my birthday!

Spirit Island Boardgame Helper

Over the holidays my wife and I had some fun playing Spirit Island. The game describes itself as “The cooperative settler-destruction strategy game”. As a fun project to refresh my...

Visual Studio Code Multiline Find Extension

Visual Studio Code has been my text editor of choice for awhile. I enjoy that it’s a bit out of left field when it comes to the VIM vs Emacs...

Wreath Pixel Display

This idea was based on the concept of making a “Sound Catcher” pixel display. I’ve been wanting to make this for a long time, but only recently made the time...

New Scope

Quick demo of my new scope. I finally broke down and got one to help with an audio visualizer project I’m working on.

Version Control Game

I often get ideas to make games, but rarely have the time needed. I had an idea for a game mechanic based on version control, and thought it would be...

Web Based Door Control

After have locked myself out of my apartment one too many times, I decided that running to make a keyless entry system. I’ve been looking for a project to use a Raspberry...

Time Tagger App (Part 2)

After getting the most basic functionality working I realized I had hit a bit of a dead end. SQLJet was severely limited in how it could manipulate the data. I...

Time Tagger App (Part 1)

I’ve wanted to document my work from start to finish on a project for a while, so I decided to try a screen capture program. I’ve used a bunch of...

A* for 2D path finding

I wrote this almost a year ago, but never posted it since I didn’t get a chance to fully comment the code. Since I probably won’t get around to it...

Scraping Google Maps for Traffic Data

I have a daily commute that I drive down the US 101 highway. The length of the drive can vary immensely with traffic, and I’ve always been curious what the optimal departure...

Webcomic Viewer

This was another app made to add a specific function I couldn’t find elsewhere. This apps purpose is to view the title text associated with an image. Specifically for webcomics...

Plant Pal

Google Play Link My first published android app. I decided to take a problem that I couldn’t find an existent app for and make a solution myself.

GPS Spoofer

This was an app that I didn’t publish. It used the developer interface to control the phones apparent GPS location over the network. This was just a proof of concept,...