Lincoln Smith

Projects

HS Independent Study

Irrigation control system

For my senior project I have designed and built an irrigation control system. I wanted a way to have finer control of my garden, at a lower cost than the current market options. The project operates off of a self-hosted server to allow for decentralization, and a finer control of the system by the user.

The server and client apps are coded in Java 21 in order to make use of the new virtual multithreading capabilities. I used Google's GSON library to save all the data for the server in JSON files, and used JavaFX for the GUI.

To actually control the irrigation system, I make use of microcontrollers programmed in micropython and C. The main two that I use are the ESP32 and Raspberry Pi Pico W. The server communicates with the microcontrollers to control the GPIO pins (which in turn can control relays or low-voltage outputs) as well as read from the analog inputs to allow for smarter watering.

Sleeper Console Rig

Giving new life to old consoles

I am often given old desktop computers from people who no longer have a use for them, and so I have a stack of early 2000s machines that I have no use for. I have decided to repurpose them into all-in-ones for playing video games on older consoles.

There are a multitude of broken consoles for sale on sites such as eBay or Craigslist for little to no cost. I have been buying these consoles and fixing them up. I then mount them inside these computer cases in order to bundle many together. This has the added benefit of removing any cosmetic damage to the consoles themselves.

A common point of failure on these older consoles is the disc drive, so I tend to remove it entirely. I then use a variety of console mods to allow for loading the games from either a USB drive or internal SSD.