Current Projects
Outside of work I have been practicing my photography with my Minolta XG9. I enjoy capturing little moments of my family members, candid shots, and scenes with a composition I find interesting. I generally love exploring how the things we have made interact with nature; how we leave our impact on the world and, in turn, the world impacts us and what we make.
My technical side projects involve various small python projects such as:
- a dinner wheel to help decide what we will eat for dinner this week
- a discord bot to play rock, paper, scissors against
- a discord bot that can join voice channels to play music for me and my friends
Links
Below are some projects I have worked on with a small description. Click on the box to be taken to the GitHub repository for that project.
Multimeter
A device that can measure signals between 0 V and 3.3 V, ranging in frequencies from 0 Hz to 1000 Hz.
There are two modes: DC and AC. DC mode measures the average voltage and displays it on a bar graph. Similarly AC mode measures RMS and peak-to-peak voltage, displaying RMS voltage on the bar graph. While in AC mode, if no AC signal is detected, the device will automatically revert to DC mode.
This device was originally created on the TI MSP432P401r microcontroller.
Light Weight Processing Library
A library that enables a user to create multi-threaded programs.
The library comes in both the static library and shared object formats, both of which are made by the provided makefile. By default uses a round robin scheduler to manage the threads, however the scheduler can be replaced by one of the user’s design.
Mush
Mush stands for “Minimally Useful SHell”, and is a naive implementation of your standard command-line interface.
It is able to read, parse, and execute commands up to 512 bytes long. Additionally it can redirect inputs and outputs to or from any file, or between programs. Like a standard shell, file input/output redirection is limited to one file each, and there are no unnatural limits to the number of stages in one command.
A user is able to use Mush either interactively or with batches of commands.