RTOS Lab Project »

RTOS built from scratch in C on an ARM M-series microcontroller

C · Assembly · RTOS · ARM
2018
A project I did for a programming lab for an online college course on RTOS development.

SPIFFSReadServer »

Arduino Microcontroller Library for ESP8266-based Microcontrollers

C++ · Arduino
2017

An SPI Flash File System (SPIFFS) server extension of the ESP8266WebServer library. It has some extra features, such as an alt web-redirect for resources hosted on the web, and automatic searching for minified/gzip-compressed files.

PersWiFiManager »

Arduino Microcontroller Library for ESP8266-based Microcontrollers

C++ · Arduino · HTML5 · JavaScript
2017

A persistent WiFi configuration library for ESP8266 chips on the Arduino platform, that allows for the construction of IoT devices that can act as webservers with or without a local WiFi connection. WiFi settings can be adjusted on the fly.

EasySSDP »

Arduino Microcontroller Library for ESP8266-based Microcontrollers

C++ · Arduino
2017

Easy SSDP setup function for ESP8266 on Arduino. Makes devices visible on Windows Network.

Otology Database »

Otology Database Builder with Input Validation

Node.JS · Express.js · SQLite · AngularJS · Jquery · pug
2017

A relational Otology databse for a Yale medical student’s research project. It has a webform frontend for data entry, built with Angular & jQuery. It also includes an SVG-based graphical UI for inputting Audiogram datapoints. The backend uses a node.js server and SQLite to store the data.

Robot Bug-Algorithm Simulator »

Web-based robotic motion-planning/maze-solving algorithm simulator

HTML · JavaScript · jQuery
2017
Just for fun. A simple, in-browser svg-based robot simulator. It allows you to draw obstacles and re-position the robot or goal, then run the right-turn rule or two different bug algorithsms to see if the robot can get to the goal. A re-build from scratch of something I did in C++ a while back.

AutoPID »

Arduino Microcontroller Library

C++ · Arduino
2017

A general purpose PID control library, with a built-in PWM/Relay control function, plus a few other features I wanted to include for an all-in-one control library.

Wireless Camera Focus Controller

Arduino Microcontroller Project

C++ · Arduino · XBee Radio
2017

A project for a friend/photographer. This used a motor/encoder connected to a microcontroller, mounted to a camera lense to adjust the focus. It allowed for cameras to be set up and controlled remotely, without the phtographer getting in the middle of the action. It was controlled by bitwise serial commands from another microcontroller via XBee wireless radio.

WiFi-Controlled Sous Vide »

ESP8266 Microcontroller Arduino Project

C++ · Arduino · HTML5 · AngularJS · REST
2017

A project just for fun. A recreation of something similar I had done at JHU using an atmel microprocessor. The main user interface is a web interface built with AngularJS which makes AJAX requests to the device to control it and get the current status.

Creo Cleaner »

Utility to clean up old 3D model and Drawing files made in Creo Parametric

Java · Swing
2016

A simple utility that streamlines the cleaning up of old Creo versioned files. Especially useful for large 3D modeling projects with many different files.