EGGN 383 Final Projects - Fall 2013

Smart Aquarium

by Marc Allen and Charles Basil

The goal of our project is to display the status of a previously implemented smart aquarium. The previously implemented system includes an external power supply, Arduino Uno, Ethernet Shield, ULN2803 driver, 4 120V AC relays, and 4 controlled 120V AC receptacles, and a servo motor feeding system. The four controlled receptacles supply power to three different lighting options and power to the sump pump. The EENG 383 project we implemented provides real time tank information to a full color LCD screen. The system includes a second Arduino Uno, Adafruit 1.8" 18-bit Color TFT Shield with Joystick, waterproof temperature sensor, infrared proximity sensor, and a floating platform. The goal is to display the tank temperature, date and time, and water level in the sump pump.  

 Presentation slides, Short video

Remote Controlled Robot

by Brian Allen and Riley Geistmann 


The purpose of this final project was to create a small mobile robot and control it via a wireless controller. To accomplish our goal, we decided to use the Arduino Uno microcontroller as the base for both the controller and robot. For the wireless functionality we used the Xbee module. The robot chassis, motors and wheels were provided by Professor Arner from Pololu. To give the controller a human interface we used two joysticks from a disassembled Xbox 360 controller. We used a basic motor shield from RadioShack to drive the motors. The controller was powered by a 9V battery and the robot was powered by a 12V battery pack made up of 8 AA batteries.

 Presentation slides, Short video

Smart Irrigation System

by Abdulaziz Alsenaide and Basil AbuHadi


A Smart Irrigation System is designed, in which the irrigation will take place only when there will be intense requirement of water, as suggested by the moisture in the soil. The aim of our project is to minimize this manual intervention by the farmer, which is why we are using a microcontroller. 

 Presentation slides, Short video

RGB LED Grid  

by Jeremy Guiley and Nicolle Bates


This project involved creating a red, blue, green (RGB) light emitting diode (LED) matrix that displayed the colors of the rainbow. The colors of the rainbow were chosen to show the full color spectrum that the LEDs are capable of, while still giving distinct variation within the LED matrix. In this project, each diagonal of the LED grid is a different color of the rainbow, starting with red in one corner and shifting through red, orange, yellow, green, blue, indigo, and violet (ROYGBIV), ending with violet at the opposite corner. 

 Presentation slides, Short video

ReFlex Reaction Game

 by Garrett Brainard and Jessica Gillan

We decided to construct a game for our final project for Microcomputer Architecture. The game, which we named Reflex, is a simple player versus player reaction game in which the winner is rewarded with a drink of their choice, poured into a cup by a servo.  Flex sensors measure the reaction time of the players, to flex their fingers and make a fist.

 Presentation slides, Short video

RGB LED Strip Clock

 by Cody Montgomery and Jordan Brown 

For the final project we made an analog style clock with an Arduino microcontroller. To do this we used three major components: an RGB LED Strip, a DeadOn RTC, and a custom user interface. The LED strip is used to set the display around the clock. The DeadOn RTC is used to keep time independent of the microcontroller and communicates using SPI. The custom user interface allows the user to make various selections concerning the display of the clock and setting the time.

 Presentation slides, Short video

Home Energy Monitor

by Josh Duffy and Kelton Manzanares  

The purpose of the Home Energy Monitor Final Project is to give people a better idea how much electrical power they consume in a residential system. The method used for this application will utilize a clip on noninvasive current sensor on each 120V line coming in to the residential breaker panel box. The power data is then transmitted to a remote LCD screen via XBee. 

 Presentation slides, Short video

Alarm System  

by Matt Wesemann and Lorenzo Gallegos

The objective of our project was to create an alarm system that could detect an intruder using an IR motion sensor. We used a keypad so the user could enter their password to arm and disarm the system. We also included an LCD so that users would be informed which state the alarm system was currently in as well as giving the user a response when entering their password (by showing *’s for each character). Motion was detected by using a simple IR sensor that pulled low when motion was detected. Finally, we used a speaker to play a song while the user was leaving the area followed by beeps to signify the end of the arming phase, and a siren if the alarm system detected an intruder. The siren could then be disarmed by entering the correct password on the keypad. 

 Presentation slides, Short video

The Picture Drawing Robot

by Garrett Hoch and Sarah Holmes

