ECE 199 was a course held during spring quarter of 2012. Students got into groups of 1-3 to make a project centered around a arduino micro controller. The projects for that year were:

by Melissa Johnson, Xiang Jian, and Connor Wynvern

The DJ Clock has two main components, a hard drive clock and a frequency-controlled LED display.

The hard drive clock displays the current time that is read from a real time clock. The frequency-controlled LED display analysis the inputted music signal ad activates certain LED banks based on the frequencies detected.

by Amir R. Khazaieli

For laser hobbyists, all-in-one laser stations are too expensive and too bulky. This testing station is designed to graph Current and Power values, and be easily accessible for anyone with an interest in lasers.

The design uses a TEC Peltier, a laser power feedback system and a thermistor. The arduino reads the resistance of the thermistor and converts that value to measurement in degree celsius. If the value is above a certain preset value, the TEC Peltier is switched on by the arduino through a power MOSFET.

by Site Mao

The laser harp is a harp which uses laser beams instead of strings. It is played by breaking the beams with your fingers.

The laser harp uses a shift register and galvo to split the laser beam to 8 points. Then, 8 photo-diodes are used to receive the beams and this information is transferred back to the arduino which decides whether or not to play a sound.

By Jon Otwell

The project is build with an arduino microprocessor and has shift registers to contain the dice rolls.

The cube runs by picking a random direction, and shifting an array representing the faces in the way a real die would roll. The rolling gradually slows down and settles on a number.

By Nick Parker, Alex Schmidt

This Refrigerator is fitted with a solenoid locking mechanism and switches which controls who can access the inside of the fridge. It is also fitted with a LCD screen to display the locking status of the fridge.

By Connor Lamon, Tyler Bellenfrant, Belsin Barkhosir

The glove uses flex resistors that change the amount of resistance when bent in either direction. This change is resistance can be measured using a voltage converter and subsequently allows the arduino to read sensor changes.

The measured voltage values are then stored and printed to the serial monitor.

By Saili Raje

The Magnetic Levitator works by levitating a small magnetic object. By controlling the strength of the magnetic field based on a sensor targeted at the small object, as the object falls, the power to the magnetic coil increases, and as the object rises, the power to the magnetic coil decreases.

Due to the sensor working by detecting infrared light, it was necessary to use a large object like a ping pong ball.

By Michael Grino

The wall-detecting autonomous robot is a small car that is capable of turning when it detects that it is about to hit a wall.

Attached is a ultrasonic rangefinding module on a small servo to allow the robot to look left and right. The robot will drive forward scanning the front of it four times a second and when it senses a wall or obstruction, it will turn in a direction to avoid it.

By Shervin Shaikh, Ray Smets

The Arduino is connected to four 8-output shift registers in series which then are connected to our LED cube. Having the shift registers in series creates the multiplexer needed to properly control the LED matrix.

Repeating this method, The hardware is capable of picking the column, color and layer to power on.

By Oliver Townsend, Brian Phan, Rafal Wojciak

The Door Entry Alert Device came from the desire to create a better lab status system. It consists of 3 main components: Two Ping))) Ultrasonic Distance Sensors, One PIR (passive infrared) Sensor and a method for uploading the lab status to the IEEE website. The two Ping sensors are placed side by side, and serve to count the number of people entering and exiting the room by keeping track of which sensor detects motion first. The population of the room is recorded by the static int population variable that is constantly updated to the website. Now in the case that the population of the room ever goes negative, a preventive measure has been set up implementing the PIR sensor. Once the population goes negative, the PIR sensor turns on, scans the room for movement, and if it detects motion, the population is reset to 1; if not, then the population is set to 0. Along with serving as a precautionary measure, the PIR sensor is used as a security device when the lab is closed. If the PIR sensor detects motion while the lab is supposed to be closed and therefore empty, our code will notify the python script immediately, which will then notify an officer about the intrusion.

As for actually uploading the results to the website, the data generated by the Arduino is collected using a python script that continuously communicates with the serial port on the computer by querying it for data. This data consists of the number of people in the lab as well as the lab status: if the lab is open or not. After the script receives the information, it is stored in a single variable to be sent to the IEEE server where a php script reads the information and proceeds to store it in a text file also on the server. A second php script then reads the data from the text file, uploads it, and displays it on the lab status page. While this entire process is being done, the webpage is set to constantly refresh every five seconds as to keep an up to date status.

By Blake Husserl

The Spectrum Analyzer takes an auxiliary input and converts the signal it receives using the analogread function into values between 0-1023. The inputs are converted into values using a FFT(Fast Fourier Transform) to compute the DFT(Discrete Fourier Transform). The DFT breaks a sequence of values into frequency components. Depending on the values determined by the FFT, the arduino tells the LCD to display a custom character. The characters change to give the impression of bars rising and falling.

By Duncan Sommer

The Gimbal device which rotates on two axis which allows for a core to rotate about a single axis.

This Gimbal is programmed by a Computer, which controls information such as the maximum angle of rotation. A webcam can also be placed onto the Gimbal, and with the Computer, can be used to control the rotation and do certain things such as lock on to an object of a certain color.

The software interprets the user’s input or the coordinates of the target to find the area towards which the gimbal should point. It translates this area into an integer, and sends the integer through the serial port into the arduino board. The board undoes the operation to determine the target area again, and sends signals to the servos accordingly.

By Joel Dick

The LED Cube is a cube made of LEDs which can be controlled by arduino code.

By Joseph Colicchio