The final project in this class will be the design and implementation of an engineering
prototype to address some need. The idea is to utilize what you have learned this semester with the
Nexys Video Board to interface with a new I/O device in a new and innovative way. The final projects in this
class are to be completed individually. The following are examples of projects completed in past years.
Student | Title/Video | Description |
Dan | Blackjack Game | created a one-player Blackjack game with a scoreboard. This game uses microblaze with custom VHDL hardware inside the FPGA with Grid Memory, and outputs the game on VGA monitor. Also creates sound effects using DSS and uses the IR controller for game control. |
Aiden | Minesweeper Game | created a one-player Minesweeper game with a scoreboard. This game uses microblaze with custom VHDL hardware inside the FPGA with Grid Memory, and outputs the game on VGA monitor. Also creates sound effects using DSS and uses the NES controller for game control. |
Quinn | Asteroids Game | created a one-player Asteroid's game with a scoreboard. This game uses microblaze with custom VHDL hardware inside the FPGA with Grid Memory, and outputs the game on VGA monitor. Also creates sound effects using DSS and uses the NES controller for game control. |
Jack | HDMI Ambilight | Reads in an HDMI video signal, does some simple image processing (like averaging and edge detection), and outputs the raw HDMI video to the monitor or the processed data. Also, controls the ambient light LEDs based on the averaging. Does not use microblaze, but rather all custom VHDL hardware inside the FPGA. |
Gunner | Space Invader's Game | created a one-player Space Invader's game with a scoreboard. This game uses microblaze with custom VHDL hardware inside the FPGA using grid memory for graphics, and outputs the game on VGA monitor. Also creates sound effects using DSS and uses a Bluetooth interface to a bluetooth controller for game control. |
Ameen | FPGA-based Guitar Tuner | Uses custom VHDL hardware to accept audio input, process the sound with DFT, and display the waveform to the VGA monitor for a guitar tuner. |
Jimmy | 2D Dodging Dash Game | created a one-player Dodging Dash game with a scoreboard. This game uses microblaze with custom VHDL hardware inside the FPGA using grid-memory for graphics, and outputs the game on VGA monitor. Also creates sound effects using DSS and uses the NES controller for game control. |
Park | Flappy Bird Game | created a one-player Flappy Bird game with a scoreboard. This game uses microblaze with custom VHDL hardware inside the FPGA using grid-memory for graphics, and outputs the game on VGA monitor. Also creates sound effects using DSS and uses the NES controller for game control. |
Yury | Super Bomberman Game | created a one-player Super Bomberman game. This game uses microblaze with custom VHDL hardware inside the FPGA using grid-memory for graphics, and outputs the game on VGA monitor. Also creates sound effects using DSS and uses the NES controller for game control. |
Stephen | Checkers Game | created a two-player Checkers game with a scoreboard. This game uses microblaze with custom VHDL hardware inside the FPGA using grid-memory for graphics, and outputs the game on VGA monitor. Also creates sound effects using DSS and uses the NES controller for game control. |
Matthew | Dino Game | created a one-player Dino game with a scoreboard. This game uses microblaze with custom VHDL hardware inside the FPGA using grid-memory for graphics, and outputs the game on VGA monitor. Also creates sound effects using DSS. |
<
Student | Title/Video | Description |
Jabari | Spectrum Analyzer with DFT | Samples a live audio signal and displays (1) time domain plot (2) frequency domain plot of 12 frequencies (3) spectrogram (frequency versus time) on the VGA monitor. 1024 samples at 48 KHz are taken, then downcoverted to 64 samples at 1 KHz, and then the direct DFT is done for 12 frequencies corresponding to the fundamental frequency of 12 musical notes. The IR controller as the input controller, and is implemented in custom VHDL hardware (no microblaze). |
Jabari | Spectrum Analyzer with DFT | . |
Jabari | Spectrum Analyzer with DFT | . |
Jabari | Spectrum Analyzer with DFT | . |
Payton | Tetris Game | created a one-player Tetris game with a scoreboard. This game uses microblase with custom VHDL hardware inside the FPGA with Grid Memory, and outputs the game on VGA monitor. Also creates sound effects using DSS. Was planning on useing the NES controller, but ran out of time. |
Payton | Tetris Game | . |
Ryan | Chess Game | created a two-player Chess game. This game uses the NES controller as the input controller, and custom VHDL hardware inside the FPGA with Grid Memory and Random Number Generator, and outputs the game on VGA monitor. Also creates sound effects using DSS. |
Marcus | Pong Game | created a one-player and two-player pong game, with audio effects using DSS. This game uses custom VHDL hardware inside the FPGA with sprites and outputs the game on VGA monitor. Attempted to add nunchunk controllers, but could not create the needed I2C bus |
Luke | Breakout Game | created a one-player breakout game and outputs the game on VGA monitor. This game uses the NES controller as the input controller, and custom VHDL hardware inside the FPGA with Grid Memory for the bricks and sprites for the ball and paddle. Also creates realistic sound effects. |
Keeley | Music Player | This music player's default mode is to play a song with the notes and duration stored in BRAM (Mary had a little lamb), and uses DSS to create the audio. It plots the note played (up to 8 notes) on a scale on the VGA monitor. It also has a 2nd mode where it plays a note manually selected by the user using an IR controller as the input controller. The system is implemented in custom VHDL hardware inside the FPGA with Grid Memory. An advanced mode was not implemented whereby the user could input notes via the IR controller into BRAM, and then plays back the song. |
<
Student | Title/Video | Description |
Nate | Dino Game | created a one-player Dino game, whereby a character runs and encounters obstacles to jump over and go under and upon hitting an obstacle the game will be over. This game uses the NES controller as the input controller, and custom VHDL hardware inside the FPGA with Grid Memory and Random Number Generator, and outputs the game on VGA monitor. Also creates sound effects using DSS. |
Kevin | Black Jack Game | created a one-player "Black Jack" card game versus the computer, using the IR controller as the input controller, and custom VHDL hardware inside the FPGA and Random Number Generator, and outputs the game on VGA monitor. Also creates sound effects using DSS. |
Kevin | Black Jack Game | |
Kevin | Black Jack Game | |
Kevin | Black Jack Game | |
Pat | Piano Game | created a one-player game, displaying a piano keyboard on the VGA monitor and has a custom keyboard input device. The system displays notes on the screen that the user must hit in the proper sequence within a certain amount of time to get a good score. Proper frequencies are generated using DSS for each note and sent out the output speaker, and also can jump up or down octaves. |
Ben | Chroma Trigger Game | created a one-player game, using a NES controller as the input controller, custom VHDL hardware inside the FPGA for game implementation and device control, and outputs the game on VGA monitor. Also creates sound effects using DSS. |
Eva | Dots and Boxes Game | created a two-player game of "dots and boxes", with a grid of 6x6 boxes and displaying a two digit score for each player, using an IR controller as the input device, custom VHDL hardware on the FPGA board, and outputs to the VGA monitor and uses DSS to generate sound out the speaker |
Jacob | Checkers Game | created a two-player Checkers game, using an NES controller as the input controller, custom VHDL hardware inside the FPGA, and outputs the game on VGA monitor. Also creates sound effects using DSS. |
Homin | Go Game | created a two-player "Go" game with a 64x64 grid, using an IR controller, custom VHDL hardware on the FPGA with Grid Memory, and outputs the game on VGA monitor. Also creates sound effects. |
Brandon | Dance Dance Revolution Game | created the Dance Dance Revolution music game, interface to a 3x3 input mat for the player to step on, and with graphics on the VGA monitor to indicate which square to step on next in the random sequence. Uses an IR controller for the player to control the game and speakes with sound created using DSS. |
Brandon | Dance Dance Revolution Game | |
Pete | Wordle Game | created a one-player Wordle game, using the IR controller as the input controller, custom VHDL hardware inside the FPGA for game implementation with random number generator, and outputs the game on VGA monitor. Also creates sound effects using DSS. |
Alex | Pokemon Tamagotchi Game | created Tamagotichi, whereby the player must feed and care for their pet. Uses both the OLED display and VGA monitor display, with custom VHDL hardware, and outputs sound to the speakers using DSS. |
Student | Title/Video | Description |
Calen | Frogger Game | Frogger Game with excellect graphics. Uses Grid memory and a custom controller. 3D printed covers for the FPGA board and game controller. Also creates sound effects using DSS, keeps score, and tracks lives. |
Matt | Audio Effects | Audio Effects: produces audio tones for 13 keyboard notes; used IR controller to play a song; Display shows keyboard, highlighting keys with each note |
Sean | Tetris | Tetris game with excellent graphics. Uses Grid memory and Microblaze. |
Casey | Music Player | Produces audio tones from 3 DSS sources (sine, triangle, square wave) and uses IR controller to select tones, and BRAM contains one fixed song for playback. Uses an IR controller as the input controller |
Maddy | Minesweeper | Minesweeper: partially integrated |
Ashley | Rainbow Maker video game | Rainbow Maker video game, with sound effects via DSS. |
Luke | Soduku | Soduku with Graphics memory. Not fully integrated |
Zach | Strength and Diversity Mini-Game | Strength and Diversity Mini-Game: uses Analog-to-Digital converter to sense a muscele sensor and display a strength bar which grows in magnitude with more strength. An audio signal is also produces that sweeps to higher frequency as the amplitude is increased. An IR controller is used to select modes
|
Anthony | sport scoreboard |
Emulated the "All Sports" sport scoreboard (with one FPGA) and scoreboard controller (with another FPGA), and created a custom UART-like serial interface between the FPGA boards using the GPIO pins. Uses Microblaze and Grid memory |
Jelani | Snake Game | Snake game, not sucessfully integrated. |
Ryan | Security System | Emulated a security system, with the ability for the user to enable and disable the alarm with a security code (using the FPGA buttons/switches), senses a sensor opening a door, sends an IR signal to trigger a camera with an IR sensor to take a picture of the interuder, then flashes an alarm message on the monitor and signals an audio alarm. |
Student | Title/Video | Description |
Ryan | Paper.io Game | created a two-player game, using the NES controller and/or keyboard (through UART) as input controllers, microblaze soft-core processor and custom VHDL hardware inside the FPGA, and outputs the game on VGA monitor. Also creates sound effects using DSS. |
Ryan | Paper.io Game | |
Jared | Frogger Game | created a one-player game, using a NES controller, FPGA buttons, and custom VHDL hardware inside the FPGA, and outputs the game on VGA monitor. Also creates sound effects using DSS, keeps score, and tracks lives. |
Ben | Chroma Trigger Game | created a one-player game, using a NES controller as the input controller, custom VHDL hardware inside the FPGA for game implementation and device control, and outputs the game on VGA monitor. Also creates sound effects using DSS. |
Ben | Chroma Trigger Game | |
Peter | Flappy Bird Game | created a one-player game, using an IR controller as the input controller, custom VHDL hardware inside the FPGA for game implementation and device control, and outputs the game on VGA monitor. Also creates sound effects using DSS. |
Jon | Space Force Game | created a one-player game, using a NES controller, FPGA buttons, and/or keyboard (through UART) as input controllers, microblaze soft-core processor and custom VHDL hardware inside the FPGA, and outputs the game on VGA monitor and score to seven_seg display. Also creates sound effects. |
Brooke | Audio Looper | channel audio looper with audio effects, OLED display and IR controller. |
Jelani | Snake Game | created a one-player game, using the UART keyboard as the input controller, Microblaze C-code plus custom VHDL hardware inside the FPGA for game implementation and device control, and outputs the game on VGA monitor. Also creates sound effects using DSS. |
Jelani | Snake Game | |
Will | Audio Looper | 4-channel audio looper, using MIG7 DDR memory and displays the 4 audio waveforms visually on the monitor |
Student | Title | Description |
1 | Pong Game | classic pong game using Nunchuk input device, microblaze soft-core processor and custom VHDL hardware inside the FPGA, VGA-based monitor, and sound effects |
2 | Robot Arm Control | Using SNES controllers for input device and microblaze soft-core processor and custom VHDL hardware inside the FPGA to control the lynxmotion robot arms, with sound effects |
3 | Guitar Preamp and Effects Processor | Uses IR remote controllers to specify audio effects (such as distortion, Tremolo, Echo/Chorus, Bit crusher, etc), the FPGA recieves an audio signal from the guitar, processes the effects using custom VHDL hardware (State machine controlling a datapath), and outputs the audio stream, and displays a time domain plot of the original and modified signal on VGA monitor |
4 | Strategy Game | created a two-player strategy game, using the NES controller and/or keyboard (through UART) as input controllers, microblaze soft-core processor and custom VHDL hardware inside the FPGA, and outputs the game on VGA monitor |
5 | 2-player Tetris | classic tetris game using NES input device for one player and FPGA buttons for other player, microblaze soft-core processor and custom VHDL hardware inside the FPGA, VGA-based monitor, and sound effects |
6a | Shooting Game | Interfaced a PS2 mouse with the FPGA to be used as the "gun", plays the game using custom VHDL hardware (State machine controlling a datapath), and outputs the video of the moving targets on VGA monitor |
6b | Shooting Game | |
7 | Aircraft Gas Detection & Alert System | Interfaced a gas detection sensor through an ADC to the FPGA and an NES controller (for a sequence controller to "unlock" the system), with custom VHDL hardware (State machine controlling a datapath), and outputs a audio siren sound effect as an alarm |
8 | Breakout Video Game | classic breakout video game using NES input device, microblaze soft-core processor and custom VHDL hardware inside the FPGA, VGA-based monitor, and sound effects |
9 | Camera Video Processing System | Accepts Go-Pro High-def or thermal camera signals through HDMI port, and does several real-time image processing functions using custom VHDL hardware (State machine controlling a datapath), and outputs a high-def HDMI video on the monitor |
Student | Title | Description |
1a | Karaoke Voice Stripper | This project take an audio input of a song, and using the voice stripping technique to remove the lead singers voice, making a simple Karaoke machine. It also takes and FFT of the signal, and displays frequency bars |
1b | Karaoke Voice Stripper | Karaoke with a special guest singer |
2 | Robotic Arm | The purpose of this project is to have an SNES gaming controller control the movements of a robotic arm. To accomplish this, I used Nexsys Video Artix-7 development board to assist. The FPGA was split up into hardware and softcore logic in the form of custom hardware and a microcontroller. |
3 | Asteroid Video Game | This project creates the Asteroid video game on the FPGA, using the SNES controller and keyboard for inputs and microblaze. |
4 | Minesweeper Video Game | The purpose of this project is to play the minesweeper video game with the NES controller as the input device. |
5 | NES Zapper Gun | The purpose of this project is to interface the NES zapper gun with the FPGA board and make a simple target shooting video game |
6 | Rokenbok RC control system | The purpose of this project is to interface the FPGA board with the Rokenbok RC control system, which can then control up to 8 RC vehicles |
7 | Pong Video Game | The purpose of this project is to make the Pong video game with simulated seven-segment displays on the monitor for tracking the score and IR remote controller for the input device |
8 | Snake Game with NES Controller | This project involves programming the Snake Game on the FPGA. The Monitor will be the game display and the NES Controller will be the user interface. Addition features such as sound, 2-player mode, and scoreboard will be added. |
Student | Title | Description |
1 | Digital Door Lock Security and Exploitation | This project models the threat of circumventing and exploiting digital access control systems to gain unauthorized entry into physical assets. By understanding how digital locking systems may be compromised, the integrity of Air Force digital locking solutions can be strengthened. |
2 | Tron Light Cycles | A strategy arcade game where the object is to trap the other player in your light trail without getting caught in your own. Players are controlled by the WASD and IJKL keys of the laptop keyboard. |
3 | EOD robot | Creating a simple EOD robot using off the shelf parts to allow for low cost and expendable use in the field. This project takes input from an Xbox One S controller via Bluetooth and uses that command input to control a deconstructed remote control car chassis. |
4 | GalagaNC | This project will incorporate the Nintendo Wii Nun Chuck Controller to improve hand-eye coordination of fellow Airmen and allow them to practice using non-familiar devices in order to promote adaptation to new devices for mission success. The game Galaga will be controlled using the Wii Nun Chuck and will allow Airmen to have fun and learn at the same time. |
5 | Space Survival | The Project simulation will allow the Air Force to cheaply and effectively train Space Shuttle Door Gunners by using an Xbox controller to wirelessly interface with a simulated combat environment being displayed to the screen. |
6 | Snake Game with NES Controller | This project allows a player to play the classic game ‘Snake’ on the FPGA Nexys Video with a NES controller. |
7 | The Music Machine | This device uses a PS2 keyboard and sinewave data loaded into the microBlaze softcore processor to enable the user to play various sounds/tones based upon the keyboard button pressed. |
8 | Asteroids | This project allows for cheap and practical training of future Air Force Astronauts. This simulation use s an Xbox controller to train pilots to blast incoming asteroids much like the ones they are guaranteed to experience during space travel. |
9 | FPGA Pong with IR Remote | An incredibly simple yet intelligent design to implement the incredibly simple yet intelligent game of Pong on an FPGA. Airmen will develop their reaction time as they slide their way to defeat each other and a computerized AI in a game of Pong using standard IR remotes. |
10 | Digital Cornhole – A Computerized Version of an Outdoor Classic | This project implements the game of Cornhole using a Wii Nunchuck to control the toss of the bags. |
11 | Pong! | Recreating the classic Pong game with some additional features such as multiple balls, changing game physics and more. Using a PS2 Keyboard for the user inputs. |
12 | Lu Light Cycle | Based off of the Tron Light Cycles arcade game, player 1 will use a NES controller with player 2 use the WASD keys on the keyboard to controller each player with the objective being to trap the other in their light trail. |
13 | Snake Game with NES Controller | This project involves programming the Snake Game on the FPGA. The Monitor will be the game display and the NES Controller will be the user interface. Addition features such as sound, 2-player mode, and scoreboard will be added. |
Student | Title | Description |
1 | X-Box Checkers | An innovative and novel system for improving the critical thinking skills and hand eye coordination of our Airmen. More and more the Air Force is gearing towards remotely controlled systems, and we have developed a way to train our Airmen to do that, while also making it enjoyable. |
2 | USB Keylogger | This project uses an FPGA as a ‘man in the middle’ to intercept the signals of a USB keyboard connected to a computer. The FPGA then displays the intercepted characters onto a screen so the keypresses of the user can be viewed and analyzed. |
3 | The Maze Game with SNES Controller | This project implements a Maze Game using a SNES controller as the user input. |
4 | The Head Motion Tracker | The Head Motion Tracker is meant to use scaling head position inputs to impact the motion of a wheelchair or other vehicle. This will be completed with vhdl and c code on the Spartan-6 FPGA. |
5 | Connect Four with Keypad | This project recreates the classic game of “Connect Four” as video game using a keypad interface for the user control. |
6 | Tic-Tac-Toe with a Wii Nunchuck | This project will be used to play a Tic Tac Toe game on a monitor controlled by a Wii Nunchuck. |
7 | The Game of Space Invaders with SNES Controller and with Keyboard | This project is implements the game of Space Invaders arcade game using a SNES controller for user input. |
8 | Snake: The Game with NES Controller | This project implements a 2D Snake video game using SNES Controller an input for the user. |
9 | Light Cycles 2-axis Controller | This project provides a capability for interfaces in RPA systems to be prototyped and built using cheap, proven, off-the-shelf components and will allow the Air Force to rapidly develop cost-effective replacements for aging interface and control systems. |
10 | Etch-A-Sketch with NES Controller | The program draws lines to a monitor. It can be used to display a path a robot will take for EOD purposes. |
11 | Solar Striker with NES Controller | This is a project to cheaply simulate space combat in the event of an alien space invasion using a Field Programmable Gate Array, an NES controller and an HDMI display. |
12 | Multi-Player Pong Game with NES Controller | This project created a multiplayer variation of the Pong game which uses a Nintendo Entertainment System controller and the laptop keyboard as inputs. |
13 | The Modified FM Radio Transmitter | This project is designed to improve radio communication. The device allows the user the capability to filter certain sounds out of transmission so the person who is receiving will have a better signal. |
Student | Title | Description |
1 | Trigger Race | A two person interactive game that improves the speed of the trigger finger using NES Zappers. |
2 | Multifunction Oscilloscope | A Multifunction Oscilloscope that enables XY mode and FFT Mode in addition to the stantard Time Mode. |
3 | Data Transfer over FM Radio | Use FM radio frequency to transmit information over an analog transmission medium. |
4 | RSA Cryptography in Hardware | Encrypt and decrypt message being transmitted over UART connection. |
5 | Digital Modem | Modem designed to use amplitude shift keying and frequency shift keying schemes. |
6 | Pong | Created a two person Pong game |
7 | Matrix Reducer | FPGA optimized matrix inversion algorithm |
8 | Bob the Security Robot | Sentinal Robot operations using an RC Car chassis (IR Sensors, Siren, and Motor Control) controlled by an FPGA. |
9 | Karaoke Machine | VHDL implemented Digital Filter to strip vocals from input music and output modified song to speakers. |
10 | Project MC Sparta | Create two way Morse Code Communication System that translates text to morse code before transmission. |
11 | Connect Four | Connect Four Game for 2 players using remotes or buttons on the Atlys board to move and drop pieces. |
12 | Snake Game | Snake video arcade game using a Super Nintendo controller to FPGA. |
13 | Interface with Spartan 6 from a Bluetooth Device | Using Bluetooth keyboard to interface with Spartan 6 FPGA using the PmodBT2 Module |
14 | HDMI Real Time Image Manipulation | Real time manipulation of an incoming HDMI image, outputted to an external monitor. |