The desired outcome of our final project was to create an autonomous robot that was programmed to move through a series of figures, then stop. Due to time constraints we limited the robot to “drawing” two figures, a five pointed star as well as a circle, on a piece of paper. We decided to use the HSC912 microcontroller in conjunction with two DC motor/ encoder wheels. To make the robot autonomous a portable power source was needed so two rechargeable 5V battery packs were used. To get the robot to draw an ink pad was mounted to the left wheel. As the tire rotated ink was applied to the wheel resulting in the drawing of the programmed shapes. 

 Presentation slides, Short video

Anti-Collision (Wall Hugging) Robot

by Marvin Ruiz-Ibarra and Robert Metcalf


Our project consists of a vehicle designed to avoid collisions with objects and walls. The vehicle achieves this through the use of an onboard sensor to determine when such an object was close by. After recognizing an object within a certain distance the vehicle would then follow a series of parameters to determine the appropriate action to take in order to avoiding colliding with the object. We further designed our robot to use another onboard sensor to keep a close proximity with a wall or object as it resumed it’s anti-collision parameters.  

 Presentation slides, Short video

Four Channel Temperature Controller

by Geoffrey Sowash and Johnny Nguyen


For our final project, we designed a 4-channel temperature controller using PID control. The system was designed to monitor and regulate the temperature of four individual channels by applying 120V to heating elements using on/off switching. This switching was indirectly manipulated by the micro-controller using relays. Data was continuously collected from resistive thermal devices (RTD's) and processed by the micro-controller to set a duty cycle for this output, and thus regulate the temperature at a given set point. The system would then display the current temperature of the channels to user. 

 Presentation slides

Digital Multimeter

by Kirsten Reid and James Nunley


The purpose of this project was to design a functioning digital meter to measure voltage, current, and resistance to a known accuracy. The project involved the integration of hardware and software to take an input measurement signal from a pair of high and low leads that was then displayed on an LCD per the rotary selection switch (similar to the operation of most commercial digital multimeters). 

 Presentation slides, Short video

“The Note is Right” Pitch Tuning Game

by Quoc Tran and Ross Peters

The objective of this project is to provide a multiplayer “pitch tuning” game in which the computer can determine the frequency of players’ input notes. The system guides two users through various states in which they are each given the chance to match a tone randomly selected by the computer. Players select their tone by using a dial which controls the output tone on-board speaker. The computer scores the users based on the proximity of their input frequencies to the respective target frequencies, and declares a winner. 

 Short video

Balance Beam Controller

by Jonathan Pritchard and Scott Von Thun 

The purpose of our final project was to create an unstable system that would allow us to investigate classical control design methods by controlling the system using a microcomputer. This was accomplished by creating a teeter-totter that pivoted around a central fulcrum and was controlled by a servo. The beam acted as a track for a ping pong ball to roll on, with the goal of balancing the ping pong ball in the center of the beam. 

 Presentation slides, Short video

Magnetometer Parking Sensor

by Roy Stillwell and Andrew Wilson


The objective of our project was to develop a wireless sensor device to be used for detecting motor vehicles, along with their direction of travel. The sensor is to be used in a larger system to monitor parking lot traffic by counting ins and outs of vehicles, thus showing which lots are full or not via a website and mobile application. The sensor is a magnetometer and works by detecting the Earth’s magnetic field. As a vehicle drives over the device, a disturbance in the Earth’s field can be detected by the sensor in the x,y, and z planes. This data is analyzed by an Arduino Fio microcontroller, and if a vehicle is detected, a local car count is sent to a Raspberry Pi basestation. In further development of the project by the ACMx (Association for Computing Machinery) club on campus, the Raspberry Pi would analyze the data from multiple sensors, and update a web page that can be viewed on a mobile device or a web page. 

 Presentation slides, Short video

RGB LED Cube with Sound to Light Capabilities

by Devin Thewlis and Perry Taga

The objective of our final project was to build a 5x5x5 RGB LED cube that can display a certain color depending on the frequency of music playing. There are two main components of this project. The first part is the hardware setup that consists of the LED cube and the circuits that drive the power for each LED which is controlled through an Arduino Uno microcontroller. The second component is the software setup that will convert the music or sound being played into a digital value that can then be used by the Arduino as a PWM signal to control the LEDs. 

 Presentation slides, Short video

Displaying Images on an Oscilloscope

by Dustin Whisman and Tom Wills 

The goal of this project is to display two dimensional images of our choosing on an oscilloscope. These images include images such as a Christmas tree, pi symbol, and various others. To accomplish this task, we use a HSC12 microcontroller and a digital to analog R/2R resistor ladder. In addition to drawing the two dimensional images, we developed code to animate a tree rotating around its central axis. 

 Presentation slides, Short video