Lab Bench Power Supply

I've wished that I had a bench power supply for a while now, but just never got around to buying one. So instead of spending $80 on a decent one like a reasonable person, I decided to spend months of my time and a lot more money making one :) It can supply anywhere from around 0.7V to 27V at 3A and has an adjustable current limit. I thought it would be cool to put it in a transparent case, so I custom made the enclosure out of quarter inch acrylic. It also has blue and red LEDs whose brightness depend on the voltage and current respectively. I had a lot of fun designing this as it's entirely hardware with no software, and I haven't done anything like it before.

Circuit Board Alarm Clock

For this project, I made an alarm clock that uses a printed circuit board as the digital clock face. I designed and made pretty much every component of this project from scratch, so it took me quite a while to complete. I'm pretty excited about how it turned out though. The clock has a mountain scene design etched into the metal of the PCB and uses RGB backlighting to illuminate it from behind with colorschemes based on the time of day. The PCB has no soldermask by design, so that it's sort of transparent to allow both the light from the backlighting and the digital clock digits to shine through. It has alarm functionality with a built in speaker, and has a snooze button which is a very important feature for me :)

Night Vision Goggles

I created a set of night vision goggles using google cardboard, an old phone, and some bright IR LEDs.

Motorized Sit-Stand Desk

Upgraded my super sweet Ikea sit-stand desk! The desk used to have a hand crank to raise and lower it, so I replaced the hand crank with a couple of motors to make it automatic. I'm pretty happy with the way it turned out.

IR Remote Recorder

This little device will record an IR command from any TV remote and play it back. Not incredibly useful, but it was fun to make.

Home Automation V2!

I made a whole bunch of improvements to the original home automation stuff I did. This time around I made custom PCBs and enclosures for both the control hub and remote modules. The whole system records temperature and humidity in several different rooms, and can provide graphs of past temperature/humidity. It can control lights, and it will eventually be able to control all of the TVs in the apartment.

Internet Controlled Robot

I made a small robot that is capable of being controlled through the internet via an android app or web browser. The robot provides a live POV video feed to the user who can drive the robot in real time. The robot uses an onboard Rasberry Pi to recieve control commands and serve a video stream from the attached camera. This project was really a smaller and simpler version of the 'Minotaur' robot I worked on for my senior project. I've also constructed a 'base' for the robot which uses induction coils to charge the robot's USB battery pack while it is on the base. It can sit on this base while not in use which allows it to stay powered for long periods.

Nintendo 64 LED Mod

When I finally bought another N64 (unfortunately I sold the one I had as a kid), I decided to make it a bit to make it more interesting by adding a bunch of LEDs. The LEDs in the controller ports are always the same color, but I added 3 RGB LEDs that will change color when you press the reset button. Nobody really used the reset button anyway.

Home Automation Projects

I've set up a home server with a Rasberry Pi and some PIC microcontrollers that allows me to control a couple different fixtures around the house. The Rasberry Pi sends commands to a PIC microcontroller which can perform several functions. For example, the PIC can use an RF transmitter to control some lamps that are plugged into off the shelf RF controlled outlets.

Minataur Home Security Robot

This robot was designed and built for my senior project at Purdue University. The robot acts as a security system for the home or office. The user can navigate to a webpage and manually control the robot through the internet with the help of a live video feed. Alternatively, the user can put the robot into a patrol mode where it will navigate throughout the building autonomously and search for intruders. It accomplishes this with the help of a Microsoft Kinect device which aids in both navigation and human detection. The kinect senses depth and can, therefore, tell the differnce between an actual human being and an inanimate object. If an intruder is detected, the robot will take a picture and email it to the user.

Space Invaders Game Console

This project was completed for an embedded systems class at Purdue University. It is a 'Space Invaders' game console that can can be plugged into a computer monitor or TV through a VGA cable. This was accomplished using two motorolla HC9S12 microcontrollers. The first acted as a graphics card that generated the necessary signals for correct VGA video output. The second microcontroller handled all of the game logic and communicated the position of all of the images on the screen to the graphics controller. The attached controller includes an analog joystick for movement, a fire button, and a 'Start' button to start and pause the game.

Dual Core MIPS processor

This project was completed for a computer architecture course at Purdue University. I used VHDL to design a dual core, pipelined, MIPS instruction set processor.