On December 11th Jordan had his big “Demo Day”, when everyone in his department demonstrated their senior projects. Another one of Jordan's classes also demoed projects . Brynlee, Kate and I went town to see the projects… I am having Jordan write the rest of the post so he can explain what he did for his projects. :)
**************
I don't expect very many people to understand exactly what I'm talking about, but I'll describe it anyway. For my first project, my senior project, my team and I created a 3D tracking system. To track an object, we mounted an ultrasonic transducer (sends out ultrasound pulses) on it. The object we tracked for our demo was a flash light. In order to find the location of the flashlight, we placed 4 ultrasonic receivers at the front of the room which were tuned to the frequency of the transmitter on the flashlight (Our transmitter and receivers were unidirectional so they had to be pointed at each other, if we had spent more and got omnidirectional ones, the placement of the receivers would be somewhat arbitrary).
Because we know sound waves are limited by the speed of sound, we also know that the ultrasound pulses broadcasted from flashlight will take longer or shorter times to arrive at each of the receivers based on the flashlight's distance from each receiver (time differences are in terms of micro- or milliseconds). The receiver values were collected by a micro-controller which then sent them along to the computer by USB. On the computer some complex math formulas were used to calculate the 3D location of the object, and then the 3D location was transferred to each of the demos.
We had 3 demo programs to showcase our project. The first and most basic demo was a window with four views of the objects location: top, right, and left views in 2D, and a 3D view of the objects location relative to the screen. The second demo was a Hot / Cold game which would hide an invisible object somewhere in the room and would tell you if you were getting hotter or colder as you moved around. The third demo was a breakout / brick-breaker style game where the flashlight's movement controlled the paddle. We did not write the third demo, but found an open-source version and modified the controls. Here are some pictures from demo day,

Katie playing breakout using the flashlight.

Me running the demos. One of our team members brought in a 52" TV for our demos. Anything to make it a little more flashy. The circuit boards attached to the screen are the receivers.

One of my teammates playing the game and me in the background explaining the project to one of the professors.

Playing the game with Brynlee.

The team (from the left) Paul, Jake, Colby, and me.
The second project that I demonstrated was for a Junior level class and the scope of the project was smaller. The requirements of the course was to design a processor and then an application to showcase the processor. The processor we designed was a custom CR-16 processor. To make programming for our processor easier, we decided to modify the GCC compiler and create a custom assembler, this allowed us to program in C and compile instead of hand assembled assembly.
The application we decided to create to showcase our processor was a "Guitar Hero"-like game which we called Rock Hero. We interfaced our processor with a micro-controller which in turn interfaced with a Wii Guitar for the controller. Our processor also interfaced with an mp3 chip to play the music. We also made custom sprite drawing hardware to output our game graphics to a VGA display. We were very pleased with how the game turned out.

Me playing our Rock Hero game. Well, not really playing yet as I am still on the menu screen.