Projects
Spotipi E ink Display
With motivation from Canterrain's Spotipi E ink project, I decided to make my own. The raspberry pi inside connects to Spotify's developer platform and requests data to show the current song title, artist and cover art while I listen to Spotify. The information is then displayed on the screen and updated any time the song changes. When not listening to music, it shuffles through custom images I loaded onto the SD card and displays a new one every hour. I also added functionality for it to interface directly with my Home Assistant server so I can reboot the device from my phone and control it without having to SSH into the pi.
Ubuntu Server
I installed Linux Ubuntu on an old laptop from 2012. Using docker, I spun up multiple different services that I now run 24/7. This includes but is not limited to: a Minecraft server for my friends and I, a video streaming service for streaming old DVDs, the website that you are currently reading this on, and a Kali Linux virtual machine. In the future, I plan on upgrading this to a dedicated desktop with more storage and memory for running TrueNAS.
OctoPrint
The SD card on my 3D printer broke so I was encouraged to upgrade to OctoPrint. Using a Raspberry PI, I can now remotely access my 3D printer for viewing, starting prints, and auto-detecting failed prints. Using Tailscale on my ubuntu server, I'm able to access my printer from anywhere in the world!
Home Assistant
Using a Raspberry PI with Home Assistant OS, I'm able to control many devices in my house. The operating system is capable of working with most off the shelf smart devices, but I mainly use it to control services and custom devices around my house. For example, it controls a custom WLED lamp I made with an ESP32 to control individually addressable LEDs. It also controls my Spotipi service. I'm able to switch images, pause the service, and reboot the device from my phone, anywhere in the world. I also hacked a lamp I've had since I was a kid and upgraded it with an ESP32 so I can use PDM signals to dim it (it did not originally have this functionality) and control it from my phone.
This Website
For an assignment in my Web Development and Hacking class, I created a public website to use for job applications. After the assignment was turned in, I went above and beyond to polish the website further and add extra pages such as this projects page. I then set up HTTPS and hosted this website from my Ubuntu server instead of hosting it on GitHub.